This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSP430F248:需要使用引导程序来改变 MSP4320F248固件

Guru**** 2391415 points
Other Parts Discussed in Thread: MSP430F2481

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/828159/msp430f248-need-to-change-the-msp4320f248-firmware-using-the-boot-strap

器件型号:MSP430F248

大家好、

我们的客户希望 使用引导程序更改 MSP4320F248固件。
您是否有使用 Olimex MSP430-BSL 板完成此操作的分步过程?

谢谢!

Jonathan。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jonathan、

    这些步骤可在下面的链接中找到。

    http://www.ti.com/tool/MSPBSL

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Eddie、

    非常感谢您的回答。
    我已经将此链接中的信息和用户指南提供给客户。 以下是我向客户提出的回答:

    他们正在尝试将固件下载到 MSP430F2481微控制器中。

    编程保险丝熔断、因此使用 FET 接口的标准下载 无法正常工作。 该微控制器来自较旧的德州仪器  
    仪表、因此一旦熔断保险丝、它就不可逆。



    对于旧的 TI 微控制器、是否有任何其他程序?

    如果您需要其他信息、请告诉我。

    此致、

    Jonathan。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    该器件的 BSL 闪存由 TI 提供的 BSLDEMO2程序提供。  但遗憾的是、Olimex 器件不能与之配合使用、TI 也不提供任何硬件接口器件。  但是、只要提供 DTR (用于/Reset)和 RTS (用于 TCK)、您就可以使用 BSLDEMO 的非官方修改版本和通用 USB 转串行适配器(其驱动程序已安装)、例如 FT232、CP2102或 CH430G。  该软件可在该 repo 中找到、如 BSLDEMO-2.01c.exe:

    https://github.com/gbhug5a/MSP430-BSL

    由于这个芯片有一个 TCK 引脚、而不是一个 TEST 引脚、所以应该同时选择新的"-i"和"-j"选项。

    BSL 要求您提供正确的密码、这是从0xFFE0到0xFFFF 的主存储器的32字节中断矢量部分的内容。  如果您不提供该数据或提供错误的密码、将执行批量擦除-包括 INFOA 中的校准数据、这将有效地破坏芯片。  如果您知道正确的密码、BSLDEMO 中的程序流指定符"A"将在执行批量擦除之前备份 INFOA 的内容、并在之后将其恢复、并且应该一直被选中。

    我不确定被熔断的 JTAG 保险丝是否会干扰 BSL 过程、但我怀疑会干扰。

    显然、最好使用这一代的另一个芯片(例如 G2553)来练习此类更新(但不需要"-j"选项)。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

       我正在尝试使用通用 USB 转串行适配器作为您的目标、但当我发送命令 "bsldemo-2.01c.exe -cCOM3"时、答案是"error:synchronization failed!"
    有什么建议吗?
    非常感谢、
    Edson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    我明白了!

    现在它起作用了。 我使用以下命令:

    bsldemo-2.01c.exe -cCOM3 -I -j

    bsldemo-2.01c.exe -cCOM3 -I -j -s0 TesteRP2001.txt

    非常感谢、

    Edson

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Edson:

    我们感谢乔治的上述建议是有益的。  

    我们很乐意解决您的问题、感谢您参与 TI 的工作。

    非常感谢。

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jonathan、

    顺便说一下、当我使用以下命令时: bsldemo-2.01c.exe -cCOM3 -s0 -i -j -R4000 ffdf edson.txt

    文件 edson.txt 中的"ffs"已满。  

    如果在程序开始时我提到闪存存储器的起始点是地址4000 (@ 4000)、 它是否应该显示与 FF 不同的内容?

    谢谢、

    Edson

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您似乎没有在命令行中指定程序流说明符,该说明符默认为+ecpvr。  "e"是批量擦除。  因此、您似乎已经擦除了芯片、可能包括校准数据、这就是您获取 FFs 的原因。  我的 BSLDEMO 版本不会改变 TI 的任何缺省值。  它仅添加-i 和-j 选项。  您需要添加+a 说明符、这将保护 INFOA 免受+e 说明符的影响。

    但您也不指定任何密码、因此无论具体说明符如何、整个芯片都将被擦除。

    也许 Jonathan 可以为您提供 BSLDEMO 的用户指南(如果有)。  但您应该研究"-h"帮助命令生成的屏幕。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的乔治:

    虽然我擦除了所有存储器、包括校准部分、但在我编写程序时、它应该不会出现在地址4000 (@ 4000)处、编译器在存储器中设置固件的初始位置?

    @ 4000
    4C EB CD 3E...

    谢谢  

    Edson

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如果您的读取命令正常工作、这是因为 BSLDEMO 提供了默认密码、即所有 FFs、但只有在芯片被擦除后、该密码才会成功。  读取命令仅在提交正确的密码后才起作用、它将生成一个包含所有 FFs 的文件、此时、hcih 是存储器中的文件。

    要在此处读取有效的代码数据、您需要再次刷写代码(校准数据消失可能无法实现)、然后在提供密码时将其读回。