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.

[参考译文] MSP430G2231:在不使用Launchpad的情况下进行闪存?

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/577077/msp430g2231-flashing-without-using-the-launchpad

部件号:MSP430G2231
主题中讨论的其他部件:MSP-GangMSP430G2553

我正在与其他一些人一起参与一个项目,它需要频繁地重新刷新G2231处理器中的固件。  每个人都必须购买一个启动板才能进行闪存。  但我想知道在将来的版本中,是否可以提供一个小型电路板,它可以安装到设备中,并用于USB到SBW的转换以刷新芯片。  换言之,我们将继续使用通常为Launchpad所需的TI命令行闪光灯和USB驱动程序,但将Launchpad本身替换为更简单,更小,更便宜的电路,它仅用于闪存。

作为这种事情的一个例子,我最近把一个使用STC微控制器的套件放在一起,唯一需要通过USB闪存该芯片的硬件是一个非常小的USB到UART接口板,它使用CP2102芯片,这是中国唯一提供的1.62美元。  因此,我将寻找类似的产品,即USB到2线JTAG,并且仍然可以与TI闪存软件配合使用。

是否有这样的部件可以与MPS430部件配合使用?

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

    没有USB到SBW桥接芯片,如USB到UART。

    低成本解决方案是将BSL脚本与简单硬件(USB到UART桥接)接口配合使用。 很遗憾,您的设备没有BSL。 也许您可以用另一个具有相同引脚,外设和成本的设备替换它,但使用随附的ROM BSL。

    http://sustburbia.blogspot.hr/2016/02/the-great-msp430-bootloader-swindle.html

    TI EZ-FET Lite是开放的,可更新的,因此您可以在非常小的主板上自行创建,并将其用于SBW刷新。 它比BSL更昂贵。

    http://forum.43oh.com/topic/5530-custom-ezfet-lite/

    此外,我的MSP Gang式闪光器配有3.8 x 3.8 cm (1.5 x 1.5 In)板,无需安装,并且正在处理...

    • 我尝试过的任何Linux:Ubuntu 10到16,Fedora Workstation x86_64 23.10 ,openSUSE Leap 42.1 x86_64,CorePlus 6.4 1 (可引导USB记忆棒)
    • OS X从Lion (10.7 .5)到Yosemite (10.10 .5)
    • Windows XP / 7.

    带2个CDC/UART桥接器。 但价格高于DIY EZ-FET Lite。

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

    [报价用户="zrno soli"]

    没有USB到SBW桥接芯片,如USB到UART。

    低成本解决方案是将BSL脚本与简单硬件(USB到UART桥接)接口配合使用。 很遗憾,您的设备没有BSL。 也许您可以用另一个具有相同引脚,外设和成本的设备替换它,但使用随附的ROM BSL。

    http://sustburbia.blogspot.hr/2016/02/the-great-msp430-bootloader-swindle.html

    [/引述]

    非常感谢。  sustburbia link非常有趣。  作者说,他找到了一种方法来做我想做的事情,但我认为这必须是2553,而不是没有BSL的2231。

    但不幸的是,与该帖子第2部分的链接是坏的,与编写MSPFET.EXE的友好的俄罗斯人的链接也是坏的,这似乎是使一切都发挥作用的关键。

    因此,正如您所说,似乎没有USB到SBW芯片,因此也没有一种简单,经济的方法来使2231能够实现这一功能。  但是如果我能找到友好的俄罗斯人,或者做suburbia的人,我可以让它工作,至少是2553或2452。

    我不熟悉BSL脚本。  我会试着找到它。

    再次感谢。

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

    [引用user="George Hug],但不幸的是,该帖子第2部分的链接不好,与编写MSPFET.EXE的友好的俄罗斯人的链接也不好,这似乎是使一切都正常运行的关键。

    但是如果我能找到友好的俄罗斯人,或者做suburbia的人,我可以让它工作,至少是2553或2452。

    我不熟悉BSL脚本。  我会试着找到它。[/QUOT]

    FAAIK没有与MSP430 BSL相关的MSPFET.EXE。 有用于PC端的TI BSL脚本程序(开放源代码)...

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

    您还可以找到用于MSP430器件的其他(Ask Google)开放式BSL设计...

    http://www.flyingcampdesign.com/msp430-bsl-programr.html

    在这里,您可以看到当PC上仍存在UART时,我在BSL中使用的是什么。

    http://forum.43oh.com/topic/3948-ttl-uart-and-ftdi-what-is-what-and-for-what/?p=35957</s>3.5957万

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

    [报价用户="zrno soli"]

    FAAIK没有与MSP430 BSL相关的MSPFET.EXE。 有用于PC端的TI BSL脚本程序(开放源代码)...

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

    您还可以找到用于MSP430器件的其他(Ask Google)开放式BSL设计...

    http://www.flyingcampdesign.com/msp430-bsl-programr.html

    在这里,您可以看到当PC上仍存在UART时,我在BSL中使用的是什么。

    http://forum.43oh.com/topic/3948-ttl-uart-and-ftdi-what-is-what-and-for-what/?p=35957</s>3.5957万

    [/引述]

    有关的MSPFET.exe似乎是这样的:

    edaboard.com/thread1.8254万.html

    由于某些原因,TI不允许我在此处输入链接,因此我认为您必须复制和粘贴。  无论如何,这是由该链接中提到的“友好俄语”编写的软件。

    另一方面,似乎是脚本不支持2553,而我需要使用BSLDEMO2。  但这种支持已不复存在。  它"已弃用"。

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

    [QUOTE USER="zrno soli">低成本解决方案是将BSL脚本与简单硬件(USB到UART桥接)接口配合使用。 很遗憾,您的设备没有BSL。 也许您可以用另一个具有相同引脚,外设和成本的设备替换它,但随附ROM BSL。[/QUOT]

    这是一个很好的方法,尤其是当项目只是为了快闪而不是调试时。

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

    嗯,我似乎被淘汰了。  概括地说,我们的想法是在包含G2553处理器的电路中嵌入CP2102 USB到UART芯片和迷你或微型USB插座(因为 G2231没有BSL)。  然后,用户 无需购买 Launchpad即可刷新新固件。  他需要安装CP2102的驱动程序,包含新固件的文件,USB电缆和执行闪存的软件。  但问题在于最后一部分。

    我终于在法国网站上找到了2010年的MSPFET.EXE版本,但查看其冗长的目标器件列表,我没有找到任何"G"部件的条目。  所以我不知道它是否与G2553兼容。  我没有找到任何说明或帮助,也没有收到给作者的电子邮件的回复。  我不知道2010版本是否是最新版本。

    我已确认BSL脚本不支持G2553。

    所以剩下的东西叫做BSLDemo2。  我在包含脚本的zip文件的"depreced"文件夹中发现了此问题,以及几个可能的修补程序,但没有任何解释,我在TI.com上的任何位置都没有找到有关BSLDemo2的信息,也没有找到如何使用它的信息。

    所以我得出的结论是,我不能从这里到达那里,除非我写自己的程序来做这个,我希望避免这样做。  实际上,我不应该这样做。

    如果有人确实这样做了,请告诉我您使用的是什么软件。

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

    [报价用户="George Hug]他需要安装CP2102的驱动程序,包含新固件的文件,USB电缆和执行闪存的软件。  但问题在于最后一部分。[/QUOT]

    您可以在 基于sla535 LaunchPad的MSP430 UART BSL接口中找到具有MSP430G2553测试脚本的BSL脚本。

    这与BSL相关,在BSL中,LP用作硬件基座,但我想它也可以与USB-UART桥接一起使用。

    我使用了Windows的附加文件。

    e2e.ti.com/.../BSL_5F00_MSP430G2553.zip

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

    非常感谢。 我将研究所有这些并看看它的发展。 SLAA535由Leo Hendrawan编写,他是一个TI的家伙,也参与了一个叫OpenBSL的活动,我记得它专门处理G系列部件。  也许我越来越接近了。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    SLAA535材料处理如何使用安装在Launchpad中的G2231以及提供Launchpad不支持的缺失偶校验位的固件。 所以从理论上讲,带有2231的Launchpad相当于我想要使用的CP2102。 但我需要使用软件来指定CP2102驱动程序的偶校验,因为目标芯片中的BSL也需要该软件。 尚不清楚SLAA535中使用的BSLDEMO2版本对奇偶校验有何作用。 该版本的文件长度为68K,而最新的Scripter zip文件中包含的版本为224K字节,因此很显然,除非正在进行压缩,否则不会出现相同的文件,我看不到这种情况。 我所拥有的唯一源代码是大版本,从该源代码看来,打开COM端口时甚至指定了奇偶校验,这是令人鼓舞的。

    但在这一点上,我只知道当CP2102模块出现时,尝试两个版本的BSLDEMO2,并希望至少一个模块能够工作。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    花时间研究BSL质量擦除上的Info-A问题后,我相信我会放弃这个想法。 G2553在Info-A中有校准数据,此项目的性质是可以更新多个以前的固件版本中的任何一个,或者更新新的(擦除的)芯片, 或者一个带有闪光灯的芯片,所以我不能确定密码(中断矢量表)是什么,并且似乎猜测过程会擦除Info-A的内容

    从多个以前版本更新的解决方案可能是将中断向量固定为指向FFE0正下方跳转表的指针。 因此FFE0上的中断向量对于所有版本都是相同的,但跳转表的内容将会更改。 但这仍然存在着闪存新芯片或完全用于其他用途的芯片的问题。

    我想说的是,从这些产品的低用户的角度来看,让BSL质量擦除校准数据的决定并不是经过深思熟虑的。

    无论如何,我想我回到了最初的想法,那就是通过嵌入在目标PC板上的CP2102 (而不是通过Launchpad)实现2线JTAG闪存,这样只需要USB电缆即可刷新新新固件。 该方法将保留Info-A,并将G2231重新考虑在内。

    该方法不涉及通过Tx/Rx进行传输,而是调整CP2102的DTR和RTS输出,并在数据流回PC时通过输入控制线路读回。 我知道输出部件工作正常,因为DTR和RTS可用于传输BSL入口模式以测试和/RST,但我不知道这在快速下工作有多好(尽管我不确定它必须快速)。

    因此,我需要对TI的JTAG命令行闪光器和USB驱动器进行更多研究。 我不是很希望闪光灯能像现在这样使用,但可能是因为某个地方有源可用。 我的记忆是,Elprotronics和Flying Camp Design的第三方设备都是BSL闪光灯,但我会仔细检查。 如果有人有任何建议,请告诉我。

    我仍然需要找到神秘的Kurt,他是mspfet.exe的作者,他的网站曾经是:

    kurt.on.ufanet.ru

    以及谁已经完成了这项工作。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="George Hug]不管怎样,我想我还是回到了最初的想法,那就是通过嵌入在目标PC板上的CP2102 (而不是通过Launchpad)实现2线JTAG闪存,这样只需要USB电缆即可刷新新新固件。 该方法将保留Info-A,并将G2231重新考虑在内。

    该方法不涉及通过Tx/Rx进行传输,而是调整CP2102的DTR和RTS输出,并在数据流回PC时通过输入控制线路读回。 我知道输出部件工作正常,因为DTR和RTS可用于传输BSL入口模式以测试和/RST,但我不知道在快速下工作有多好(尽管我不确定它必须快速)。[/QUOT]

    SBW测试线路仅为输出,但重置是双向的。 所有与SBW/JTAG相关的内容均可在具有JTAG接口的slau320 MSP430编程中找到。

    AFAIK,USB - UART桥接器对于SBW输入序列/换档不够快。 另一种情况是,旧PC具有真正的串行/并行硬件端口,第一个TI FET430PIF (www.ti.com/.../MSP-FET430PIF)连接到并行端口。 很久以前,当我进入MSP430世界时,我制造了连接到并行端口的JTAG/SBW闪光灯。 后来,我做了一些简单的测试,比较网桥和实际硬件UART之间的切换速度...

      

    [引述用户="George Hug"]
    因此,我需要对TI的JTAG命令行闪光器和USB驱动器进行更多研究。 我不是很希望闪光灯能像现在这样使用,但可能是因为某个地方有源可用。 我的记忆是,Elprotronics和Flying Camp Design的第三方设备都是BSL闪光灯,但我会仔细检查。 如果有人有任何建议,请告诉我。[/QUOT]

    在MSP_Flasher源文件中找不到太多信息。 此处USB驱动程序无关。 您可以找到所有内部开放源代码MSP调试堆栈(http://www.ti.com/tool/mspds)。

    用于制作SBW主机(仅在2xx上闪存,基于slau320),可使用具有低成本G2xx成员(作为主)的桥接芯片,或具有USB硬件模块(作为主)但不带桥接芯片的入门级5xx设备。 安装在非常小的印刷电路板上,只需几美元。 我不知道是否有其他(更简单/更便宜)的方法来完成。

    我仍然需要找到神秘的Kurt,他是mspfet.exe的作者,他的网站过去是:

    kurt.on.ufanet.ru

    以及谁已经完成了此操作。[/QUOT]

    Kurt的版本只是另一个(或相同的) MSP-FET430PIF。 您可以自行比较原理图。 它连接到真正的硬件并行端口,因此它无关紧要。

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

    今天下午,我花了几个小时在slau320上,没有意识到JTAG是多么复杂和“低水平”。  我认为JTAG流程对于 USB到UART模块来说太多,无法处理,这是正确的。  所以我想做的事情似乎不起作用。   那么,为什么所有JTAG编程器设备 都使用专用处理器作为主处理器,这并不神秘。  但我认为这对我所需要的东西并不实际。

    我不理解您对"带USB硬件模块(作为主模块)的入门级5xx设备(无桥接芯片)"的评论。

    我见过的关于Kurt的唯一一件事是2009版的mspfet.exe。  我从未在他的网站上看到过任何其他内容。  它似乎 同时提供了BSL和JTAG闪存,但 您认为他的JTAG需要使用硬件端口。  如果是这样,我同意他的计划将不会有帮助。

    BSL上的大量擦除问题太糟糕了,因为我们知道BSL只能与桥接芯片一起工作。   我将与其他相关人员讨论跳转表的想法并了解他们的想法。  如果处理器要焊接或表面安装,则跳转台可能会起作用,因为更换芯片的情况很少见。

    非常感谢您的帮助。  您显然有丰富的此材料经验。  感谢您花时间帮我处理好问题。

    最后一项澄清。  看来,BSLDEMO2及其亲属都需要新固件的TI-TXT和BSL密码,而不是Intel HEX。  是这样吗?   是否有您喜欢的Windows脚本将Intel HEX转换为TI-TXT?

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

    George Hug 说:
    关于BSL的批量擦除问题太糟糕了[/QUOT]

    您可以选择使用 自定义BSL 来解决此问题。

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

    在G2553中,BSL在ROM中,而不在闪存中。 因此,我的理解是,自定义BSL不是此零件的选项。

    编辑: 但可能会。  感谢您的参考。

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

    在G2553中,BSL在ROM中,而不在闪存中。 因此,我的理解是,自定义BSL不是此部件的选项。[/QUOT]

    它仍然是一个选项。 -当您有自定义BSL时,您可以在自定义BSL中设置自定义条目序列。 通常是一些" BSL条目密码",应在重置后的第一秒内发送-如果您的应用程序在重置后能够承受一些延迟。 否则,您可以实施简单的GPIO引脚(跳线)检查。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的,slaa450很有趣。 对于此项目,我们已经充分利用了信息段,因此,在此处自定义BSL可能不是一个好选择。 但是,特别有趣的是,如果你不使用信息段,即使是低级别的G2231也可以有一个BSL。 如果您至少有512个字节未被使用,BSL代码甚至可能位于其中一个主闪存段中。

    非常感谢大家的注意。

    我知道自定义协议非常简单,可以通过PC端的终端程序来完成,至少如果您已经在二进制文件中刷新了固件, 但是,您是否知道是否有人编写了一个程序来根据命令行参数自动执行该操作,包括分析TI-TXT或Intel十六进制文件?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我为2xx器件定制了BSL,但没有ROM BSL和硬件UART。 固件打包在(非常小) PC GUI应用程序中。 但是,SBW第一次闪存设备,以准备BSL。

    https://e2e.ti.com/support/microcontrollers/msp430/f/166/p/32.671万/1137900#1137900</s>113.79万 113.79万

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