收藏 分销(赏)

人脸打卡机)-WiFi-UDP网络通信.docx

上传人:二*** 文档编号:4816666 上传时间:2024-10-13 格式:DOCX 页数:10 大小:258.59KB 下载积分:5 金币
下载 相关 举报
人脸打卡机)-WiFi-UDP网络通信.docx_第1页
第1页 / 共10页
本文档共10页,全文阅读请下载到手机保存,查看更方便
资源描述
CC3200AI 实验教程疯壳•开发板系列 W olverine-Team2018/07/18 (1)协议类型 | UDP (2)本地主机地址 1 (3)本地主机端口 |8011 ⑥关闭 [Receive from 192. 168. 5. 11 :53686 J : s:// fengke. club/ [Receive from 192. 168.5. 11 :62463]: s:// fengke. club/ 接收区设置 r接收转向文件.. . r自动换行显示 厂显示接收时间 r 十六进制显示 厂暂停接收显示 保存却据清除将收 发送区设置 r启用文件数据源... 厂自动发送附加位 r自动发送应答包. • . r按十六进制发送r发送周期| 1000 ms 文件载入苕除输入 LT就绪! 远程主机:|192.168.5. 11 :62463 图网络调试助手发送信息 [14:02:40.128]收 ************************************************* CC3200 UDP Socket Application *************************************************[14:02:40. 831]收♦♦Host Driver Version: 1.0. 1.6 [14:02:41. 109]收♦♦Device is configured in default state [14:02:41.243]收♦♦Device started as STATIONConnecting to AP: fengke2. 4G ... [14:02:41.804]收♦♦[WLAN EVENT] STA Connected to the AP: £engke2. 4G , BSSID: 28: f£:3e: a4: a8:4d[14:02:43. 946]收♦♦[NETAPP EVENT] IP Acquired: IP=192. 168.5. 11 , Gateway=192. 168.5. 1 Connected to AP: fengke2.4GDevice IP: Sent s:// fengke. club/撑 packets successfully[14:07:43. 071]收♦♦Recu s:// fengke. club/ | packets successfully Sent s:// fengke. club/ s:// fengke. club/| packets successfully端口号|C0M14:11「HEX显示 保存数据|「接收数据到文件厂HEX发送「定时发送:|呷0 ms/次♦加是车换行二 清除省口「翻开文件 1 发送文件|停工|看发送区]厂最前匚E”lfeh 保存参数|扩展| 一 。关闭串口]a更多串口设到1“加时间戳和分包显示,超时时间:俄一ms第「字节至保基二]加校验|None二J厂 RTS “ DTR 波特率:1115200 二]|| 图1。8串口调试助手收到信息 官网地址: :〃 淘宝店: :〃官方 QQ 群:193836402 目录 官网地址: :〃 淘宝店: :〃官方 QQ 群:193836402 官网地址: :〃 fen)ke.cI u b购买链接: :〃 官方 QQ 群:193836402 官网地址: :〃 fen日ke.club淘宝店: :〃f厂方 QQ 群:193836402WIFI-UDP网络通信 UDP是User Datagram Protocol的简称,中文名是用户数据报协议。在网络中它与TCP协议一样 用于处理数据包,与TCP不一样的是,UDP是一种无连接的协议,UDP只能是尽可能地传输到目的地, 所以UDP也是具有一定的不可靠性。 那么为什么还会存在UDP呢?因为在早期的网络开发中,人们发现一些简单的网络通信不需要 经过TCP复杂的建立关系,而且过多的建立TCP连接,会造成很大的网络负担,而UDP协议可以相 对快速的处理这些简单通信。如表1O1所示为UDP组成结构。 表1.0.1 UDP的组成结构 16位源端口 16位目的端口号 16位UDP长度 16位UDP校验和 数据 CC3200支持多种基于WIFI的网络通信,UDP也不例外。 翻开Udp_Socket_Demo,如下图为main函数。 官网地址: :〃 淘宝店: :〃官方 QQ 群:193836402 void main () { long IRetVal 二 T; Boardlnit (); UDMAInit 0; PinMuxConf ig (); InitTermO ; DisplayBanner(APPLICATION_NAME);Init ializeAppVar iables(); IRetVal = ConfigureSimpleLinkToDefaultState (); if(IRetVal < 0) { if (DEVICE_NOT_IN_STATI0N_M0DE 二二 IRetVal) UART_PRINT (Z/Fai led to configure the device in its default state 'n'r"); L00P_F0REVER (); ) " UART_PRINT (Z/Device is configured in default state 'n'r"); IRetVal = sl_Start(0, 0, 0); if (IRetVal < 0 || IRetVal != R0LE_STA){ - UART_PRINT(^Failed to start the device \n'r"); L00P_F0REVER (); } " UART_PRINTCDevice started as STATION \n\r"); UART_PRINT ("Connecting to AP: %s . . . \r\n\ SSID.NAME); IRetVal = WlanConnect(); if (IRetVal < 0) { UART_PRINT ("Failed to establish connection w/ an AP \n\r"); LOOP.FOREVER ();} " UART_PRINT CConnected to AP: %s \n\r", SSID_NAME);UART_PRINT ("Device IP: %d. %d. %d. %d\n\r\n\r'\ SL_IPV4_BYTE (g_ul IpAddr, 3), SL_IPV4_BYTE(g_ulIpAddr, 2), SL_IPV4_BYTE(g_ulIpAddr, 1), SL_IPV4_BYTE(g_ulIpAddr, 0)); while (1) {IRetVal 二 BsdUdpClient (P0RT_NUM); if (IRetVal < 0) { ERR_PRINT (IRetVal); L00P_F0REVER();} " 〃 _ SINonOsMainLoop Task (); 厂 }图1.0.1 main函数 在main函数中有InitializeAppVariables该函数主要实现的是把宏定义中的UDP服务器的IP以及 端口号取出,进入建立udp的就绪状态。 ConfigureSimpleLinkToDefaultState。函数主要是实现CC3200的接入网络局部:把CC3200设置为STA 模式;并且把CC3200接入在common.h中定义好的路由器,如下图,为common.h中定义好 的路由器SSID、秘钥以及加密方式等。 官网地址: :〃 淘宝店: :〃官方 QQ 群:193836402 iifndef _COMMON_H_ idefine _COMMON_H_// // If building vith a C++ compiler,, make all of the definitions in this header // have a C binding. // #ifdef _cplusplus extern nCn{ #endif// // Values for below macros shall be modified as per access-point (AP) properties//2k device will connect to following AP when application is executed define SSID_NAME ^define SECURITY_TYPE ^define SECURITY_KEY ^define SSID_LEN_MAX define BSSID_LEN_MAX wfengke2.4G" /* AP SSID */ SL_SEC_TYPE_WPA/* Security type (OPEN or WEP or WPA^/ wfengke305"/* Password of the secured AP */ 32 6#ifdef NOTERM #define UART_PRINT(x,・・・)#define DBG_PR工NT(x,・・・) #define ERR PRINT(x)图102路由器相关信息 最重要的函数是如下图的BsdUdpClient(),通过该函数建立UDP。 官网地址: :〃 淘宝店: :〃官方 QQ 群:193836402 int BsdUdpClient (unsigned short usPort) { shortsTestBufLen;shortsTestBufLen_l; SlSockAddrIn_t sAddr;intiAddrSize; intiSockID;intiStatus; unsigned long ILoopCount = 0;char g_cBsdBuf[BUF_SIZE] = ""; char g_cBsdBuf_l[BUF_SIZE_1];sTestBufLen = BUF_SIZE; sTestBufLen.l = BUF.SIZE.l;sAddr. sin.family = SL_AF_INET; sAd±?. sin_port = sl_Htons ((unsigned short)usPort);sAddr. sin_addr. s_ad±? = sl_Htonl ((unsigned int)g_ulDestinationIp); iAddrSize = sizeof (SlSockAddrIn_t); iSockID = sl.Socket (SL_AF_INET, SL_SOCK_DGRAM, 0); if ( iSockID < 0 ) {ASSERT_ON_ERROR ( SOCKET_CREATE_ERROR); } _ _ while (ILoopCount < g_ulPacketCount) { -#if UDP.SEND ==1 iStatus = sl_SendTo(iSockID, g_cBsdBuf, sTestBufLen, 0, (SlSockAddr_t *)&sAddr, iAddrSize); if ( iStatus <= 0 ) {s1_C1ose(iSockID); ASSERT.ON.ERROR(SEND.ERROR); } " " lLoopCount++;UART_PRINT("Sent %s packets successfully\n\rA, g-cBsdBuf); // UART_PRINT %u packets success fully \n\r^, g_ulPacketCount); Sendif #if UDP_RECV ==1 iStatus = sl_RecvFrom(iSockID, g_cBsdBuf_lJ sTestBufLen_l, 0, (SlSockAddr-t *)&sAddr, (SlSocklen_t*)&iAddrSize ); memcpy(g_cBsdBuf_2, g_cBsdBuf_l, BUF_SIZE_l*sizeof (char)); if( iStatus < 0 ) {s1_C1ose(iSockID); ASSERT_ON_ERROR(RECV.ERROR);} 一一 一 lLoopCount++;UART_PRINT(^Recv %s packets successfully\n\r^^ g_cBsdBuf_l); //UART_PRINT(^Recv %u packets successfully\n\r^, g_ulPacke-tCoun-t);#endif } s1_C1ose(iSockID); return SUCCESS; )图 1.0.2 BsdUdpClient。函数 该函数会先通过函数sl_SendTo()向网络中发送疯壳的官网,然后通过函数sl_RecvFrom()进入等待 接收。 翻开网络调试助手,然后点击翻开设置协议类型为“UDP”,点击翻开。把网络调试助手的“本 地主机地址”和“本地主机端口”,填写到程序中定义IP以及端口号处,如图103所示(注意IP要 为16进制);如图104所示,为网络调试助手翻开时的画面。 官网地址: :〃 淘宝店: :〃官方 QQ 群:193836402 ^define IP_ADDR #define PORT.NUM ^define BUF_SIZE #define BUF_SIZE_1 0xC0A80509 8011 24 100 图本地IP及端口号 图网络调试助手翻开 //192. 168. 5. 9〃阳务器1P地址 //黑务器端口号〃发送缓冲区大小 〃接受缓冲区大小 编译代码,翻开UniFlash,下载bin文件到板子上(下载方法参考GPIO小节)。 下载完成后,翻开UARTA0的“RXD”,以及“CH340G_VCC”即拨码开关拨到“ON”。 翻开串口调试助手,选择相应的串口号,并且把波特率设置为115200bps,点击翻开。按下板子 上的复位键可看到串口助手打印如下图的信息。可见CC3200已经连接上了指定的路由器以 及通过UDP发送了一段消息,如图106所示。 官网地址: :〃 淘宝店: :〃官方 QQ 群:193836402[14:02:40. 128]收+♦ CC3200 UDP Socket Application *************************************************[14:02:40. 831]收+♦Host Driver Version: 1.0. 1.6 [14:02:41. 109]收一♦Device is configured in default state [14:02:41.243]收一♦Device started as STATIONConnecting to AP: fengke2. 4G ... [14:02:41.804]收一♦[WLAN EVENT] STA Connected to the AP: £engke2. 4G , BSSID: 28: ff:3e: a4: a8:4d[14:02:43. 946]收一♦[NETAPP EVENT] IP Acquired: IP=192. 168.5. 11 , Gateway=192, 168.5. 1 Connected to AP: fengke2.4GDevice IP: Sent s:// fengke. club/谆 packets successfully聿重且J迫文件J|董送文件|停止|清发送区]厂最前 匚Engfch/呆存参数|扩展| 一 端口号出涮4二||「HEX显示 保存数据|厂题数据到文件|「HEX发送厂定时发送:回?。一 ”/次耳加用车换行◎ 关闭串口 I©舒串口设盍| «加时间戳和分包显示,超时时间:k ms第「字缶至|末尾二J加校验|None二J F RTS [7 DTR 波特率:1115200~三)图串口助手打印信息 此刻网络调试助手也收到CC3200发来的信息,并自动获取到了 IP等信息,如图106所示。 图106网络调试助手收到信息 在网络调试助手中输入一串信息,点击发送,如图L0.7所示,此刻,串口调试助手也把CC3200 收到的信息打印出来,并且发送新的一串信息,如图108所示。 官网地址: :〃 fengk/.cIub淘宝店: :〃 官方 QQ 群:1938364026
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服