主题中讨论的其他器件:MSP430FR5959、
你好!
我正在尝试移植 slau320ae.pdf 支持的示例代码:“User’s Guide MSP430 Programming With the JTAG Interface”。
目前、我仅移植了相关函数、以便通过2线制 SBW (Spy-Bi Wire)接口首次访问器件。
我正在调用 GetDevice_430Xv2()。 在函数 GetDevice_430Xv2中,对 GetCoreID()的第一次调用起作用,然后 IsLockKeyProgrammed()也起作用,然后 GetCoreipIdXv2()起作用,但最后一次调用 ReadMemQuick_430Xv2()来读取 DeviceID 不会给出正确的响应。 它应该返回值0x8311 (根据数据表第56页)。 相反、它返回0x3FFF、这看起来像一个错误、因为对空存储器的访问也被描述为返回这个值。
因此、我尝试了对各种存储器位置的一些访问。
我可以从0x2000开始读取和写入 RAM。
描述符类型:
00FF0:7F80
00FF2:3524
描述符结构的起始地址:
00FF4:1A00
00FF6:0000
-->指向地址0x1A00。 看起来是正确的。
但是、从这些地址读取会得到以下结果:
01A00:3FFF
01A02:3FFF
01A04:3FFF
01A06:3FFF
我还注意到 MSP4302422和用户指南之间的差异。 在第306页、FRCTL0寄存器的复位值为0x9600。 但当我读取它时、它返回0x9608。 位3被置位。 但在用户指南中、位3为零并标记为"保留"。
我卡住了。 在文档中、该区域没有被锁定的任何内容。 为什么会出现这种行为?
有人知道这里发生了什么吗?