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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
CC3200AI实验教程
——疯壳·开发板系列
WIFI-UDP网络通信
6 E2 Y3 V4 c1 l! @
8 s8 k. I1 Q1 d+ S- m% }0 i

0 Z& I# J+ ~8 ?( s, n
& B. l' s1 j) H" d0 n( @  UDP是User Datagram Protocol的简称, 中文名是用户数据报协议。在网络中它与TCP协议一样用于处理数据包,与TCP不一样的是,UDP是一种无连接的协议,UDP只能是尽可能地传输到目的地,所以UDP也是具有一定的不可靠性。
% D6 Y0 F2 g2 l, @8 N6 Y! a6 W5 T( j  那么为什么还会存在UDP呢?因为在早期的网络开发中,人们发现一些简单的网络通信不需要经过TCP复杂的建立关系,而且过多的建立TCP连接,会造成很大的网络负担,而UDP协议可以相对快速的处理这些简单通信。如表1.0.1所示为UDP组成结构。
9 B7 M9 M; B& ]& z% @7 n7 a% H3 F表1.0.1 UDP的组成结构1 K0 L- }; W5 t, Y7 o# B

( t. C! }' ~$ R1 S( M9 q" X( [
" u; Y, C6 c3 U7 b& F4 d表1
$ [- c! L' v* }3 W3 _; @. X  CC3200支持多种基于WIFI的网络通信,UDP也不例外。+ ~$ y& a- ~- P! }9 \
  打开Udp_Socket_Demo,如图1.0.1所示为main函数。* s) {. `5 n) l! v3 p+ J5 g

- Y  v# R4 x$ F# m; H% X 3 q: \9 c5 s9 w% F1 ?
图1.0.1 main函数
: s" E" e. h! Z4 m  在main函数中有InitializeAppVariables该函数主要实现的是把宏定义中的UDP服务器的IP以及端口号取出,进入建立udp的就绪状态。2 I+ K! e, c: {1 v! K
  ConfigureSimpleLinkToDefaultState()函数主要是实现CC3200的接入网络部分:把CC3200设置为STA模式;并且把CC3200接入在common.h中定义好的路由器,如图1.0.2所示,为common.h中定义好的路由器SSID、秘钥以及加密方式等。
; T( C/ X! u# T5 m
0 }5 \1 l& l4 ~* T  t8 o  N- l' J9 A$ X* ~: b8 o% _) M/ q( w2 M
图1.0.2 路由器相关信息
" K  d$ ^+ t/ p  o7 n' X2 N  最重要的函数是如图1.0.2所示的BsdUdpClient(),通过该函数建立UDP。; S; l( L3 k- l1 @) x

( i, @" E; H- c; n: d$ e7 i 2 c$ f. p: J, Y9 l2 z. c
图1.0.3 BsdUdpClient()函数
% j% N3 Q+ m2 }0 j0 x# f) y  该函数会先通过函数sl_SendTo()向网络中发送疯壳的官网,然后通过函数sl_RecvFrom()进入等待接收。& P( d' m; }* k3 e/ e' s( b' h
  打开网络调试助手,然后点击打开设置协议类型为“UDP”,点击打开。把网络调试助手的“本地主机地址”和“本地主机端口”,填写到程序中定义IP以及端口号处,如图1.0.3所示(注意IP要为16进制);如图1.0.4所示,为网络调试助手打开时的画面。
- Y! ]( c" {- |7 |7 g7 K; z; ^" w  L
' P6 j/ _. l% ?, R4 [7 R; v& q! E8 |" k
图1.0.4 本地IP及端口号
1 t( m' B7 i: }" j1 r' d* }: E" H( s% e

- o' R/ y/ S5 i7 h图1.0.5 网络调试助手打开
% y4 n& s1 U  P& H  C  编译代码,打开UniFlash,下载bin文件到板子上(下载方法参考GPIO小节)。
: j; g; ^& l$ \7 b  下载完成后,打开UARTA0的“RXD”,以及“CH340G_VCC”即拨码开关拨到“ON”。7 J& t! R; a, T
  打开串口调试助手,选择相应的串口号,并且把波特率设置为115200bps,点击打开。按下板子上的复位键可看到串口助手打印如图1.0.5所示的信息。可见CC3200已经连接上了指定的路由器以及通过UDP发送了一段消息,如图1.0.6所示。
' e% H! G- G' S( ]
0 b% E2 C) t+ Y4 ^+ n + k+ l4 a5 k' p% }, o% C5 a
图1.0.6 串口助手打印信息
- F5 C/ Q  Q: o7 _  此刻网络调试助手也收到CC3200发来的信息,并自动获取到了IP等信息,如图1.0.6所示。8 H" n6 m# w# w, Q9 S
8 U0 S  o6 Q+ D4 y/ R+ c+ i
% w; C; ], y! Y2 _7 B$ P) o
图1.0.7网络调试助手收到信息
: X/ W( \. L& M6 M( M& F. ?. _& d3 t7 `2 e) ]
  在网络调试助手中输入一串信息,点击发送,如图1.0.7所示,此刻,串口调试助手也把CC3200收到的信息打印出来,并且发送新的一串信息,如图1.0.8所示。
  _. k  }( h# L' _4 N" G
7 G) Q, o5 O/ {# B 5 M/ d4 _( e  h2 V0 E  x) F4 _
图1.0.8 网络调试助手发送信息/ v! y' u0 ^1 D- i( {

1 m# g5 L1 Q& b" H2 E3 H6 b 0 o9 g9 g/ S2 D4 `  }
图1.0.9 串口调试助手收到信息
6 s" Z+ x4 j2 W. Z$ e9 [4 B- X; f. g  X" `6 _1 B4 _1 W; C* X
% t& ^+ N2 |* v8 a+ a
. a3 i7 w& d) J* ^6 f3 C
+ n, h/ ~/ G1 w( J; H) z
( c% }: \4 C7 A. \3 `3 J

6 z* g+ S3 T  N# l% |文件下载请点击: 【7】WiFi-UDP网络通信.pdf (694 KB, 下载次数: 0)
+ `3 T  ~. j. A7 d6 M  ?% \6 F( k  W0 p# }) r

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-22 02:45 , Processed in 0.125000 second(s), 27 queries , Gzip On.

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

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

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