找回密码
 注册
关于网站域名变更的通知
查看: 205|回复: 1
打印 上一主题 下一主题

【开发教程9】疯壳·AI语音人脸识别-WIFI-UDP网络通信

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-8-5 18:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
CC3200AI实验教程
——疯壳·开发板系列
WIFI-UDP网络通信

( o: X0 y+ z+ O% u9 [# v
5 j* i, R, ~! `# n, g
$ M% c2 Q  z; }- v& ~% P, u" C2 X
0 y* `2 I8 L/ M3 f/ A  UDP是User Datagram Protocol的简称, 中文名是用户数据报协议。在网络中它与TCP协议一样用于处理数据包,与TCP不一样的是,UDP是一种无连接的协议,UDP只能是尽可能地传输到目的地,所以UDP也是具有一定的不可靠性。  o, v# Z, P. N- c! x# P0 O" p! h, ?
  那么为什么还会存在UDP呢?因为在早期的网络开发中,人们发现一些简单的网络通信不需要经过TCP复杂的建立关系,而且过多的建立TCP连接,会造成很大的网络负担,而UDP协议可以相对快速的处理这些简单通信。如表1.0.1所示为UDP组成结构。# p2 R6 h3 A. f* S4 u
表1.0.1 UDP的组成结构! l+ m% P" X: G: x/ r! h0 z

  R7 t# Q6 Y7 E. _' g
8 v: z) D3 Z8 ]8 N1 s" D表1' E$ A9 l6 W, T; M" w
  CC3200支持多种基于WIFI的网络通信,UDP也不例外。
0 h9 P5 M% L; W* J  打开Udp_Socket_Demo,如图1.0.1所示为main函数。
7 a  F" B! c- U- U& \+ @5 j
* K6 {4 i1 g7 A6 R8 T) R5 p" J  f + ?6 `6 G" I+ x  k  I5 ^
图1.0.1 main函数  B" b1 {* L: F/ o4 t( x/ d
  在main函数中有InitializeAppVariables该函数主要实现的是把宏定义中的UDP服务器的IP以及端口号取出,进入建立udp的就绪状态。
2 {# G* [- Y2 C  ConfigureSimpleLinkToDefaultState()函数主要是实现CC3200的接入网络部分:把CC3200设置为STA模式;并且把CC3200接入在common.h中定义好的路由器,如图1.0.2所示,为common.h中定义好的路由器SSID、秘钥以及加密方式等。
' H, a0 S) M* c. U( n  l1 x3 N; B, v& N9 e  G% E6 t

' l- f) t# I" d5 _2 v图1.0.2 路由器相关信息/ i9 n7 d- s$ t4 |: H
  最重要的函数是如图1.0.2所示的BsdUdpClient(),通过该函数建立UDP。
  }* p0 b( _! Y, ?8 V' ^4 O% H
, O- f8 K# Y) }/ B: { % I. N1 ~5 S1 c( F$ X- h* U
图1.0.3 BsdUdpClient()函数5 f4 V+ q; G2 a- d+ ~- h
  该函数会先通过函数sl_SendTo()向网络中发送疯壳的官网,然后通过函数sl_RecvFrom()进入等待接收。
* T* Q& E7 n2 C0 q* e  打开网络调试助手,然后点击打开设置协议类型为“UDP”,点击打开。把网络调试助手的“本地主机地址”和“本地主机端口”,填写到程序中定义IP以及端口号处,如图1.0.3所示(注意IP要为16进制);如图1.0.4所示,为网络调试助手打开时的画面。" r( G8 N1 Q9 ]" D  ~" j; F

0 @: l  a9 j! y  R  D" C
% ]4 J& @, i- p0 D5 j9 _图1.0.4 本地IP及端口号4 Q/ Y3 Z9 n  j' U( Q8 d( F: D6 S

' C6 k* i2 i, ^- x+ ]6 u/ u   L; f; w( k6 [6 _$ g7 Z! K" A
图1.0.5 网络调试助手打开
0 a0 j, x6 Z% f" Y  编译代码,打开UniFlash,下载bin文件到板子上(下载方法参考GPIO小节)。7 U- o: a$ V1 k" F# a0 o
  下载完成后,打开UARTA0的“RXD”,以及“CH340G_VCC”即拨码开关拨到“ON”。. B6 Z. P; B. C
  打开串口调试助手,选择相应的串口号,并且把波特率设置为115200bps,点击打开。按下板子上的复位键可看到串口助手打印如图1.0.5所示的信息。可见CC3200已经连接上了指定的路由器以及通过UDP发送了一段消息,如图1.0.6所示。
9 {, m+ w. N3 |- G$ W3 W
7 s& Y( Q5 x' `0 k' ] * R9 t# S# H" p5 Y7 b5 V( F' ]; v: p
图1.0.6 串口助手打印信息
4 C  L) o1 }' B% q, e5 ^  此刻网络调试助手也收到CC3200发来的信息,并自动获取到了IP等信息,如图1.0.6所示。
0 c. A( H; Y; }5 D$ W5 R* N% i: M( g+ ^% }8 v# A2 E

$ `2 b; J. E  A& f图1.0.7网络调试助手收到信息3 C1 D3 @% c/ z; k

' t+ [+ h% ^; B) n4 u1 z1 [' L) |  在网络调试助手中输入一串信息,点击发送,如图1.0.7所示,此刻,串口调试助手也把CC3200收到的信息打印出来,并且发送新的一串信息,如图1.0.8所示。
5 Q1 n# j, Z( N6 c2 q9 S$ Z% U4 f" L
8 Q0 U- U- p2 R& ]0 _
- n. Q3 s: A  q$ L图1.0.8 网络调试助手发送信息+ D$ q  g  S7 P& X0 m# u/ v
; c' J7 K3 M. r1 ~- F  u
* |+ e, q* s# _* X  @6 G
图1.0.9 串口调试助手收到信息* L! t& Y. h7 d

7 U: W) ?7 t. i: k+ T6 I
; n1 b* w: A% z; g+ }. ^3 I* r* e
: u+ M/ `( ^# ~6 c9 P1 B0 \, g$ I/ n' P' S

: ?! v7 W; Q6 g7 V* [: z! O' O3 T
; L7 h3 o1 [' y3 |0 ?. f( e文件下载请点击: 【7】WiFi-UDP网络通信.pdf (694 KB, 下载次数: 0) : l5 d9 u# O; j" l( k* e
8 I0 K+ V. K% }( M/ G4 Z8 J& z6 p8 K

该用户从未签到

2#
发表于 2022-8-12 11:11 | 只看该作者
参考了  似乎很厉害的感觉
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-13 00:04 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表