二月 26, 2020
03:07 AM
Hi,
1.请问wiced module programer工具里用到的WRITE_RAM写的地址和OTA功能写的地址是一样的吗?
2. 我想共用OTA里代码的功能(OTA最终也就是调用fw_upgrade_write_mem)来实现通过uart来更新蓝牙固件(MCU与蓝牙的hci uart链接),是否可行?也就是要自己写一下hci的自定义命令,对吧
已解决! 转到解答。
1 解答
三月 02, 2020
08:45 PM
Hi,
- wiced module programmer的烧写流程和ClientControl的流程一致,但和OTA功能的流程不一样。
- fw_upgrade_write_mem和write_mem命令是不一样的,前者是调用fw_upgrade_lib包的不可见函数,并最终调用WICED HCI自身的write_mem命令。
您可以通过uart来更新蓝牙固件,只需要在接收到OTA固件包后调用wiced_ota_fw_upgrade_read_handler,wiced_ota_fw_upgrade_write_handler等函数触发OTA流程自有的事件即可。无需自己写HCI命令。
请参考OTA指导手册的4.6-4.10章节。再次强调无需自己写HCI自定义命令,系统函数有封装层,可在封装层操作,无需直接操作底层。
<<<<<<<<<<<<<>>>>>>>>>>>>>
Sincere regards from C. L.
<<<<<<<<<<<<<>>>>>>>>>>>>>
3 回复数
三月 02, 2020
08:45 PM
Hi,
- wiced module programmer的烧写流程和ClientControl的流程一致,但和OTA功能的流程不一样。
- fw_upgrade_write_mem和write_mem命令是不一样的,前者是调用fw_upgrade_lib包的不可见函数,并最终调用WICED HCI自身的write_mem命令。
您可以通过uart来更新蓝牙固件,只需要在接收到OTA固件包后调用wiced_ota_fw_upgrade_read_handler,wiced_ota_fw_upgrade_write_handler等函数触发OTA流程自有的事件即可。无需自己写HCI命令。
请参考OTA指导手册的4.6-4.10章节。再次强调无需自己写HCI自定义命令,系统函数有封装层,可在封装层操作,无需直接操作底层。
<<<<<<<<<<<<<>>>>>>>>>>>>>
Sincere regards from C. L.
<<<<<<<<<<<<<>>>>>>>>>>>>>
三月 10, 2020
11:46 PM
fw_upgrade_write_mem和write_mem命令是不一样的,前者是调用fw_upgrade_lib包的不可见函数,并最终调用WICED HCI自身的write_mem命令。
我明白中间过程肯定是不一样的。我的意思是fw_upgrade_write_mem最终是调用的wiced_hal_sflash_write接口函数,这个接口函数和WRITE_RAM都是写flash吧?只要地址都填写的一样,那么都应该是写flash的作用,应该没有区别?
三月 11, 2020
02:07 AM
可能是这样。
具体烦请您自行测试一下。
<<<<<<<<<<<<<>>>>>>>>>>>>>
Sincere regards from C. L.
<<<<<<<<<<<<<>>>>>>>>>>>>>