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

MSP430F5438A的BSL问题(续)

  我司正在开发MSP430F5438A的产品。遇到以下几点问题,请帮忙解答。

1. 430的BSL除了下载程序外,可以用来做串口通信吗?还是说只有在BSL mode下,对应的pin才能是串口的功能,

其它时候,无法用作串口功能实现与上位机通信?

2. 出于对产品的内代码的保护目的,请问430有哪些机制保证我的软件安全吗?包括不能被读取出二进制文件。

Lina Lian:

回复 xinxin li2:

xinxin li2,

关于MSP430的加密,建议参考“【经验分享】MSP430单片机常见加密总结”:

http://www.deyisupport.com/question_answer/microcontrollers/msp430/f/55/t/4274.aspx

BR,

Lina

Jack Zee:

回复 step by step:

 你好,我也在做这个bsl下载,使用的是msp430F149 这款单片机,按照官方给的“通过引导加载程序进行MSP430 编程”说明书, 我已经将前面的擦除指令, RX密码,指令执行成功, 但当我想向bsl发送TX数据块指令的时候,为什么返回的ack是A0,而不是90,这是不是代表指令发送无效?我应该如何处理?

ps:指令内容为:80140404f00f10009be0 ,十六进制,串口:E,8,1

step by step:

回复 Jack Zee:

你好,

   这段指令的内容应该是希望读取地址为0x0ff0开始的0x10个数据。但是根据F149的datasheet来看,地址0x0ff0是在ROM区。文档slau319中有描述:

The transmit data block command is used for any read access to the flash memory, RAM, or peripheral module control registers at 0000h to 01FFh.

关于读写时序,楼主可以参考下面的时序,把地址和长度参数换成自己的:

TO BSL: 80(Synchronization character sent to the BSL)FROM BSL: 90(Acknowledge from BSL)TO BSL: 80 14 04 04 00 0F 0E 00 75 E0(Send Command to read memory from 0x0F00, length 0x000E)FROM BSL: 80 00 0E 0E F2 13 40 40 00 00 00 00 00 00 02 01 01 01 C0 A2(Returned values from BSL)

Regards,

Rik

Jack Zee:

回复 step by step:

你好,谢谢你的答复

但根据你给的例子, 我也做了实验, 发送80时可以收到90,但发送 80 14 04 04 00 0F 0E 00 75 E0时,我收到的还是A0。怎么回事?

赞(0)
未经允许不得转载:TI中文支持网 » MSP430F5438A的BSL问题(续)
分享到: 更多 (0)