在之前测试B-U585I-IOT02A的WIFI功能时跑官方例程一直没有通过,后来经过论坛管理员联系ST的工程师很快得到答复,原来SW2只需要将BOOT拨到0,我当时没仔细看,错误以为两个拨码都要拨到0。
回头再看um2839-discovery-kit-for-iot-node-with-stm32u5-series-stmicroelectronics文档和原理图可以发现,无论是板子的丝印还是文档都已经标明拨码的2个引脚的功能。
除了BOOT SW2,另一个引脚功能为EASYLINK,如果将它拨到0难免会影响固件更新。
其实在x-wifi-emw3080b固件包里还有一个文档,文档里的图片将SW2的PIN1用红框圈起来了,非常贴心。如果能在说明里把BOOT后边回一个括号BOOT(PIN1)就更完美了。
找到问题的原因后调试WI-FI其实非常方便,首先是升级固件(我不确定是我的板子没有EMW3080固件,还是所有的板子都没有,如果能在出厂前烧好会省去一些不必要的麻烦),将SW2的BOOT拨到0,插上开发板,然后从ST官网下载x-wifi-emw3080b,找到x-wifi-emw3080b\V2.1.11\SPI\EMW3080updateV2.1.11RevC.bin(版本号可能会不同),将它复制到NOD_U585AI这个可移动磁盘上(EMW3080的固件是通过STM32U585升级的,这是一个包含了EMW3080固件的STM32U585固件),等待完成后打开串口软件准备对EMW3080的固件进行升级。
复位STM32U585,然后按一下蓝色的B3按键,等待EMW3080的固件升级完成后将BOOT拨回NC就可以正常使用WI-FI功能了。
官方的例程里提供了WI-FI的例程,我使用STM32Cube\Repository\STM32Cube_FW_U5_V1.0.0\Projects\B-U585I-IOT02A\Applications\WiFi\WiFiBasics进行测试,下载例程到STM32U585后在串口助手里就可以看到WI-FI正常工作,这是我附近的WI-FI热点,奇怪,诺基亚5110也能开热点吗?
本帖最后由 littleshrimp 于 2021-10-14 09:25 编辑大佬厉害了,先mark下。