MSP430无论是仿真还是烧写程序,一般可以通过:JTAG、SBW、BSL接口进行。

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

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

3、BSL是TI在430出厂时预先固化到MCU内部的一段代码,该代码用户不可读写,这有点类似与DSP的bootloader,但又与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的程序不就安全了吗?所以又引入了熔丝位,熔丝位只存在于JTAG、SBW接口逻辑内。当熔丝烧断时(物理破坏,且不可恢复)JTAG与SBW的访问将被禁止,此时只有BSL可以访问。而通过BSL对MCU的访问是需要32个字节的密码,该密码就是用户代码的中断向量表。现在国内有些解密厂商宣传能够解密430,原理是通过切片剥离的方法把熔丝位连接上,再通过JTAG或SBW接口读出目标代码。而BSL则无破解的报告。
仿真器的型号一般支持JTAG、SBW接口,按照其与主机的连接方式分为UIF(USB接口,支持JTAG、SBW),PIF(并口,只支持JTAG),EZ430(只支持SBW模式,目前还不支持F5XX系列)。

编程器型号有GANG430(RS232串行接口,串口、1拖8,支持JTAG、SBW,不支持BSL),PRGS430-IIIA多功能编程器(支持JTAG、SBW、BSL),这些编程器都可以做离线烧写,并且支持烧写熔丝,即脱离计算机来对目标板烧写,其中PRGS编程器还支持序列号烧写方式。另还有专门的BSL编程器,只支持BSL接口,不支持烧写熔丝。
     仿真器既然可以访问到430内部的所有资源,当然也可以用做编程器使用,除了使用IAR用源代码烧写的方式外,还可以通过专业的软件来编程,这类软件有MSPFET、FET-PRO430等。

TI公司在JTAG、SBW、BSL方面提供了API操作函数,可以利用该函数来设计我们的编程器和仿真器。目前仿真器的技术较复杂,而且是由IAR软件来负责升级。编程器在出厂时事先已经编程了一段Monitor代码,利用这段代码可以实现在线升级,无论是GANG430编程器还是PRGS编程器均有此功能。

MSP430编程器仿真器JTAG、SBW、BSL接口的区别相关推荐

  1. 仿真器+编程器+实验板与开发板的区别

    目前市面上出现了各种各样针对单片机爱好者的实验板.编程器和仿真器,其售价一般相对比较低廉,这给单片机爱好者提供了有利的学习途径.但是大多只具备单一的功能,必须配套使用.假如购买了一套学习板,那肯定还要 ...

  2. PEEDI——JTAG/BDM/SWD仿真器和闪存编程器

    PEEDI 是嵌入式在线仿真器的一个解决方案,它允许用户通过JTAG/BDM/SWD 接口在 ARM, CORTEX-M3, CORTEX-A8,Power Architecture, ColdFir ...

  3. 什么是JTAG和SWD接口协议,和各类仿真器

    一.俩个协议 JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试.现在多数的高级器件都支持JTAG协 ...

  4. 硬件设备 之一 详解 JTAG、SWD 接口

      JTAG 和 SWD 在嵌入式开发中可以说是随处可见,他们通常被用来配合 J-Link .ULINK.ST-LINK 等仿真器在线调试嵌入式程序.此外,还有飞思卡尔芯片中的 Background ...

  5. siliconc8051f Silicon C8051F编程器使用出错解决办法

    siliconc8051f Silicon C8051F编程器使用出错解决办法 1.根据下图先选择接口类型,通过usb连接电脑就选USB系列,同理选RS232系列. 2.载入要烧录的hex文件 3. ...

  6. ELINK离线编程器常见问题

    Q1 编程器是否可以接JTAG JTAG接口已经包含SWD接口引脚,按以下引脚对应接线即可: SWDIO->目标板JTAG 的JTMS SWCLK->目标板JTAG 的JTCK Q2 PC ...

  7. USBISP/USBasp编程器给Atmega32U4下载Arduino bootloader引导程序

    用USBISP/USBasp编程器给ATmega32U4下载Arduino bootloader引导程序 ATmega32U4 bootloader引导程序是什么 引导程序下载接口与连接 配置熔丝位与 ...

  8. EEPW单片机C语言程序设计,基于CH340T的STC89C52RC编程器设计

    2.3 系统原理图 原理图如图2 所示. 图中,USB 接口P1 除用于数据传输外,还经过LM7805 稳压后为CH340T 芯片和单片机和其他部件供电,当使用5V 工作电压时,CH340 芯片的VC ...

  9. ch341a编程和ttl刷机区别_土豪金CH341a编程器 开箱晒物

    土豪金CH341a编程器 开箱晒物 2019-07-20 11:00:00 25点赞 119收藏 7评论 你是AMD Yes党?还是intel和NVIDIA的忠实簇拥呢?最新一届#装机大师赛#开始啦! ...

  10. 润飞rf1800支持解密吗_RF-3148USB,北京润飞编程器

    RF-3148USB全驱动智能通用编程器汇集了鑫润飞十余年设计研发之经验,历经二年精心开发完成.该产品具备各类器件编程所需的全部驱动资源,包括48路供程控电压.烧写程控电压.程控I/O信号.接地.边沿 ...

最新文章

  1. 命令行的全文搜索工具--ack
  2. putty修改字体配色
  3. python编程语言的优缺点-程序员千万不要入错行!常见的AI编程语言优缺点比较...
  4. 【Java】 剑指offer(28) 对称的二叉树
  5. python xgboost用法_XGBoost类库使用小结
  6. cocos2dx的图片载入
  7. JDK1.8中的Stream详解
  8. asterisk 配置 mysql_Asterisk的配置详解
  9. 异步非阻塞_细说同步异步、阻塞非阻塞
  10. Nginx的应用之动静分离
  11. PREV-52 小数第n位 (大数)
  12. 伴随矩阵例题_§6伴随矩阵及练习题.ppt
  13. 金蝶K3案例教程存货核算后台配置
  14. 三维导热问题的ADI-TDMA算法
  15. php中流行的rpc框架详解
  16. 创建区块计算次数_区块链计算的四个阶段
  17. 使用React,Twilio和Cosmic JS构建约会调度程序
  18. 手把手第一篇:写出第一行 Hello World
  19. 绿色专利数据集 1985-2020年上市公司绿色专利申请获得授权量数据 2011-2019地级市绿色专利数据
  20. linux mdadm命令详解

热门文章

  1. 配备透明触摸屏 看3D全息投影概念手机
  2. 海康威视java研发一面
  3. 我亦无他,唯手熟尔:Verilog基本语法目录
  4. 实验三-RIPv2基本配置实验
  5. 二进制堆的C++实现及其在机器调度(LPT)上的简单应用
  6. 道路密度网arcgis
  7. vs2019开发android so库
  8. Android应用性能剖析全攻略
  9. keras UserWarning: Discrepancy between trainable weights and collected trainable weigh...
  10. 7-5 jmu-Java-03面向对象基础-05-覆盖 (20 分)