欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 4446|回復(fù): 0
收起左側(cè)

ESP8266學(xué)習(xí)筆記1-使用UDP協(xié)議和串口通信

[復(fù)制鏈接]
ID:232524 發(fā)表于 2020-9-5 01:02 | 顯示全部樓層 |閱讀模式
1.在user_init(void)初始化好串口基本信息進(jìn)入ESP8266_STA_Init();設(shè)置STA基本信息,利用軟件定時(shí)器連接wifi
  1. void ICACHE_FLASH_ATTR user_init(void)
  2. {
  3.     uart_init(115200,115200);
  4.     os_delay_us(1000);
  5.     os_printf("\r\n==========================================\r\n");
  6.     os_printf("\r\n ProjectName: %s\r\n",ProjectName);
  7.     os_printf("\r\n==========================================\r\n");
  8.     ESP8266_STA_Init();
  9.     OS_Timer_1_Init_JX(1000,1);
  10.     os_printf("===================user init is over====================");
  11. }
復(fù)制代碼
2.連接wifi后ESP8266獲得IP地址;初始化網(wǎng)絡(luò)連接
  1. void ICACHE_FLASH_ATTR ESP8266_NetCon_Init()
  2. {
  3.         ST_NetCon.type = ESPCONN_UDP;                //設(shè)置通信協(xié)議為UDP

  4.         ST_NetCon.proto.udp = (esp_udp *)os_zalloc(sizeof(esp_udp));        // 開(kāi)辟內(nèi)存

  5.         //此處設(shè)置本地端口號(hào)以及遠(yuǎn)程設(shè)備的IP地址和端口號(hào),因?yàn)镋SP8266設(shè)置為客戶端
  6.         ST_NetCon.proto.udp->local_port = 8266;
  7.         ST_NetCon.proto.udp->remote_port = 8888;
  8.         ST_NetCon.proto.udp->remote_ip[0]=192;
  9.         ST_NetCon.proto.udp->remote_ip[1]=168;
  10.         ST_NetCon.proto.udp->remote_ip[2]=1;
  11.         ST_NetCon.proto.udp->remote_ip[3]=8;

  12.         Uart_arg = &ST_NetCon;//把遠(yuǎn)程設(shè)備的IP地址和端口號(hào)地址賦值給Uart_arg,方便在串口函數(shù)中使用
  13.         //注冊(cè)回調(diào)函數(shù)
  14.         espconn_regist_recvcb(&ST_NetCon,ESP8266_WIFI_Recv_cb);
  15.         espconn_regist_sentcb(&ST_NetCon,ESP8266_WIFI_Sent_cb);

  16.         //初始化UDP通信
  17.         espconn_create(&ST_NetCon);


  18.         //客戶端主動(dòng)向服務(wù)器發(fā)送數(shù)據(jù)
  19.         espconn_send(&ST_NetCon,"Hello,I am ESP8266\n",os_strlen("Hello,I am ESP8266\n"));
  20. }
復(fù)制代碼
3.編寫(xiě)接收網(wǎng)絡(luò)數(shù)據(jù)【ESP8266_WIFI_Recv_cb()】和發(fā)送數(shù)據(jù)【ESP8266_WIFI_Sent_cb】的回調(diào)函數(shù)
4.在uart.c文件下定義結(jié)構(gòu)體struct espconn *Uart_arg;并在uart.h文件下定義好extern struct espconn *Uart_arg;
5.在uart.c文件下的uart_recvTask(os_event_t *events)函數(shù)中編寫(xiě)串口接收數(shù)據(jù)后的操作。()
  1. LOCAL void ICACHE_FLASH_ATTR ///////
  2. uart_recvTask(os_event_t *events)
  3. {
  4.   .......  //
  5.         //從串口接收數(shù)據(jù)后在此編寫(xiě)你要操作的程序
  6.         {
  7.                 os_printf("\nESP8266 Uart0 Recieve Word:\n");
  8.                 uart0_sendStr(Uart0_Buffer);                //串口打印從串口接收到的數(shù)據(jù)
  9.                 espconn_send(Uart_arg,Uart0_Buffer,os_strlen(Uart0_Buffer)); //發(fā)送數(shù)據(jù)給遠(yuǎn)端設(shè)備
  10. .........
  11.         }
  12. }
復(fù)制代碼
6.結(jié)果
51hei圖片20200905010021.png

具體例程在附件里
19STA_UDP_Client.7z (3.24 MB, 下載次數(shù): 21)


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表