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

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

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

" o: m) w2 Y3 D- q) g
% N8 R; q3 |! R
STM32U5是意法半导体公司新出的一款基于M33内核开发的专为物联网定制的MCU,所以在进行基本熟悉之后,应该体验一下B-U585I-IOT02A的无线部分,这几天一直在学习B-U585I-IOT02A的蓝牙部分(采用ST推出的STM32WB无线蓝牙模块)和WiFi通讯方面(WiFi模块采用的是MXCHIP旗下的EMW3080B)。STM32U5与其通讯均采用的是串行通信的方式进行通信的,(蓝牙采用的是UART,WiFi采用的是SPI),按理来说不会有啥问题,巧的是,我就遇到了这个麻烦,今天就说一说,给大家填填坑。
6 D. x: _9 a* A+ ~1 N0 |
首先说说蓝牙部分,之前蓝牙部分ST的官方说:
: f; g( v. N4 X
HIK(XD)AA_N7FTXW4X0V5.png

, D$ A/ F5 f& [# ~1 _$ Q1 m
按我的理解就是原来蓝牙不好使,是因为蓝牙模块里没有这个固件(stm32wb5x_BLE_Stack_full_fw.bin)烧录这个固件就可以了,我烧录之后,发现蓝牙的状态不对,后来看官方邮件里还有个附件,所以又在STM32WB中烧录个BLE-AT-Server,这俩都烧录到STM32WB中,但是发现蓝牙的状态还是不对,后来小密好像也是这么操作的,他竟然成功了,我觉得这个STM32WB是在针对我。接下来就是U5提供的蓝牙例程(BLE_AT_Client),发现官方提供的例程是IAR的,好像采用的版本还很高,我用IAR8.3发现编译之后会出现个错误。如图所示:

2 D! |$ z& Y- h+ Z
~Y7EUDAUU3A`BI~D3A6F2.png
ND869~LSC9]_(9Q02[)L1{H.png
% Z  o1 u( W0 J! ?* B0 q" A: R3 ^
觉得是IAR8.3的这个版本好像不支持U5的M33内核,如果下载更高版本的IAR,我好像也没有钱买license,所以还是选择移植到MDK吧,移植过程不是很难,编译完成0error,0 Warning,非常开心,但是后来让我意想不到的是,编译出来的固件,不能直接用,只有仿真的时候,全速运行点击两下,才能运行到printf这里,然后就跑飞了,也不知道哪里移植出现了问题。
- y( P+ N  u2 ~$ q5 X& \- i
()HN@LO36AH_OC4D9FD]MOT.png

6 ^' V% E9 ^8 Q1 i
后来也是小密移植了一次BLE之后,神奇的好用了,那估计是我移植有问题吧,如果官方有时间,可以帮我解答一下,我这个问题应该怎么解?
2 Y/ L2 o+ X% T% o$ {2 @; E9 t
好,蓝牙这块就到这里吧,挺愁的,鼓捣了蓝牙三天了,也没啥好成果,最后,竟然还指导兄弟们鼓捣成功了,我也算是这三天没白熬夜,算是心安了。
7 w! V# O7 L4 x
接下来说说WiFi吧,WiFi我之前没看上,因为我看官方都有截图操作,说真的没有什么技术含量,那既然张有理同学说测测这块吧,那我就测测吧,不测不知道,一测吓一跳,啥玩意儿啊,处处是坑,WiFi的话首先把家中WiFi的名字和密码编写到程序之中,然后编译程序输出固件烧录到U5之中,神奇的事情来了,提示我EMW3080B的固件好像有点儿老,不能用,这就来学习新技能吧,把EMW3080B升级一波,首先按照官方操作,把EMW3080B的BOOT推上去,让其进入到烧录固件模式。

; G! ?- d$ X4 ~- W' U
DL[RM400X1YTw~9N)D.png
! I$ U! [: b6 f& O+ [, p3 [; `
接下来烧录程序吧,好吧,我也不会,因为官方截的图有点儿让我懵逼,后来去搜了一下EMW3080B,原来是庆科的模块,好吧,去搜一下怎么下载固件就好啦。
. g. C0 V6 {$ E6 |
在官方社区看他们写的帖子用zadig_2.2,把jlink转成libusbk这个东西,然后又有用串口烧录的GuduYL_MXCHIP_1.0.10.0265_x64_Release,巧的是我们这款U5开发板只能使用SWD接口下载,因为没有预留出来串口,后来无意之间查到了一篇帖子,他在玩EMW3080B的时候,不经意的一个操作,让我找到了它——mflash,这个玩意儿好啊,非常简洁,容易上手。这里将EMW3080B的固件奉上。
- y9 m9 F( r6 i# N0 d

; f" R$ ], X8 ?/ [/ i
OIY77Z`Q~}Z$U9JWN]9}_]K.png

5 j9 m! j6 C' O5 Z" w, t% c/ }& B
下图是使用jlink烧录EMW3080B的成功截图

3 {+ \7 ?/ A3 V/ ]" {2 v; n; D! `
7310S14~6)2S3K69DX_QB%Q.png
0 \0 e" E1 u; R
烧录完成之后,发现重新将U5复位,属实得到了“救赎”,可以正常打印串口数据了,而且可以扫描WiFi信号了。如图所示。

" k7 ^& F7 s) n6 m1 X! {8 D
@0O@D6LI9RO((ASPYALDT[L.png

3 B3 l# x" s" ?
之后,我想使用一下ping,又发现了好玩的事情,我使用ping命令的时候,提示我没有找到ping的命令,我心里想:“怎么可能,这玩意儿这么坑么,通过程序都可以看到有ping操作的啊”,哎,抱着不服就干的心态,我换了一个串口,使用了SSCOM_v5.13.1。
$ z, \, E: }  |) M5 j0 d
X_A4V5)BFSS%~IVJJY8YUPB.png
# g! p9 n. J; u* S$ X- h" z
果然,它也没惯着我,还是ping不好用,后来不知道谁走漏了风声,让技术高知道了我们遇到了难处,然后技术高投来了橄榄枝,用了他的串口工具之后,咦,好用了,还是专业的人干专业的事儿啊。

( v. i8 \: s" K$ N( p$ k  q
G}Q0(3)3@EAT~V0CRN`YD@Q.png

: X+ g8 a! e$ z+ X( w2 ]. U* _
总结一下这几天对U5的“恩怨情仇”吧,属实,板子是好板子,U也是好U,接口非常丰富。而且性能也非常强劲。
3 Y& G3 q! f7 C5 O2 |
X{WPD)UC]X2DDA4Z8Z9KS(X.png
2 ?7 ^5 W9 u9 e- `" G& E! D
但是由于是新出的,可能所谓的“坑”比较多,其实说是坑,还是对B-U585I-IOT02A不是很熟悉,不过好在有各位好友的帮助,还是比较顺利的,在这里感谢小密,技术高的技术支持(PS:艾特不上你们,就口头表扬一下吧,哈哈哈),还有张有理“兄弟”的友情熬夜,评测也算是到时间了,最后,感谢ST官方的评测活动,体验非常好,接触到了ST的新产品,非常奈斯!!!

& k% X3 ?' J! R2 t8 d7 t0 k
45UMVLUC8KIY~QFG5J5~{8C.png
赞 收藏 评论0 发布时间:2021-12-1 22:12

举报

0个回答

所属标签

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版