项目中应用到了远端远程更新firmware功能,决定先实现BootLoader的加载。
编译环境 :CCS 6.2.0
MCU类型:Tm4C129kcpdt
TI 固件库(ti\TivaWare_C_Series-2.1.4.178\examples\boards\ek-tm4c1294xl)中提供:
app程式 : boot_demo_emac_flash(TI 固件库中提供)
boot程式 : boot_emac_flash(TI 固件库中提供)
直接进入主题,记录修改内容(app与boot程式共同修改):
- MCU型号
- 烧录器型号
完成第一二步后,编译会生成tm4c129kcpdt_startup_ccs.c 和 tm4c129kcpdt.cmd文件,记得从工程中删除,不然会导致flash中地址冲突。 - 修改Flash Addr(System memory map)
- 选择Erase Flash Range
app程式:
5. 修改lwip_init函数,添加IpAddr、NetMask、GwAddr等参数及内容
6. 回调函数SoftwareUpdateUDPReceive中修改MAC地址的定义(swupdate.c中)
Boot程式:
7. 修改uip_hostaddr及g_sSeverAddr等IP参数。
至此修改完毕,利用LM Flash下载程式成功:
wireshark抓包: