MSP430单片机是美国德州仪器1996年推出的16位超低功耗混合信号处理器。
它的强大之处我就不一一介绍了,接下来我要介绍的是关于msp430单片机的程序烧写,我主要通过搜集网络上的资料解决自己在烧写程序时所遇到的问题。
1、JTAG是边界扫描技术,其在430内部有逻辑接口给JTAG使用,内部有若干个寄存器连接到了430的内部数据地址总线上,所以可以用JTAG访问430内部的所有资源,包括对FLASH的读写操作。所以可以用于对MSP430的仿真及编程。主要连接线有TMS、TCK、TDI、TDO、RST、TEST。
2、SBW是SPY-BI-WIRE,可以简称两线制JTAG,主要用SBWTCK(连接到JTAG仿真器的7脚TCK)与SBWTDIO(连接到JTAG仿真器的1脚TDO/TDI),该接口主要用于小于28脚的2系列的430单片机,因为28脚以内的2系列单片机的JTAG接口一般与IO口复用,为了给用户预留更多的IO口,才推出了SBW接口。同样SBW接口可以用于仿真器及编程器。
3、BSL是TI在对MSP430出厂时预先固化到MCU内部的一段代码,有点类似于DSP的bootloader,但又与bootloader有明显的区别,BSL只能用于对MCU内部的FLASH访问,不能对其他的资源访问,所以只能用作编程器接口。BSL通过UART协议与编程器连接通信。编程器可以发送不同的通信命令来对MCU的存储器做不同的操作。BSL的启动有些特殊,一般430复位启动时PC指针指向FFFE复位向量,但可以通过特殊的启动方式可以使MCU在启动时让PC指向BSL内部固化的程序。启动方式一般是由RST引脚与TEST(或TCK)引脚做一个稍复杂的启动逻辑后产生。BSL启动后,就可以对MCU进行访问了。
刚开始学430的时候遇到不少问题,程序烧写不了,仿真器驱动安装了不能用(有些仿真器驱动会自动安装),程序编写环境有TI的CCS IDE,还有IAR for 430。现在我们进行第一种方法烧写程序,目标板主控芯片为MSP430F149,仿真器用MSP-FET430UIF,这种仿真器支持以上三种程序烧写方式,花了我100大洋。
No.1
JTAG烧写方式
1.打开IAR for 430 软件打开之前写好的程序
2. 配置IAR,点击led-debug---->右键-->options-->如下图
配置好后点击OK,然后再编译一下
3.JTAG线连接目标板
4.点击download and debug
5.OK,成功了
最后来看一下结果:
以上是JTAG烧写方式以及在线仿真。
No.2
SBW 烧写方式,这种烧写方式是折腾我最久的一种方式,其实是开始自己有些地方自己没太搞懂,后来搞懂后发现非常简单。但是我用IAR一直没成功,我向仿真器卖家咨询,但是一直没有得到技术客户的回答,差评!差评!开始我看了他们给得手册,如下图:
我把工程参数配置(JTAG和SBW有点区别)好后,然后按照上图连接线好线。
然后就出现了下面的情况了
最后就卡在一直这里。我试图等,但是我等了一个下午都一直这样......
连接方式没错,问题出在哪里呢???
yu
于是我使用FET-Pro430软件烧写程序。
打开IAR软件,然后打开事先写好的程序。
2.配置IAR,点击led-debug---->右键-->options-->如下图
3.点击OK,然后编译,工程文件夹里面就会自动生成dujiang.d43文件
4.打开FET-Pro430软件
Setup---->connection/Device reset-->然后如下图
5.然后按照以下图选项即可:
OK!程序烧写完毕!!!点击Power ON/OFF 单片机就可以正常工作了。
卖家给我的资料上的说明是这样的
我试了都可以,
好了SBW 部分说到这里,是不是很啰嗦呀?
下面的BSL 部分就精简点。
No.3
BSL烧写方式:
1.按照下面这张表将引脚连接正确。
2.打开MSPFET下载软件
点击Tools-->Setup--.>然后如下图
点击OK,然后点击AUTO
OK!程序下载成功
谢谢!希望对学习MSP430的同学们有一点帮助吧!