如何使用BSL方式给MSP 单片机烧录程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何使用BSL方式给MSP430单片机烧录程序
一,使用两个软件:IAR(EW430)和MSP430BSL.exe
二,IAR软件用于编程和编译;BSL软件负责载入烧录。三,在IAR中编程操作:
IAR Systems是全球领先的嵌入式系统开发工具和服务的供应商。公司成立于1983年,迄今已有27年,提供的产品和服务涉及到嵌入式系统的设计、开发和测试的每一个阶段,包括:带有C/C++编译器和调试器的集成开发环境(IDE)、实时操作系统和中间件、开发套件、硬件仿真器以及状态机建模工具。
国内普及的MSP430开发软件种内不多,主要有IAR公司的Embedded Workbench for MSP430(简称为EW430)和AQ430。
目前IAR的用户居多。IAR EW430软件提供了工程管理,程序编辑,代码下载,调试等所有功能。并且软件界面和操作方法与IAR EW for ARM等开发软件一致。因此,学会了IAR EW430,就可以很顺利地过渡到另一种新处理器的开发工作。
IAR新建工程步骤
Step1:选择主菜单的File >New>Workspace命令,然后开启一个空白工作区窗口
Step2:选择主菜单Project>Create New Project>选择Empty project。点击OK。最好新建一个文件夹,用于放置所有的生成文件。选择保存路径后,点击保存,新工程建立完毕
Step3:file>new>file>编辑代码>save>文件名可以自己起,但后面一定要加 ”.c” ,保存为C文件
Step4: 右击工程名,将写好的程序添加进去Add>Add Files,也可以用Add>Add“main.c”添加入工程。
Step5: 右击工程名,点击Option>General Options>Device>选择MSP430F149
Step6: 继续设置Linker>Output>文件名.txt(这步很关键)>fomat>
选other。
Step7: 上述步骤全部设置好以后保存,点击“make”对程序进行编译,如有错误检查修改。如没有进行下面步骤。
四,打开MSP430BSL.exe
对于MSP430来说,无论仿真还是烧写程序一般可以通过:JTAG、SBW、BSL接口进行。JTAG、SBW接口可以用于仿真接口,BSL接口不能用于仿真。而编程器则三种接口都支持。
所以并不能说JTAG只支持仿真不支持编程,这是概念错误,JTAG 仅仅是一种接口协议而已。
下面简单描述一下三种接口的区别:
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进行访问了。
一般的MCU都有代码加密功能,430是如何实现的呢?外部对430内部的代码读写只能通过上述的三种方式,所以又引入了熔丝位,熔丝位只存在于JTAG、SBW接口逻辑内。BSL内部没有熔丝。当熔丝烧断时(物理破坏,且不可恢复)JTAG与SBW的访问将被禁止,此时只有BSL可以访问。而通过BSL对MCU的访问是需要32个字节的密码,该密码就是用户代码的中断向量表。所以430的加密系统到目前为止尚无被解密的报告。
仿真器的型号一般有UIF(USB接口,支持JTAG、SBW)、PIF (并口,只支持JTAG)、EZ430(USB接口的,只支持SBW模式)。专业编程器有GANG430(串口、一拖8个,支持JTAG、SBW,不支持BSL);多功能编程器(JTAG、SBW、BSL)。这些编程器都可以做离线烧写,即脱离计算机来对目标板烧写。
BSL软件中的操作步骤
Step:打开软件后>装载烧录文件找上述步骤6中生成的.txt文件,右侧串口号选com3>点“执行”按钮,此时要保证BSL下载线连接到开发板和电脑,并且开发板电源打开。
至此,编程与烧录完成,程序已在单片机中运行。