MSP430番外——BSL介绍

本文介绍了MSP430单片机的引导加载程序(BSL)及其作用,BSL允许通过UART协议对闪存进行编程,并提供了密码保护以防止未授权访问。在RST/NMI和TEST引脚上应用特定的入口序列可以激活BSL,而JTAG接口的共享引脚功能使得在不同条件下启动BSL成为可能。同时,文章还强调了防止意外进入JTAG模式的注意事项,如正确配置引脚和使用外部终端。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.介绍

引导加载程序提供了在MSP430项目开发和更新期间对闪存进行编程的方法。它可以由程序使用UART协议发送命令激活。BSL使用户能够控制MSP430单片机的活动,并使用个人计算机或其他设备交换数据。
为了避免意外覆盖的BSL代码,该代码存储在一个安全的内存位置,ROM或特别保护的闪存。为了防止不需要的源读取,任何直接或间接允许数据读取的BSL命令都有密码保护。
为了调用引导加载程序,一个BSL入口序列必须应用到专用的引脚。在此之后,一个同步字符,后面跟着特定命令的数据帧,启动所需的函数。
1.1 与JTAG共享引脚
在RST/NMI和TEST引脚上应用适当的入口序列,会强制MSP430单片机在BSL复位向量上开始程序执行,而不是在位于地址FFFEh的复位向量上。
如果使用计算机UART接口,这两个引脚可以被RS232的DTR和RTS信号(电平转换后)的串行通信端口驱动。如果在RST/NMI上升沿TEST保持低电平,则正常用户重置向量在FFFEh。
在这里插入图片描述
当TEST引脚收到两个小型上升沿,并且 RST/NMI上升沿时TEST为高,BSL程序开始执行。这种水平的转换触发提高了BSL启动的稳定性。第一个TEST高电平时间至少维持tSBW。
TEST信号通常用于在其应用程序功能和JTAG功能之间切换。在带有BSL的设备,TEST和RST/NMI引脚也用于调用BSL。为了调用BSL, RST/NMI引脚必须配置为RST,并且在TEST引脚拉高和测试引脚上应用下两个边沿时必须保持低。在 RST/NMI释放并且TEST保持低之后BSL启动。
在这里插入图片描述
下列情况BSL不会被BSL RESET向量启动:

  • 当RST/NMI为低时,TEST引脚的上升沿少于两条
  • 在RST/NMI上升沿,TEST引脚在第二上升沿后没有保持高电平
  • JTAG控制MSP430单片机的资源
  • 电源电压VCC下降到阈值以下,执行上电复位(POR)
  • RST/NMI被配置为NMI功能(NMI位被置1)
  • 如果TCK和TMS引脚处于浮动状态,设备可能会无意中进入JTAG模式。为了避免这个问题,应用推荐的外部终端。在TCK和TMS上添加一个47k的上拉电阻和一个1-nF的下拉电容

1.2 MSP430闪存设备专用的JTAG引脚
带有专用JTAG引脚的设备使用TCK引脚而不是TEST引脚。当TCK引脚接收到两个下降沿,且在TCK低电平时RST/NMI出现上升沿,BSL程序开始执行。在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值