精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

學習設備開發之Hi3861-UDP-廣播

系統 OpenHarmony
用戶數據報協議(UDP):UDP(用戶數據報協議)是一個簡單的面向數據報的傳輸層協議。提供的是非面向連接的、不可靠的數據流傳輸。UDP不提供可靠性,也不提供報文到達確認、排序以及流量控制等功能。

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??

一、前言

在net_demo.h文件里,testFun是什么?它是怎么選擇客戶端還是服務端再跳轉到tcp_client_test.c文件執行TcpClientTest()函數的呢?

#盲盒+碼#【FFH】學習設備開發之Hi3861-UDP-廣播-開源基礎軟件社區


搞不懂別人高深的代碼,于是后面就仿照官方代碼,自己寫了一份簡單的代碼,并且學習另一種傳輸協議UDP。

二、UDP簡介

1、定義

用戶數據報協議(UDP):UDP(用戶數據報協議)是一個簡單的面向數據報的傳輸層協議。提供的是非面向連接的、不可靠的數據流傳輸。UDP不提供可靠性,也不提供報文到達確認、排序以及流量控制等功能。它只是把應用程序傳給IP層的數據報發送出去,但是并不能保證它們能到達目的地。因此報文可能會丟失、重復以及亂序等。但由于UDP在傳輸數據報前不用在客戶和服務器之間建立一個連接,且沒有超時重發等機制,故而傳輸速度很快。

2、復習一下TCP

“面向連接的TCP”就是在正式通信前必須要與對方建立起連接。TCP協議是一種可靠的、一對一的、面向有連接的通信協議。

3、UDP/TCP區別

TCP和UDP最大的區別就是:TCP是面向連接的,UDP是無連接的。TCP協議和UDP協議各有所長、各有所短,適用于不同要求的通信環境。TCP協議和UDP協議之間的差別如下表所示。

在實際的使用中,TCP主要應用于文件傳輸精確性相對要求較高且不是很緊急的情景,比如電子郵件、遠程登錄等。有時在這些應用場景下即使丟失一兩個字節也會造成不可挽回的錯誤,所以這些場景中一般都使用TCP傳輸協議。由于UDP可以提高傳輸效率,所以UDP被廣泛應用于數據量大且精確性要求不高的數據傳輸,比如我們平常在網站上觀看視頻或者聽音樂的時候應用的基本上都是UDP傳輸協議。

#盲盒+碼#【FFH】學習設備開發之Hi3861-UDP-廣播-開源基礎軟件社區

開發流程圖:

UDP:

#盲盒+碼#【FFH】學習設備開發之Hi3861-UDP-廣播-開源基礎軟件社區

TCP:

#盲盒+碼#【FFH】學習設備開發之Hi3861-UDP-廣播-開源基礎軟件社區

三、代碼

1、把連接WiFi的代碼搬過來

#盲盒+碼#【FFH】學習設備開發之Hi3861-UDP-廣播-開源基礎軟件社區


在net_params.h文件里配置WiFi:

#ifndef PARAM_HOTSPOT_SSID
#define PARAM_HOTSPOT_SSID "Fsr" // your AP SSID
#endif
#ifndef PARAM_HOTSPOT_PSK
#define PARAM_HOTSPOT_PSK "12345678" // your AP PSK
#endif

連接WiFi:

//連接wifi
WifiDeviceConfig config = {0};
// 準備AP的配置參數
strcpy(config.ssid, PARAM_HOTSPOT_SSID);
strcpy(config.preSharedKey, PARAM_HOTSPOT_PSK);
config.securityType = PARAM_HOTSPOT_TYPE;
osDelay(10);
//開始連接
int netId = ConnectToHotspot(&config);

記得在udp文件夾里的BUILD.gn編譯WiFi的.c文件:

#盲盒+碼#【FFH】學習設備開發之Hi3861-UDP-廣播-開源基礎軟件社區

2、簡單的UDP

// 1.創建udp
int sock_fd;
int ret;
sock_fd = socket(AF_INET, SOCK_DGRAM, 0); //SOCK_DGRAM:UDP類型的socket
if (sock_fd < 0)
{
perror("sock_fd create error\r\n");
return;
}
// 2.配置地址
struct sockaddr_in send_addr;
socklen_t send_addr_len = sizeof(send_addr);
//內存初始化
memset((void *)&send_addr, 0, send_addr_len);
send_addr.sin_family = AF_INET;
send_addr.sin_addr.s_addr = inet_addr("192.168.11.41"); // 是將一個點分十進制的IP轉換成一個長整數型數(u_long類型)
send_addr.sin_port = htons(1234); // 端口號,從主機字節序轉為網絡字節序
// 3.配置發送消息
char *msg = "hello world";
while (1)
{
//4.發送
// UDP socket 是 “無連接的” ,因此每次發送都必須先指定目標主機和端口,主機可以是多播地址
ret = sendto(sock_fd, msg, strlen(msg), 0, (struct sockaddr *)&send_addr, send_addr_len);
printf("send UDP message {%s}done!\r\n", msg);
usleep(1 * 1000 * 1000);

// 5.接收
struct sockaddr_in fromAddr = {0};
socklen_t fromLen = sizeof(fromAddr);
// UDP socket 是 “無連接的” ,因此每次接收時前并不知道消息來自何處,通過 fromAddr 參數可以得到發送方的信息(主機、端口號)
ret = recvfrom(sock_fd, &response, sizeof(response), 0, (struct sockaddr *)&fromAddr, &fromLen);
if (ret <= 0)
{
printf("recvfrom failed or abort, %ld!\r\n", ret);
}
response[ret] = '\0';
printf("recv UDP message {%s} %ld done!\r\n", response, ret);
printf("peer info: ipaddr = %s, port = %d\r\n", inet_ntoa(fromAddr.sin_addr), ntohs(fromAddr.sin_port)); //將網絡地址轉換成“.”點隔的字符串格式。將一個16位數由網絡字節順序轉換為主機字節順序
}

代碼中主要的函數與TCP一樣都是用socket,已在??上文,【FFH】學習設備開發之Hi3861-TCPclient-開關燈??解釋。
兩者開發過程的區別:
 創建socket的類型type=SOCK_STREAM(TCP)/SOCK_DGRAM(UDP)。

int sockfd = socket(AF_INET, type, 0);

TCP需要多一步與主機連接,而UDP不需要。

#盲盒+碼#【FFH】學習設備開發之Hi3861-UDP-廣播-開源基礎軟件社區

3、代碼運行結果

netcat,-u代表主機使用UDP協議傳輸,-l 開啟監聽,-p指定端口。

#盲盒+碼#【FFH】學習設備開發之Hi3861-UDP-廣播-開源基礎軟件社區

四、UDP廣播

因為UDP是無連接的,并且一對多發送消息,自然而然就具有廣播消息的功能。
下面給出主要代碼:

// 1.創建udp
int sock_fd;
int ret;
sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
if (sock_fd < 0)
{
perror("sock_fd create error\r\n");
return;
}
// 2.設置廣播模式
int yes = 1;
ret = setsockopt(sock_fd, SOL_SOCKET, SO_BROADCAST, (char *)&yes, sizeof(yes));
// SOL_SOCKET表示給當前的socketfd,賦予SO_BROADCAST廣播權限
if (ret == -1)
{
perror("setsockopt error\r\n");
return;
}
// 3.配置廣播地址
struct sockaddr_in broadcast_addr;
socklen_t broadcast_addr_len = sizeof(broadcast_addr);
//初始化地址內存
memset((void *)&broadcast_addr, 0, broadcast_addr_len);
broadcast_addr.sin_family = AF_INET;
broadcast_addr.sin_addr.s_addr = htonl(INADDR_BROADCAST); //INADDR_BROADCAST:要發送給所有主機的地址
broadcast_addr.sin_port = htons(1234);
char *msg = "hello ";
while (1)
{
ret = sendto(sock_fd, msg, strlen(msg), 0, (struct sockaddr *)&broadcast_addr, broadcast_addr_len);

usleep(1 * 1000 * 1000);
}

設置廣播模式的函數:

setsockopt(sock_fd, SOL_SOCKET, SO_BROADCAST, (char *)&yes, sizeof(yes));
int setsockopt( int socket, int level, int option_name,const void *option_value, size_t ,ption_len);

第一個參數socket是套接字描述符。
第二個參數level是被設置的選項的級別,如果想要在套接字級別上設置選項,就必須把level設置為 SOL_SOCKET。
第三個參數option_name指定準備設置的選項,option_name可以有哪些取值,這取決于level。當level取SOL_SOCKET時,option_name可取
SO_DEBUG,打開或關閉調試信息。
SO_REUSEADDR,打開或關閉地址復用功能。 當option_value不等于0時,打開,否則,關閉。
SO_DONTROUTE,打開或關閉路由查找功能。 當option_value不等于0時,打開,否則,關閉。
SO_BROADCAST,允許或禁止發送廣播數據。 當option_value不等于0時,允許,否則,禁止。
不需要確定發給哪個特定的主機,所以要設置廣播的地址為所有。

broadcast_addr.sin_addr.s_addr = htonl(INADDR_BROADCAST); //INADDR_BROADCAST:要發送給所有主機的地址

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??。

責任編輯:jianghua 來源: 51CTO開源基礎軟件社區
相關推薦

2022-11-24 14:44:33

傳輸控制協議設備開發

2023-05-26 16:07:14

Hi3861Wifi模塊

2021-12-31 15:07:00

鴻蒙HarmonyOS應用

2022-03-15 15:00:59

Hi3861Pin接口鴻蒙

2022-08-19 10:54:47

操作系統鴻蒙

2020-12-17 10:02:16

鴻蒙Hi3861開發板

2023-04-24 15:11:51

系統開發鴻蒙

2021-09-09 10:06:09

鴻蒙HarmonyOS應用

2020-10-16 09:50:37

Hi3861WiFi熱點

2020-12-11 12:45:04

鴻蒙Hi3861游戲

2021-06-25 15:32:13

鴻蒙HarmonyOS應用

2023-05-06 15:41:00

人體傳感器數據鴻蒙

2020-11-06 10:15:16

HiBurn

2020-10-14 09:41:02

Hi3861GPIO點燈

2023-05-09 15:17:42

Hi3861鴻蒙

2020-10-14 09:37:03

HiBurn鴻蒙.bin文件

2021-09-16 10:03:39

鴻蒙HarmonyOS應用

2022-05-09 14:22:40

Hello WorlMNIST鴻蒙

2020-10-30 17:12:05

Hi3861

2020-10-30 09:48:03

Hi3861開發板get請求
點贊
收藏

51CTO技術棧公眾號

中文字幕资源站| 久久av一区二区| 青娱乐免费在线视频| 美女国产精品久久久| 亚洲一区欧美一区| 欧美日韩精品免费观看视一区二区| 男人天堂2024| 亚洲高清资源在线观看| 亚洲国产精品999| 黄色片视频在线| 丁香花在线高清完整版视频| 2021中文字幕一区亚洲| 成人h视频在线| 中文在线观看免费网站| 日韩黄色大片| 亚洲国产精品一区二区久| 国内自拍视频网| 丝袜美女在线观看| 国产精品久久久久久久裸模| 99久久久精品免费观看国产| 中文字幕高清在线免费播放| 午夜欧美视频| 色阁综合伊人av| 波多野结衣有码| 91精品福利观看| 亚洲综合精品自拍| 波多野结衣三级在线| 青青九九免费视频在线| 国产成人av资源| 国产精品视频大全| 亚洲免费在线视频观看| 黄色免费成人| 欧美成人午夜激情在线| 九一在线免费观看| 国产精品午夜一区二区三区| 欧美精品一区二区三区在线 | 成人影院在线播放| 亚洲欧洲另类国产综合| 偷拍视频一区二区| 毛片网站在线| 国产亚洲一区二区三区在线观看| 国产精品免费在线| 黄色小视频免费在线观看| 国产精品亚洲专一区二区三区| 国产免费亚洲高清| 黄色一区二区视频| 免费人成黄页网站在线一区二区| 人妖精品videosex性欧美| wwwxxx亚洲| 国产精品久久久久久模特| 欧美激情欧美激情在线五月| 丰满少妇高潮久久三区| 亚洲一区二区| 欧美激情视频在线观看| 国产一级在线视频| 国产精品a久久久久| 欧美成人在线网站| www.youjizz.com亚洲| 黄色成人在线网址| 91成人精品网站| 日产精品久久久| 久久久精品网| 国产欧美日韩高清| 99久久一区二区| 岛国一区二区三区| 快播亚洲色图| jzzjzzjzz亚洲成熟少妇| 国产精品久久久久影院| 日本成人性视频| 色婷婷在线播放| 天天综合网天天综合色| 国产一线二线三线在线观看| 日韩五码电影| 精品盗摄一区二区三区| 国产呦小j女精品视频| 精品一区二区三| 久久综合久久八八| 日韩美女一级片| 三级精品在线观看| 91精品久久久久久久久久入口| 国产高潮流白浆喷水视频| 成人免费视频网站在线观看| 农村寡妇一区二区三区| av黄色在线观看| 洋洋av久久久久久久一区| 波多野结衣家庭教师在线| 成人深夜福利| 精品国产网站在线观看| 美女100%无挡| 亚洲一区二区日韩| 456亚洲影院| 国产精品伦理一区| 久久综合网色—综合色88| 色姑娘综合av| 狂野欧美性猛交xxxxx视频| 欧美视频一二三| 欧美国产在线一区| 国产成人ay| 国内精品一区二区三区| 在线播放一级片| jiyouzz国产精品久久| 亚洲一区二区在线观| 超碰中文在线| 欧美麻豆精品久久久久久| 漂亮人妻被黑人久久精品| 日韩在线中文| 欧洲成人免费视频| 亚洲国产精品久久久久久6q| 国产日韩欧美不卡在线| 国精产品一区一区三区视频| 高清一区二区| 中文字幕精品国产| 毛片在线免费视频| 国产98色在线|日韩| 一道精品一区二区三区| 原纱央莉成人av片| 亚洲第五色综合网| 欧美黄色免费在线观看| 久久成人综合网| 青青草成人激情在线| 超清av在线| 欧美一二三区在线观看| 99re6热在线精品视频| 亚洲男人影院| 久久精品国产一区二区三区不卡| 99自拍视频在线观看| 欧美亚洲动漫制服丝袜| 国产网站无遮挡| 亚洲精品1234| 国产精品v欧美精品v日韩精品 | 国产精品免费99久久久| 性色av香蕉一区二区| 亚洲乱色熟女一区二区三区| 1区2区3区精品视频| 国产精品久久久毛片| 国产欧美日韩精品一区二区免费 | 久久人人爽av| 成人羞羞网站| 国产精品久久久久久久久免费 | 亚洲欧美综合一区二区| 亚洲一二三专区| 美女露出粉嫩尿囗让男人桶| 欧美在线高清| 国产精品对白一区二区三区| 日本理论片午伦夜理片在线观看| 欧美一级夜夜爽| 久久国产在线视频| 成人美女视频在线看| 日本福利视频在线观看| 中文字幕一区二区三区中文字幕 | 日韩欧美中文在线观看| 欧美精品一区二区免费| a级片免费视频| 亚洲黄色片在线观看| 中文字幕无码毛片免费看| 亚洲精品一二三区区别| 97视频中文字幕| ririsao久久精品一区| 亚洲精品电影网| 免费视频久久久| 久久久久久免费毛片精品| 日韩一级在线免费观看| 日韩成人影院| 91精品综合视频| 国精一区二区三区| 亚洲国产美女久久久久 | 欧美精品1区2区3区| 欧美在线视频第一页| 成人免费av网站| 日本熟妇人妻xxxxx| 第一会所亚洲原创| 亚洲综合在线中文字幕| av电影在线免费| 亚洲精品丝袜日韩| 最近中文字幕在线免费观看| 中文字幕欧美一| 亚洲v在线观看| 另类亚洲自拍| 中文字幕一区二区三区在线乱码| 91精品导航| 日韩av日韩在线观看| 欧美96在线| 亚洲成人免费网站| 天天干天天插天天射| 1000部国产精品成人观看| 亚洲美女高潮久久久| 视频一区视频二区中文| 黄色网址在线免费看| 麻豆一区二区| 成人av.网址在线网站| 麻豆mv在线看| 精品国产一区久久久| 国产 欧美 精品| 欧美另类高清zo欧美| 成人毛片18女人毛片| 中文字幕永久在线不卡| 亚洲永久无码7777kkk| 久久精品国产精品亚洲红杏| 老太脱裤让老头玩ⅹxxxx| 日本大胆欧美| 国内一区在线| 激情综合五月| 国产精品久久久久久久久久久新郎| 18videosex性欧美麻豆| 国产亚洲欧美日韩美女| 人妻精品无码一区二区| 91精品一区二区三区久久久久久 | av文字幕在线观看| 亚洲天堂久久av| 日韩在线观看视频一区二区三区| 欧美日韩国产影片| 国产www在线| 亚洲国产视频直播| 国产麻豆视频在线观看| 国产亚洲一区二区在线观看| 国产免费一区二区三区最新6| 精品一区二区三区免费| 青青在线免费观看视频| 国产亚洲高清视频| 欧美国产视频一区| 一级欧洲+日本+国产 | 中文字幕高清视频| 白白色 亚洲乱淫| 日本亚洲一区二区三区| 美日韩一级片在线观看| 能在线观看的av网站| 亚洲一卡久久| 青青草视频在线免费播放| 女人色偷偷aa久久天堂| 男女激烈动态图| 先锋资源久久| 中文字幕久久一区| 日韩片欧美片| 亚洲精品中字| 久久中文视频| 一区二区精品国产| 欧美xxxxx视频| 中文字幕人成一区| 亚洲久久久久| 在线播放 亚洲| 香蕉精品视频在线观看| 国产成人三级视频| 欧美在线三级| 天堂8在线天堂资源bt| 午夜视频一区| 男女私大尺度视频| 国产日产高清欧美一区二区三区| 毛片在线视频播放| 久久久久久网| 欧美日韩亚洲自拍| 久久激情五月激情| 超碰在线超碰在线| 丁香另类激情小说| 中文字幕免费看| 中文字幕av一区 二区| 美女网站视频色| 亚洲手机成人高清视频| 538精品在线观看| 午夜视频在线观看一区二区三区| www欧美在线| 欧美在线看片a免费观看| 特级西西444www高清大视频| 欧美日韩不卡一区| 亚洲第一免费视频| 亚洲欧美一区二区三区情侣bbw| 高清av电影在线观看| 久久国内精品一国内精品| 天堂av最新在线| 欧美亚洲国产另类| 国产69精品久久久久9999人| 91丨九色丨国产| 日日天天久久| 一区二区成人国产精品| 亚洲第一区色| 久久久久久三级| 国产激情偷乱视频一区二区三区| 国产人成视频在线观看| 国产欧美日韩麻豆91| 久草视频手机在线| 欧美日韩国产色| 中国女人一级一次看片| 日韩免费观看高清完整版| 亚洲 欧美 激情 小说 另类| 中文字幕亚洲欧美| 国产网红女主播精品视频| 日本久久91av| 日韩成人久久| 欧美理论一区二区| 一区二区三区国产精华| 国产精品宾馆在线精品酒店| 美女视频一区在线观看| 大尺度做爰床戏呻吟舒畅| 欧美国产激情二区三区| 国产真实夫妇交换视频| 91电影在线观看| 免费av网站在线播放| 中文字幕日韩视频| 欧美男男tv网站在线播放| 91香蕉亚洲精品| 欧洲激情综合| www在线观看免费| 国产精品综合久久| 国产91丝袜美女在线播放| 亚洲成人tv网| 国产女人18毛片水真多| 一区二区欧美在线| 成人免费观看在线观看| 亚洲一区二区三区在线免费观看| 国产免费av一区二区三区| 国产在线精品91| 国产成人aaa| 欧美性生交大片| 在线欧美小视频| 视频国产在线观看| 欧美极品在线视频| 美女精品视频在线| 一区二区不卡视频| 日韩1区2区日韩1区2区| 鲁大师私人影院在线观看| 亚洲精品国产精品乱码不99| 中文字幕一区二区三区免费看| 亚洲毛片在线免费观看| 成人性生交大片免费看网站| 91免费综合在线| 99re6这里只有精品| 波多野结衣天堂| 久久久久久久久久久久久久久99| 亚洲一区欧美在线| 亚洲第一中文字幕| 嗯啊主人调教在线播放视频| 国产精品中出一区二区三区| 亚洲欧洲日韩| 国产精品探花在线播放| 综合电影一区二区三区| 在线免费一级片| www.欧美精品| 曰本一区二区| 黄色影视在线观看| 国内精品久久久久影院薰衣草 | 91久久夜色精品国产九色| 中文字幕亚洲日本| 一区二区成人在线视频| wwwxxxx国产| 久久久久久久久久国产| 国产精品三p一区二区| 91九色丨porny丨国产jk| 粉嫩aⅴ一区二区三区四区五区| 免费在线一级片| 精品国产电影一区二区| 草莓视频丝瓜在线观看丝瓜18| www.久久爱.cn| 99精品视频免费观看视频| 在线精品一区二区三区| 日韩欧美在线免费| www.黄在线观看| 91在线免费视频| 在线看片欧美| aaaaa一级片| 欧美丝袜丝交足nylons| 老司机在线永久免费观看| 亚洲自拍偷拍福利| 亚洲国产裸拍裸体视频在线观看乱了中文| 女同性αv亚洲女同志| 午夜精品久久一牛影视| 理论在线观看| 成人情趣片在线观看免费| 欧美三区不卡| 久久精品一区二区免费播放| 欧美少妇bbb| 日本色护士高潮视频在线观看| 精品国产免费久久久久久尖叫| 久久av最新网址| 99热这里只有精品4| 欧美r级在线观看| 户外露出一区二区三区| 日本一级淫片演员| www.欧美日韩| 在线播放亚洲精品| 97色在线视频观看| 色喇叭免费久久综合| 亚洲国产精品第一页| 色av综合在线| 欧美理论片在线播放| 欧美少妇一区| 国产九色精品成人porny| 看片网址国产福利av中文字幕| 在线观看欧美日韩| 都市激情亚洲欧美| 在线观看亚洲色图| 精品国产乱码久久久久久天美| 91大神在线网站| 九九九久久久| 国产美女精品在线| 亚洲精品国产精品国自产网站按摩| 欧美日韩成人在线观看| 视频一区在线观看| 国产免费一区二区三区最新6| 欧美日韩国产高清一区二区三区| 高清精品在线| 欧美a级免费视频|