http://www.javashuo.com/article/p-qjlgczuc-cs.htmlhtml
其实官方给的RTOS的版本就是在原先非RTOS版本上增长的数组
http://www.javashuo.com/article/p-pqaiacod-bu.html 后面的TCP,UDP基本的配置也就是像AT这样,只不过咱是用SDK开发服务器
配置一下WIFI的工做模式 无线名称网络
wifi_set_opmode(STATIONAP_MODE);//配置WiFi的模式STATION + AP AP--链接WIFI自身的无线实现通讯 STATION--wifi链接路由器,手机或者电脑也链接路由器,实现通讯 soft_ap_Config.ssid_len = strlen(SSID);//热点名称长度,与你实际的名称长度一致就好 memcpy(soft_ap_Config.ssid,SSID,soft_ap_Config.ssid_len);//实际热点名称设置,能够根据你的须要来 memcpy(soft_ap_Config.password,PWD,strlen(PWD));//热点密码设置 soft_ap_Config.authmode = AUTH_WPA2_PSK;//加密模式 soft_ap_Config.channel = 1;//信道,共支持1~13个信道 soft_ap_Config.max_connection = 4;//最大链接数量,最大支持四个,默认四个 wifi_softap_set_config_current(&soft_ap_Config);//设置 Wi-Fi SoftAP 接口配置,不保存到 Flash // wifi_softap_set_config(&soft_ap_Config);//设置 Wi-Fi SoftAP 接口配置,保存到 Flash
下载进去tcp
接着作TCP 服务器函数
其实就是参考这个文档测试
其实说一下...官方其实给例子了...就是那个不带SDK的1.5版本的加密
若是不明白为何是http可是用的TCP https://www.cnblogs.com/yangfengwu/category/1383497.html 看头几节spa
因此我就不班门弄斧了.......直接拷贝,而后写上注释.net
//接收到数据 void TcpServerRecv(void *arg, char *pusrdata, unsigned short length) { while(length--) { USART_SendData(UART0, *(pusrdata++));//接收的数据发给串口 } } //断开 void TcpServerDisCon(void *arg) { struct espconn *pesp_conn = arg; os_printf("TCP Client %d.%d.%d.%d:%d disconnect\n", pesp_conn->proto.tcp->remote_ip[0], pesp_conn->proto.tcp->remote_ip[1],pesp_conn->proto.tcp->remote_ip[2], pesp_conn->proto.tcp->remote_ip[3],pesp_conn->proto.tcp->remote_port); } //程序启动了监听 void TcpServerListen(void *arg) { struct espconn *pesp_conn = arg;//接收传过来的 espconn 信息 espconn_regist_recvcb(pesp_conn, TcpServerRecv);//设置接收回调 espconn_regist_disconcb(pesp_conn, TcpServerDisCon);//设置断开链接回调 }
完成了上面就是WIFI监听8888端口 ,客户端链接上之后发送的数据直接转发到串口
模块默认是192.168.4.1
测试
好如今咱再进一步 作成透传的 再让WIFI串口接收的数据发给网络
https://blog.csdn.net/u010333084/article/details/51336886
上一节咱用任务处理的串口数据,此次咱用回调实现,,这样处理起来快
测试
注意哈,这样作实际上就是那个函数在中断函数里面运行了....切记函数里面别加延时
好如今把串口接收的数据转发给网络
由于发送须要
因此咱定义一个全局的这个变量
思路是这个变量在监听到链接,断开和网络接收到数据里面赋值
若是只放到网络接收到数据里面赋值..那么若是客户端链接了,它不先给咱发数据,咱就不能发给他,由于变量没有赋值
不过如今这样有个问题是 最后链接的或者最后给我发的数据的TCP客户端,我下次的数据会发给它
你们能够再作个数组哈,,把这个所有保存下来,,本身扩展下哈
提示哈,,作四个数组就能够,,循环判断若是哪一个在链接状态就发送
测试
若是再把这里的发送改成直接用数组复制给串口发送缓冲区(只调用一句话),就完美了
本身开动大脑想办法吧