3、在手表上执行 rFBSL 程序之后,手表侧会尝试和 PC 侧建立无线连接,连接成功后,会从 PC 侧下载那个名为 ram_based_updater.txt 的文件(这个文件只要放在和 Control Center 程序同一个目录下即可,系统自己已经准备好了,不需要手动指定)到手表的 RAM 中,成功下载后,就执行 RAM 中新下载的这个程序,这个程序会再次尝试连接 PC 侧来获取真正的更新镜像文件,如果连接成功,flash 就会执行块删除,从 0x8000 到 0xFFFF 的32KB的 flash 区域全部被删除。然后它会开始接收数据包并且写入到 flash 中,写入时会检查每个 word 是否写入成功,写 falsh 时手表的LCD屏幕右上角会显示一个百分比进度,从 0% 开始到 100% 结束。
4、成功写入固件文件后,手表会重启,所有的日期时间都会被重置为初始值。
手册原文描述如下:
3.6.3.2 Detailed Description of the Wireless Update Feature
To invoke the wireless update procedure, the main application must call the start of the wireless updater,
which is located at address 0x1000. Therefore, the sports watch and data logger projects contain an extra
menu item called "rFbSL". Once activated, it checks if the battery level of the watch is sufficient to start a
wireless update and then calls address 0x1000. At this point the user application is no longer running.
NOTE: Whenever the wireless update is activated on the watch, it returns to the main application
with a reset, regardless if an update was performed or not. Time, data, alarm and other
RAM-based data is lost.
After invoking the wireless update (rFbSL), the watch tries to link to a listening RF access point and start
the update procedure. If the link is successful, the watch downloads the RAM based updater into the RAM
of the CC430. Once finished, this software then tries to link again with the RF access point to download
the actual update image. If this link is successful, a mass flash erase is performed, which erases all the
main memory flash (0x8000 to 0xFFFF). It then start receiving all the data packets and writes them to
flash, checking if each word was written successfully. If the link is not successful, the watch generates a
reset to restart the user application. During the download of the update image, a percentage indicator
appears on the watch. "dOnE" appears and a reset is generated to start the new user application that has
just been written to flash.
|