DSP ti bootloader与在线升级

ti bootloader:SCI/SPI/CAN/I2C等特定的外设引脚,配合ti串口烧录工具(ti官网搜索controlSUITE下载安装,在ti目录下serial_flash_programmer.exe)通过PC cmd指令进行操作下载。
优点:可直接调用flashAPI(),不需额外的协议指令;
缺点:必须通过GPIO跳线使芯片进入对应的引导模式,比如CAN引导是一组电平组合,SCI引导是另外一种,而程序正常运行又是另外一种,它可以将整个芯片的所有flash擦除,然后实现编程。
在这里插入图片描述
IAP在线升级:是指用户自己开发一个bootloader驻留在芯片的flash区的某一个sector永远不被擦除,然后需要升级时,不需要进行跳线,而是可以直接通过通讯命令在应用程序层面进行处理,比如通过CAN,然后使机器停机,但MCU仍然正常运行的情况下,使程序跳转到bootloader运行,它可以把除了自己以外的所有flash擦除并编程,并在完成之后跳转回到应用程序继续运行。这个区别就在于不需要断电使MCU停止工作,而且不需要拆机跳线,因此在现场升级时非常方便。

IAP:在线应用程序烧写in application program,针对用户程序进行代码修改,需要自己写引导程序(bootloader固件);(可用作远程升级)

ISP:在线系统程序烧写in system program,更新时用户区代码停止工作,不需自己写引导程序;

ICP:在电路编程in circuit program,LPC芯片的编程方式。

IAP在线升级的重点:
固件层面有两个:一个bootloader固件,一个app固件;
其中bootloader固件为引导程序,必须放在单片机重新上电或者复位后的默认运行地址处;
app固件为用户程序,两个固件必须存放在不同的flash地址。

bootloader功能:
1.实现对app程序存储区域的数据清除,为写入新的app固件数据做准备;
2.接收CAN总线传输过来的的app固件数据,校验无误后写入app程序存储区域;
3.检测跳转标志位,有效则跳转到app程序开始处(main),无效则一直停留在bootloader程序等待;

app功能:
1.响应固件跳转命令,收到跳转命令后,跳转到bootloader下运行bootloader程序;
2.实现用户功能;

DSP上电程序运行流程:
在这里插入图片描述
DSP 一次引导流程(一般TI自带的BootLoader工具是在一次引导中完成,需要boot口高低电平配合):
在这里插入图片描述
DSP 二次引导流程:
在这里插入图片描述
在这里插入图片描述

bootloader关键技术点:

  1. cmd文件中flash地址分配;
  2. bin文件写入(注意bin文件写入的高低字节)
  3. bin文件写入区域的限制,不要覆盖boot区域;

bootloader存在问题:
生成的bin文件比实际使用的区域更大;
生成的bin文件是从使用的开始sector一直到结束的sector。

在这里插入图片描述

  • 9
    点赞
  • 118
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值