2017年6月8日 星期四

DIY - ESP8266:ESP8266 SDK ESPCONN UDP 網路介面函數(三十二)

DIY - ESP8266:ESP8266 SDK ESPCONN UDP 網路介面函數(三十二):

網路 ESPCONN 網路介面(ESPCONN Network API)的 UDP 網路介面函數(ESPCONN UDP Network API),UDP 網路介面函數(ESPCONN UDP Network API)僅用於 UDP 連接,請勿用於 TCP傳輸,ESPCONN 的網路函數是儲存在 ESP8266_NONOS_SDK/include/espconn.h。

ESP8266 SDK ESPCONN UDP 網路介面函數
ESPCONN UDP網路介面函數(ESPCONN UDP Network API): 
  1. espconn_create 
  2. espconn_sendto 
  3. espconn_igmp_join 
  4. espconn_igmp_leave 
  5. espconn_dns_setserver 
  6. espconn_dns_getserver 

espconn_create
功能
建立 UDP 傳輸
函數定義
sin8 espconn_create(struct espconn *espconn)
輸入參數
struct espconn *espconn:對應網路連接的結構體
返回
0:成功
其他:失敗,返回錯誤碼
ESPCONN_ARG:未找到參數 espconn 對應的 UDP 連接
ESPCONN_MEM:空間不足
ESPCONN_ISCONN:連接已經建立
注意
請注意設置 remote_ip remote_port 參數,請勿設置為 0

espconn_sendto
功能
UDP 發包接口
函數定義
sin16 espconn_sendto(struct espconn *espconn, uint8 *psent, uint16 length)
輸入參數
struct espconn *espconn:對應網路連接的結構體
uint8 *psent:待發送的資料
uint16 length:發送的資料長度
返回
0:成功
其他:失敗,返回錯誤碼
ESPCONN_ARG:未找到參數 espconn 對應的 UDP 傳輸
ESPCONN_MEM:空間不足
ESPCONN_IFUDP 發包失敗

espconn_igmp_join
功能
加入多播組
函數定義
sint8 espconn_igmp_join(ip_addr_t *host_ip, ip_addr_t *multicast_ip)
輸入參數
ip_addr_t *host_ip:主機 IP
ip_addr_t *multicast_ip:多播組 IP
返回
0:成功
其他:失敗,返回錯誤碼 ESPCONN_MEM:空間不足
注意
請在 ESP8266 Station 已連入路由的情況下調用。

espconn_igmp_leave
功能
退出多播組
函數定義
sint8 espconn_igmp_leave(ip_addr_t *host_ip, ip_addr_t *multicast_ip)
輸入參數
ip_addr_t *host_ip:主機 IP
ip_addr_t *multicast_ip:多播組 IP
返回
0:成功
其他:失敗,返回錯誤碼 ESPCONN_MEM:空間不足

espconn_dns_setserver
功能
設置默認 DNS server
函數定義
void espconn_dns_setserver(uint8 numdns, ip_addr_t *dnsserver)
輸入參數
uint8 numdnsDNS server ID,支持設置兩個 DNS serverID 分別為 0 1
ip_addr_t *dnsserverDNS server IP
返回
注意
接口必須在 ESP8266 DHCP client 關閉 wifi_station_dhcpc_stop 的情況下使用。

espconn_dns_getserver
功能
查詢 DNS server IP
函數定義
ip_addr_t espconn_dns_getserver(uint8 numdns)
輸入參數
uint8 numdnsDNS server ID,支持傳入 0 1
返回
DNS server IP

2017年 6月 8日 天氣報告
氣溫:29.7@ 21:30
相對濕度:百分之 82%
天氣:天色大致良好

沒有留言:

張貼留言