TI中文支持网
TI专业的中文技术问题搜集分享网站

MSP430F5529: MSP430F5529 BSL UART failed, [ACK_ERROR_MESSAGE]Unknown ACK value

Part Number:MSP430F5529Other Parts Discussed in Thread: MSP-FET, MSPBSL

描述

我在使用msp430f5529刷入固件时,Jtag接口烧断,导致无法使用Jtag,想通过BSL串口方式解锁Jtag

我了解到msp430f5529的数据手册中写到有两种BSL方式,分别是USB BSLUART BSL,如图

我在使用UART BSL过程中遇到了麻烦。

硬件连接

我以下方式MSP-FE连接自己的开发板,

Target msp430f5529 MCU   MSP-FET
VCC(3V3)         VCC_TOOL(Pin2)
GND       GND(Pin9)  
RST/NMI/SBWTDIO(Pin76) TDO/TDI(Pin1)
TEST/SBWTCK(Pin71) TCK(Pin)
P1.1 UART_TXD(Pin12)
P1.2 UART_RXD(Pin14)

连接方式参考的是这个

软件运行

然后在命令行BSL Scripter 3.4.0.1使用进行烧录,结果失败了。

命令行内容BSL-Scripter.exe script_5xx_uart.txt

script_5xx_uart.txt文件的内容是

//
//Script example 6xx UART BSL
//Device tested: MSP430F6459
//Comm Bridge used: MSP-BSL Rocket
//
//Download the blink application
//through UART BSL
//
LOG
MODE 5xx UART COM10 9600
MASS_ERASE
DELAY 2000
//gives the wrong password to
//mass erase the memory
RX_PASSWORD .\pass32_wrong.txt
RX_PASSWORD .\pass32_default.txt
RX_DATA_BLOCK .\blinkLED_f5529.txt
SET_PC 0x4400

错误提示

疑问

msp430f5529是否可以通过UART BSL进行烧录?如果可以,我该如何操作?

 这里面(MSP430Tm Flash Devices Bootloader (BSL))似乎是说msp430f5529不支持UART BSL方式,但是msp430f552x数据手册中又列出了UART BSL的方法,我很疑惑

Yale Li:

您好,MSP430F5529的BSL支持UART。

这个报错的意思是芯片没有收到你发送的内容。

你的接线有问题,你参考的是4 wire JTAG接线。在BSL模式下,正确的连接方式是:

Target msp430f5529 MCU
MSP-FET

RST/NMI/SBWTDIO(Pin76)
RST (Pin11)

TEST/SBWTCK(Pin71)
TEST/VPP (Pin8)

,

zhang fan:

按照这样连接,报错还是一样的。我在别的帖子看到过,好像5529出场自带的是USB的固件,能进入USB BSL模式,这点在我得开发板上证实了。如果自带usb固件的话是不是就无法直接进入UART BSL模式?

我的参考e2e.ti.com/…/msp430f5529-switch-between-uart-bsl-and-usb-bsl

,

Yale Li:

您好,不好意思回复的有点晚了。

是的,你说的没错,5529出场自带的的确是USB BSL,见 MSP430F552x、MSP430F551x 混合信号微控制器 datasheet (Rev. N) 的 6.5.2 UART BSL:

要进入UART BSL模式,需要烧入UART BSL的固件。在 https://www.ti.com.cn/tool/cn/MSPBSL 中下载 MSPBSL_CUSTOMBSL430 ,解压后在 MSP430BSL_1_02_00_01\Released_BSL_Images\MSP430F55xx_Family\UART BSL 路径下可以找到相应固件。

通过USB BSL也可以解锁JTAG。

script_5xx_usb.txt:

LOG
MODE 5xx USB
//gives wrong password to do
//mass erase in the memory
RX_PASSWORD pass32_wrong.txt
RX_PASSWORD pass32_default.txt
//the following line of code was added after modification
RX_DATA_BLOCK SYSBSLPE_CLEAR.txt
RX_DATA_BLOCK JTAG_UNLOCK.txt

JTAG_UNLOCK.txt:

@17FC
00 00 00 00
q

SYSBSLPE_CLEAR.txt:

@0182
00 03
q

这3个文件以及 pass32_wrong.txt、pass32_default.txt 放在同一文件夹中。

您试一下

,

Yale Li:

抱歉我忽略了一点。

由于 JTAG 签名位于受保护的 BSL 区域中,因此BSL 必须先清除 SYSBSLC 寄存器中的 SYSBSLPE 位(向地址 0182h 写入 0003h),才能向 JTAG 签名写入 00000000h。见 MSP 代码保护功能 的2.2.1 F5xx/F6xx 电子保险丝的实施方式。

相应代码我已经在原回答中添加。(在 script_5xx_usb.txt 中添加第7行注释、第8行代码;添加 SYSBSLPE_CLEAR.txt )

,

zhang fan:

好的谢谢。我想大部分问题都解决了。但是我手上的5529开发板并没有办法就如USB BSL模式,通过外部3.3V电源上拉PUR引脚时提示"未识别的USB设备",不知道哪里出了问题

,

Yale Li:

您好,不好意思回复晚了。

首先确保你的硬件连接都是正确的。见下图:

zhang fan 说:通过外部3.3V电源上拉PUR引脚时提示"未识别的USB设备"

未识别的话感觉应该是驱动没有装,你可以安装下驱动试一试。

赞(0)
未经允许不得转载:TI中文支持网 » MSP430F5529: MSP430F5529 BSL UART failed, [ACK_ERROR_MESSAGE]Unknown ACK value
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1