手头上有一块Tiva LanuchPad的板子,这两天一直在调试BootLoader的功能。参考TivaWare_C_Series-2.1.0.12573\examples\boards\dk-tm4c123g下的boot_serial,boot_demo1,boot_demo2进行了实现,现有如下问题:
1、通过CCS把boot_serial和boot_demo1按先后顺序下载到芯片上,可以通过LM Flash Progarmmer进行串口更新,但是我把系统断电或复位后,就无法进行串口更新了,不知道这是为什么。为了看到程序的状态,我在boot_serial中启用了BL_HW_INIT_FN_HOOK宏,编写了MyHwInitFunc这个函数,让LauchPad上Led点亮延迟熄灭;在boot_demo1在点亮了另外一只LED,把这两个程序先后下载后,均运行正常,灯正常显示,串口可更新,但断电后上电没有任何灯点亮。这时候我再烧写一变boot_demo1,boot_demo1程序上的灯点亮了,串口又能更新,说明boot_serial没有被刷写掉。按照手册,我认为系统上电后应调用boot_serial,由于这时不需要更新,就会去运行boot_demo1,然后由boot_demo1将系统强制进入到更新状态。不知道我这样理解是否正确,刷写boot_demo1的flash偏移地址是0x00002800。
2、能够自己编写一个类似LM Flash Progarmmer的程序,ti是否有相关的参考程序。
3、boot_serial这类程序如何调试,我看英文论坛上有说明,但尝试后不正确。
谢谢!其实前面发了一个帖子,修改了一下,居然要去找版主认证,第一次看到论坛有这样设定。再重新发了一遍。