主题中讨论的其他器件:MSP430FR2475、、 MSP430G2402
尊敬的 TI 朋友和家人:
我们的客户发现 FR2475和目标 G2553上的 ID 代码之间存在异常。 欢迎您的评论!
[客户]
我已经为 FRAM 器件准备好了我们的生产线。 最近、我们意识到我们希望在制造数据库中跟踪每个小部件制造出的 MCU 是什么。 在我们的计划中,一组零件可以到达计划/测试站,并且该计划需要无缝地处理所有零件。
我们了解到、FRAM MSP430FR2475在地址0x1a04处为我们提供了 MCU ID。 在我的程序中、我现在可以通过 JTAG 读取该地址并算出我要处理的是 MSP430FR2475或其他器件–因此我的程序可以顺利地处理 FRAM 和闪存。
但对于我们使用的其他值系列2,475,24024022553、我们不知道哪些地址可能具有这些代码以及这些代码是什么。
因此、现在我能做的最好的事情就是将一个布尔值保存到数据库中–FRAM 是/否。 但是、我很想确定我有哪个特定的 MCU、以便创建更有意义的记录。
我的问题是、是否有 TI 文档列出了包含此 MCU 代码的所有 MSP430的"信息"地址?这些代码是什么?
[TI]
在"使用 JTAG 接口对 MSP430进行编程" www.ti.com/lit/pdf/slau320 [ TI.com ] 第2.6节"整个器件系列的 JTAG 特性"中有一个表格、其中列出了不同器件的器件 ID 地址和值。 本节中有几个表格、对于闪存与 FRAM 系列、可以在不同的位置找到它。 JTAG 工具实际上在编程之前会读取器件 ID、因此它可以为该部分使用正确的存储器映射、JTAG 功能等–通常在 CCS 或编程器使用的其他程序中、 它知道您已设置的器件以尝试访问哪个器件、然后它会检查在读取此地址时、它获取该器件 ID 的预期值、如果不匹配、则会触发警告。
信息 A 中的 TLV 有点不同–在 Gxx 器件上、存储在用户可访问的闪存中并可以被擦除–它包含校准信息、 但不包括器件 ID、因为器件 ID 需要位于无法意外擦除的位置(因为它由 JTAG 等器件使用、并且您需要始终能够访问/恢复器件)。
[客户]
今天我终于尝试了 Elprotronic 指令 F_Elprotronic Get_Device_Info ()。 事实证明它没有达到我想的效果。 在根据我们已知的器件 ID 配置器件之前、无论连接了什么 MCU、该命令都只会生成相同的垃圾文本。 文档说明"应首先在配置中设置所需的索引处理器…)。
我尝试了一些使用 MSP430G2553的操作、Katie 提到的桌子也使用了。 我一定要错过一些东西。
根据 https://www.ti.com/lit/ug/slau320aj/slau320aj.pdf [ TI.com ]、我应该能够在0x0ff0和0x0ff1处读取两个字节、并获取代码0x2553:
但是、根据数据表、
存储器映射显示0x0ff0和0x0ff1不是可寻址存储器。 我已经尝试读取这些字节,Elprotronic F_Elprotronic Memory_Read_Data () 函数返回一个失败状态代码。
我想我可能会在信息存储器中找到器件 ID、但数据表除了 A 段之外不提供该 ID 的映射。 但这两个文档之间明显的冲突令人困惑。
[TI/ Elprotronic]
可以读取任何 MCU 位置 、但首先必须使用 Open Target Device funcion 将其连接到 MCU。 如果响应正确、那么从指定地址读取的存储器应该应答。 我们可以在下一周通过 M.Team 进行联系、并在您身边不恰当地检查完成的事情、或者向我发送电子邮件、然后我们可以立即进行检查。
[客户]
我希望能够澄清读取器件 ID 的地址以及预期使用的常量。 我们在所有产品中使用的 MCU 是 MSP430G2553、MSP430G2402、MSP430G2475。 地址0x0ff0:1不起作用。
我们希望改进这一点:为两者提供正确可靠的器件 ID。 将来我们还有其他处理器要处理、并且数据会进入数据库。
欢迎再次发表评论!
Ty、
CY