在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【開鴻智谷NiobeU4開發板免費試用體驗】基于LWIP的TCP連接

開發板試用精選 ? 來源:開發板試用 ? 作者:電子發燒友論壇 ? 2022-10-17 10:37 ? 次閱讀

本文來源電子發燒友社區,作者:大菠蘿Alpha, 帖子地址:https://bbs.elecfans.com/jishu_2307368_1_1.html


這個功能反反復復折騰了好幾天,多虧開鴻智谷原廠工程師支持。

一、目標

基于LWIP,在NiobeU4開發板上部署TCP Client,連接測試服務器,獲取服務器發來的信息。

二、設計實現

TS1.png

(一)TCP Server

Server直接在計算機上,用Python實現了個簡單的,功能就是client連接上后,給其發送一段字符。

import socket

# 指定協議
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 讓端口可以重復使用
server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
# 綁定ip和端口
server.bind(('0.0.0.0', 8080))
# 監聽
server.listen(1)
# 等待消息
while1:
  clientsocket, address = server.accept()
  clientsocket.send(address[0].encode("utf-8")+b'HELLO world~')
  clientsocket.close()
server.close()

代碼比較簡單,讀讀也清晰。

(二)TCP Client

TS.png

開發板端實現TCP Client功能即可,如上圖,首先創建socket,再connect server,然后send 數據,最后close socket,一個典型的TCP Server-Client案例就好了,這次Client不發送而是接收(recv)信息,得益于OpenHarmony的LWIP協議棧,Client實現跟Linux編程毫無區別,具體代碼如下:

void wifi_test(void)
{
    int sock = -1;
    struct sockaddr_in client_addr;
    char recv_data[768] = {0};
    int recv_data_len;
    WifiConnect(WIFI_NAME, WIFI_PWD);
    while (1) {
        sock = socket(AF_INET, SOCK_STREAM, 0);
        if (sock < 0) {
            printf("Socket errorn");
            osDelay(OD_DELAY_100);
            continue;
        }
        memset_s(&(client_addr), sizeof(client_addr), 0, sizeof(client_addr));
        client_addr.sin_family = AF_INET;
        client_addr.sin_port = htons(SERVER_PORT);
        client_addr.sin_addr.s_addr = inet_addr(SERVER_IP);
        printf("try connect to server "SERVER_IP" :%d n", SERVER_PORT);
        if (connect(sock, (struct sockaddr *)&client_addr, sizeof(struct sockaddr)) == -1) {
            closesocket(sock);
            osDelay(OD_DELAY_1000);
            continue;
        }
        printf("Connect to tcp server successful!n");		
        while (1) {
            recv_data_len = recv(sock, recv_data, RECV_LEN, 0);
            if (recv_data_len <= 0) {
                break;
            } else {
                recv_data[recv_data_len] = '';
            }
            printf("recv: %sn", recv_data);
            write(sock, recv_data, recv_data_len);
        }
        close(sock);
	break;
    }
}

三、編譯燒錄

反正hb set,hb build -f一頓操作猛如虎,直接燒寫OHOS Img即可,其他的bootloader和partition因為沒有變化,不必重新燒錄。
TS3.png

四、運行

從系統log中,可以看出,NiobeU4板子啟動后收到了Server發來的數據,HELLO world~。

[20:07:45:841]<--System Init-->
[20:07:45:841]<--Wifi Init-->
[20:07:45:841]register wifi event succeed!
[20:07:45:841]I (161) wifi_init: WiFi RX IRAM OP enabled
[20:07:45:992]I (558) phy_init: phy_version 4670,719f9f6,Feb 18 2021,17:07:07
[20:07:45:992]I (2378) wifi:mode : 
[20:07:48:981]WaitScanResult:wait success[3]s
[20:07:48:981]starlink  
[20:07:48:981]
[20:07:49:835]sta (44:17:93:96:e6:34)
[20:07:49:835]I (2378) wifi:enable tsf
[20:07:49:835]I (6228) wifi:new:<8,0>, old:<1,0>, ap:<255,255>, sta:<8,0>, prof:1
[20:07:49:841]I (6228) wifi:state: init -> auth (b0)
[20:07:49:866]I (6238) wifi:state: auth -> assoc (0)
[20:07:49:866]I (6248) wifi:state: assoc -> run (10)
[20:07:49:866]I (6248) wifi:connected with starlink, aid = 6, channel 8, BW20, bssid = 3e:87:46:16:13:6e
[20:07:49:880]I (6248) wifi:security: Open Auth, phy: bgn, rssi: -50
[20:07:49:880]I (6callback function for wifi connect
[20:07:49:880]248) wifi:pm start, type: 1
[20:07:49:954]
[20:07:49:954]W (6268) wifi:idx:0 (ifx:0, 3e:87:46:16:13:6e), tid:0, ssn:0, winSize:64
[20:07:49:969]I (6348) wifi:AP's
[20:07:52:482]WaitConnectResult:wait success[1]s
[20:07:52:482]WiFi connect succeed!
[20:07:52:482]
[20:07:53:485]start wifi_test test
[20:07:53:485]try connect to server 192.168.43.159 :8080 
[20:07:53:485]Connect to tcp server successful!
[20:07:53:495]recv: 192.168.43.158HELLO world~
[20:07:53:505]try connect to server 192.168.43.159 :8080 
[20:07:53:505]Connect to tcp server successful!
[20:07:53:509]recv: 192.168.43.158HELLO world~
[20:07:53:523]try connect to server 192.168.43.159 :8080 
[20:07:53:523]Connect to tcp server successful!
[20:07:53:523]recv: 192.168.43.158HELLO world~

##感謝閱讀##

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 開鴻智谷
    +關注

    關注

    2

    文章

    144

    瀏覽量

    1528
  • NiobeU4
    +關注

    關注

    3

    文章

    31

    瀏覽量

    610
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    有獎丨米爾 瑞芯微RK3506開發板免費試用

    米爾與瑞芯微合作發布的新品基于瑞芯微RK3506應用處理器的MYD-YR3506開發板免費試用名額來啦~~米爾提供了3塊價值299元的MYD-YR3506開發板發起
    的頭像 發表于 06-19 08:04 ?144次閱讀
    有獎丨米爾 瑞芯微RK3506<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>

    有獎丨米爾 瑞芯微RK3562開發板免費試用新增名額!

    米爾與瑞芯微合作發布的新品基于瑞芯微RK3562應用處理器的MYD-YR3562開發板免費試用名額增加
    的頭像 發表于 06-13 08:04 ?176次閱讀
    有獎丨米爾 瑞芯微RK3562<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>新增名額!

    基于RK3576處理器,米爾RK3576開發板免費試用

    年7月19日 ? 評測數量: 3塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤HH-SCDAYU800A開發板免費試用 RIS
    的頭像 發表于 06-09 15:00 ?309次閱讀
    基于RK3576處理器,米爾RK3576<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>

    搭載OpenHarmony操作系統,視美泰SC-3568HA開發板免費試用

    : 10塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤HH-SCDAYU800A開發板免費試用 RISC-V
    的頭像 發表于 06-05 16:45 ?349次閱讀
    搭載OpenHarmony操作系統,視美泰SC-3568HA<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>

    基于RK處理器,創龍TL3562-MiniEVM開發板試用體驗

    數量: 10塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤HH-SCDAYU800A開發板免費試用 RISC-V
    的頭像 發表于 06-05 16:31 ?293次閱讀
    基于RK處理器,創龍TL3562-MiniEVM<b class='flag-5'>開發板</b><b class='flag-5'>試用</b>體驗

    性能強悍!合眾HZ-RK3568開發板試用體驗

    月19日 ? 評測數量: 10塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤HH-SCDAYU800A開發板免費試用 RISC
    的頭像 發表于 06-05 16:30 ?354次閱讀
    性能強悍!合眾HZ-RK3568<b class='flag-5'>開發板</b><b class='flag-5'>試用</b>體驗

    有獎丨米爾 NXP i.MX91開發板免費試用來啦

    米爾與NXP合作發布的新品基于NXPi.MX91應用處理器的MYD-LMX91開發板免費試用名額來啦~~米爾提供了3套價值588元的MYD-LMX91開發板發起
    的頭像 發表于 06-05 08:02 ?412次閱讀
    有獎丨米爾 NXP i.MX91<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>來啦

    【評測試用】合眾HZ-T536開發板免費試用體驗

    【評測試用】合眾HZ-T536開發板免費試用體驗
    的頭像 發表于 05-27 08:05 ?171次閱讀
    【評測<b class='flag-5'>試用</b>】合眾HZ-T536<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>體驗

    【新品體驗】正點原子STM32MP257開發板免費試用

    試用產品概述ATK-DLMP257B開發板是正點原子基于STM32MP257DAK3處理器研發的一款高性能嵌入式開發平臺,適用于嵌入式系統開發。該
    的頭像 發表于 04-22 08:05 ?424次閱讀
    【新品體驗】正點原子STM32MP257<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>

    免費丨米爾 STM32MP257開發板有獎試用

    米爾與ST合作發布的新品基于STM32MP257應用處理器的MYD-LD25X開發板免費試用活動來啦~~米爾提供了2塊價值488元的MYD-LD25X開發板發起
    的頭像 發表于 03-20 08:05 ?406次閱讀
    <b class='flag-5'>免費</b>丨米爾 STM32MP257<b class='flag-5'>開發板</b>有獎<b class='flag-5'>試用</b>

    有獎丨米爾 瑞芯微YR3562開發板免費試用

    米爾與瑞芯微合作發布的新品基于瑞芯微RK3562應用處理器的MYD-YR3562開發板免費試用活動來啦~~米爾提供了3塊價值599元的MYD-YR3562開發板發起
    的頭像 發表于 03-20 08:05 ?473次閱讀
    有獎丨米爾 瑞芯微YR3562<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>

    有獎試用!!RA-Eco-RA4M2-100PIN-V1.0開發板試用活動報名

    RA-Eco-RA4M2-100PIN-V1.0開發板試用活動
    的頭像 發表于 03-13 12:10 ?447次閱讀
    有獎<b class='flag-5'>試用</b>!!RA-Eco-RA<b class='flag-5'>4</b>M2-100PIN-V1.0<b class='flag-5'>開發板</b><b class='flag-5'>試用</b>活動報名

    有獎丨米爾 全志T536開發板免費試用

    米爾與全志合作發布的新品基于全志T536應用處理器的MYD-LT536-GK開發板免費試用活動來啦~~米爾提供了3塊價值750元的MYD-LT536-GK開發板發起
    的頭像 發表于 12-26 08:05 ?803次閱讀
    有獎丨米爾 全志T536<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>

    追加名額丨米爾瑞芯微RK3576開發板有獎試用

    米爾與瑞芯微合作發布的新品基于瑞芯微RK3576應用處理器的MYD-LR3576開發板免費試用活動加碼啦~~米爾追加了2塊價值849元的MYD-LR3576開發板發起
    的頭像 發表于 11-22 01:00 ?581次閱讀
    追加名額丨米爾瑞芯微RK3576<b class='flag-5'>開發板</b>有獎<b class='flag-5'>試用</b>

    有獎丨米爾 瑞芯微RK3576開發板免費試用

    米爾與瑞芯微合作發布的新品基于瑞芯微RK3576應用處理器的MYD-LR3576開發板免費試用活動來啦~~米爾提供了7塊價值849元的MYD-LR3576開發板發起
    的頭像 發表于 11-12 01:00 ?725次閱讀
    有獎丨米爾 瑞芯微RK3576<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>
    主站蜘蛛池模板: 欧美人与zoxxxx另类 | 久久天天丁香婷婷中文字幕 | 电源天堂 | 日韩天天操 | 免费福利午夜影视网 | 午夜色视频 | 欧美一二区视频 | 91欧美精品激情在线观看 | 国产成人一区二区在线不卡 | 97人人看| 日本aaaaa毛片在线视频 | 欧美巨大xxxx做受中文字幕 | 激激婷婷综合五 | 狠狠色噜噜噜噜狠狠狠狠狠狠奇米 | 日本亚洲一区二区 | 亚洲第一香蕉视频 | 综合成人在线 | 欧美性一级交视频 | 日韩在线免费看网站 | 天天做天天爱天天操 | 欧美性操 | a久久| 欧美人成a视频www | 国产三级国产精品国产普男人 | 欧美zoozzooz性欧美 | 一级做a爱 一区 | 免费人成在线观看视频播放 | 四虎影视在线影院4hutv | 海外毛片 | 人人揉人人爽五月天视频 | 特黄特色三级在线观看 | 757一本到午夜宫 | 黄色男人的天堂 | 欧美亚洲一区二区三区在线 | 日韩色天使综合色视频 | 欧美成人全部费免网站 | 国产网站黄 | aaa免费视频 | 色综合视频在线 | 狠狠干天天 | 就去色综合 |