你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】B-U585I-IOT02A的蓝牙和WiFi的体验

[复制链接]
STMCU小助手 发布时间:2021-12-1 22:12
一款面向物联网应用的开发套件,无线连网功能是物联网开发套件的必备。

" n5 o- g) g, j  }' m) Z

2 q4 b1 M- V$ t" N0 h
STM32U5是意法半导体公司新出的一款基于M33内核开发的专为物联网定制的MCU,所以在进行基本熟悉之后,应该体验一下B-U585I-IOT02A的无线部分,这几天一直在学习B-U585I-IOT02A的蓝牙部分(采用ST推出的STM32WB无线蓝牙模块)和WiFi通讯方面(WiFi模块采用的是MXCHIP旗下的EMW3080B)。STM32U5与其通讯均采用的是串行通信的方式进行通信的,(蓝牙采用的是UART,WiFi采用的是SPI),按理来说不会有啥问题,巧的是,我就遇到了这个麻烦,今天就说一说,给大家填填坑。

' g0 I0 }8 K& T4 A# D' ~
首先说说蓝牙部分,之前蓝牙部分ST的官方说:
. |# w( y. O0 c
HIK(XD)AA_N7FTXW4X0V5.png
, R; Z) K; S9 J( o2 `9 z. b
按我的理解就是原来蓝牙不好使,是因为蓝牙模块里没有这个固件(stm32wb5x_BLE_Stack_full_fw.bin)烧录这个固件就可以了,我烧录之后,发现蓝牙的状态不对,后来看官方邮件里还有个附件,所以又在STM32WB中烧录个BLE-AT-Server,这俩都烧录到STM32WB中,但是发现蓝牙的状态还是不对,后来小密好像也是这么操作的,他竟然成功了,我觉得这个STM32WB是在针对我。接下来就是U5提供的蓝牙例程(BLE_AT_Client),发现官方提供的例程是IAR的,好像采用的版本还很高,我用IAR8.3发现编译之后会出现个错误。如图所示:
7 ^; O! Q' ]* O1 d  e
~Y7EUDAUU3A`BI~D3A6F2.png
ND869~LSC9]_(9Q02[)L1{H.png
" j" F; W1 {/ a) S
觉得是IAR8.3的这个版本好像不支持U5的M33内核,如果下载更高版本的IAR,我好像也没有钱买license,所以还是选择移植到MDK吧,移植过程不是很难,编译完成0error,0 Warning,非常开心,但是后来让我意想不到的是,编译出来的固件,不能直接用,只有仿真的时候,全速运行点击两下,才能运行到printf这里,然后就跑飞了,也不知道哪里移植出现了问题。
* v$ H0 o" ?4 @7 {
()HN@LO36AH_OC4D9FD]MOT.png

, ]' N7 ]% r. n* E9 Q* r7 H
后来也是小密移植了一次BLE之后,神奇的好用了,那估计是我移植有问题吧,如果官方有时间,可以帮我解答一下,我这个问题应该怎么解?

; F# S- x5 h+ ~, C% \' `
好,蓝牙这块就到这里吧,挺愁的,鼓捣了蓝牙三天了,也没啥好成果,最后,竟然还指导兄弟们鼓捣成功了,我也算是这三天没白熬夜,算是心安了。
. Y! C: x& u" B+ s$ Q
接下来说说WiFi吧,WiFi我之前没看上,因为我看官方都有截图操作,说真的没有什么技术含量,那既然张有理同学说测测这块吧,那我就测测吧,不测不知道,一测吓一跳,啥玩意儿啊,处处是坑,WiFi的话首先把家中WiFi的名字和密码编写到程序之中,然后编译程序输出固件烧录到U5之中,神奇的事情来了,提示我EMW3080B的固件好像有点儿老,不能用,这就来学习新技能吧,把EMW3080B升级一波,首先按照官方操作,把EMW3080B的BOOT推上去,让其进入到烧录固件模式。

: ^) h5 M* V" M( c* V5 o/ @) M
DL[RM400X1YTw~9N)D.png
+ o: _. O; c$ p# }
接下来烧录程序吧,好吧,我也不会,因为官方截的图有点儿让我懵逼,后来去搜了一下EMW3080B,原来是庆科的模块,好吧,去搜一下怎么下载固件就好啦。

+ J+ s: y  Z2 ]7 ~, ^
在官方社区看他们写的帖子用zadig_2.2,把jlink转成libusbk这个东西,然后又有用串口烧录的GuduYL_MXCHIP_1.0.10.0265_x64_Release,巧的是我们这款U5开发板只能使用SWD接口下载,因为没有预留出来串口,后来无意之间查到了一篇帖子,他在玩EMW3080B的时候,不经意的一个操作,让我找到了它——mflash,这个玩意儿好啊,非常简洁,容易上手。这里将EMW3080B的固件奉上。
9 i1 i2 K0 j- D/ F2 ?

4 e) B1 q3 b# y, F8 X/ E) @
OIY77Z`Q~}Z$U9JWN]9}_]K.png

' e$ a+ N8 ?. _  p, D7 Y; x( N# {# M
下图是使用jlink烧录EMW3080B的成功截图

; z0 H1 `$ Y* ~& S2 ?; C% I
7310S14~6)2S3K69DX_QB%Q.png
) B! c, n5 f, ?
烧录完成之后,发现重新将U5复位,属实得到了“救赎”,可以正常打印串口数据了,而且可以扫描WiFi信号了。如图所示。

3 g6 y2 h4 P- Q. w$ B' d) _
@0O@D6LI9RO((ASPYALDT[L.png

. V, w' a3 q' M4 @/ P. ^  N) u6 a, n
之后,我想使用一下ping,又发现了好玩的事情,我使用ping命令的时候,提示我没有找到ping的命令,我心里想:“怎么可能,这玩意儿这么坑么,通过程序都可以看到有ping操作的啊”,哎,抱着不服就干的心态,我换了一个串口,使用了SSCOM_v5.13.1。

+ ?1 _+ S, g. o" E9 [" X
X_A4V5)BFSS%~IVJJY8YUPB.png
5 K5 |0 V" ]* ?5 m& @$ V
果然,它也没惯着我,还是ping不好用,后来不知道谁走漏了风声,让技术高知道了我们遇到了难处,然后技术高投来了橄榄枝,用了他的串口工具之后,咦,好用了,还是专业的人干专业的事儿啊。
( r! d$ J, z7 H9 d3 e2 k8 h
G}Q0(3)3@EAT~V0CRN`YD@Q.png

$ e, E# Q! }' ]% Y4 O/ g
总结一下这几天对U5的“恩怨情仇”吧,属实,板子是好板子,U也是好U,接口非常丰富。而且性能也非常强劲。
( [6 f( v, A7 q: x/ k$ T
X{WPD)UC]X2DDA4Z8Z9KS(X.png
3 Y4 k4 S, M+ D8 `2 E2 X- K$ |- Z
但是由于是新出的,可能所谓的“坑”比较多,其实说是坑,还是对B-U585I-IOT02A不是很熟悉,不过好在有各位好友的帮助,还是比较顺利的,在这里感谢小密,技术高的技术支持(PS:艾特不上你们,就口头表扬一下吧,哈哈哈),还有张有理“兄弟”的友情熬夜,评测也算是到时间了,最后,感谢ST官方的评测活动,体验非常好,接触到了ST的新产品,非常奈斯!!!

. `8 g. W! @$ g1 G' H! A; Z
45UMVLUC8KIY~QFG5J5~{8C.png
收藏 评论0 发布时间:2021-12-1 22:12

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版