打印

【TI FAQ】+MSP430开发工具仿真器、编程器的问题

[复制链接]
1160|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
阳光豆苗|  楼主 | 2014-9-22 16:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
FAQ 标题:MSP430开发工具仿真器、编程器的问题


FAQ 正文:MSP430无论是仿真还是烧写程序,一般可以通过:JTAGSBWBSL接口进行。

1JTAG是利用边界扫描技术,在430内部有逻辑接口给JTAG使用,内部有若干个寄存器连接到了430内部数据地址总线上,所以可以访问到430的所有资源,包括全地址FLASHRAM及各种寄存器。可以用于对430的仿真和编程,主要连接线有TMSTCKTDITDO430还需要另两条线路RSTTEST来启动JTAG命令序列。


2SBWSPY-BI-WIRE,可以简称为两线制JTAG,主要有SBWTCK(连接到JTAG接口的7TCK)SBWTDIO(连接到JTAG接口的1TDO/TDI),该接口主要用于小于28脚的2系列单片机,因为28脚以内单片机的JTAG一般与IO口复用,为了给用于留有更多的IO资源,才推出SBW接口。SBWJTAG一样可以访问到430内部的所有资源。

注:目前MSP430F5XX系列中也有SBW接口,原理同2系列的SBW


3BSLTI430出厂时预先固化到MCU内部的一段代码,该代码用户不可读写,这有点类似与DSPbootloader,但又与bootloader有明显的区别,BSL只能用于对MCU内部的FLASH访问,不能对其他的资源访问,所以只能用作编程器接口。BSL通过UART协议与编程器连接通信。编程器可以发送不同的通信命令来对MCU的存储器做不同的操作,可以把这种方式称为BSL接口。


BSL代码的启动有些特殊,一般430复位启动时PC指针指向FFFE复位向量,但可以通过特殊的启动方式可以使MCU在启动时让PC指向BSL内部固化的程序。这种特殊的启动方式一般是由RST引脚与TEST(TCK)引脚做一个稍复杂的启动逻辑后产生。BSL启动后,就可以通过预先定义好的UART协议命令对MCU进行读写访问了。


4、一般的MCU都有代码加密功能,430是如何实现的呢?外部对430内部的代码读写只能通过上述的三种方式,只要把这三种方式都堵上,430的程序不就安全了吗?所以又引入了熔丝位,熔丝位只存在于JTAGSBW接口逻辑内。当熔丝烧断时(物理破坏,且不可恢复)JTAGSBW的访问将被禁止,此时只有BSL可以访问。而通过BSLMCU的访问是需要32个字节的密码,该密码就是用户代码的中断向量表。现在国内有些解密厂商宣传能够解密430,原理是通过切片剥离的方法把熔丝位连接上,再通过JTAGSBW接口读出目标代码。而BSL则无**的报告。
仿真器的型号一般支持JTAGSBW接口,按照其与主机的连接方式分为UIF(USB接口,支持JTAGSBW)PIF(并口,只支持JTAG),EZ430(只支持SBW模式,目前还不支持F5XX系列)


编程器型号有GANG430(RS232串行接口,串口、18,支持JTAGSBW,不支持BSL)PRGS430-IIIA多功能编程器(支持JTAGSBWBSL),这些编程器都可以做离线烧写,并且支持烧写熔丝,即脱离计算机来对目标板烧写,其中PRGS编程器还支持序列号烧写方式。另还有专门的BSL编程器,只支持BSL接口,不支持烧写熔丝。


仿真器既然可以访问到430内部的所有资源,当然也可以用做编程器使用,除了使用IAR用源代码烧写的方式外,还可以通过专业的软件来编程,这类软件有MSPFETFET-PRO430等。
TI公司在JTAGSBWBSL方面提供了API操作函数,可以利用该函数来设计我们的编程器和仿真器。目前仿真器的技术较复杂,而且是由IAR软件来负责升级。编程器在出厂时事先已经编程了一段Monitor代码,利用这段代码可以实现在线升级,无论是GANG430编程器还是PRGS编程器均有此功能。


工具功能表:
名称
下载程序
JTAG接口
SBW接口
BSL接口
烧断熔丝
离线编程
PIF-并口仿真器
UIFUSB接口仿真器
GANG430编程器
PRGS编程器
BSL编程器
编程器发展及支持情况:
编程器名称
与主机连接方式
未来发展
技术支持情况
GANG430
RS232串行口
RS232,保留不改变
TI支持
PRGS编程器
RS232串行口
USB接口
技术部支持
BSL编程器
标准9RS232串行口
USB接口
技术部支持


相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

94

主题

469

帖子

8

粉丝