工具与软件:
大家好!
我最近一直在对 MSP430FR5962进行编程、我有一个问题:对代码进行编程后、有两个函数可用于读取数据进行验证(ReadMemQuick 和 ReadMem)。
如果使用 ReadMem 读取主闪存、则编程的数据始终与读回数据匹配、无论读取多少次。 但是、使用 ReadMemQuick 时、主闪存数据与前几次读取相匹配、但在多次读取后、数据会发生变化。
我想了解发生了什么。 您能否解释一下是否有任何不同之处、或者您对此有什么建议?
谢谢
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.
工具与软件:
大家好!
我最近一直在对 MSP430FR5962进行编程、我有一个问题:对代码进行编程后、有两个函数可用于读取数据进行验证(ReadMemQuick 和 ReadMem)。
如果使用 ReadMem 读取主闪存、则编程的数据始终与读回数据匹配、无论读取多少次。 但是、使用 ReadMemQuick 时、主闪存数据与前几次读取相匹配、但在多次读取后、数据会发生变化。
我想了解发生了什么。 您能否解释一下是否有任何不同之处、或者您对此有什么建议?
谢谢
尊敬的 Dylan:
感谢您的答复
按照源代码(slau320aj.zip)中引用的编程步骤、我使用了 JTAG 接口和我自己的工具对此芯片进行编程。 在测试过程中ReadMem,我注意到当使用时,回读数据始终与编程数据匹配ReadMemQuick,但与,它只在开始时匹配,并且在多次读取后,数据会意外变化。 这种行为是否表明ReadMem验证更可靠? 您是否建议使用ReadMem OVERReadMemQuick?
您为此使用的是定制 JTAG 工具吗? 您是否曾在不同的 JTAG 工具(例如 SLAU320文档中提到的工具之一)上尝试过相同的操作?
我可以看到、对您提到的函数的描述只是启动读取、然后返回它读取的值、在函数流程中我看不到任何写入发生。
我建议您尝试探测信号、以确保工具和设备之间的通信符合您的预期、如果是、我还建议您尝试仔细检查 readMemQuick 函数返回的数据、以查看存储器中是否实际发生变化。
请告诉我您可以在这里找到什么。
尊敬的 Dylan:
再次感谢您的答复!
我在读取前对闪存进行了写入、所有函数都是按照 SLAU320源代码执行的、并且我已经确认 JTAG 通信正常工作。 我还有 MSP430-FET 闪存仿真工具、我将用它来协助验证。
该readMemQuick函数返回的数据实际上会在存储器中发生变化、但在使用该readMem函数时不会发生此问题。
这种行为是否表明readMem验证更可靠? 您是否建议使用readMem而不是readMemQuick?
感谢您的帮助!
Tsai、您好!
我还不能查看它的源代码、但它听起来像是使用 readMemQuick、其中有一些正在改变存储器的错误。 说明中没有任何内容表明它应该会改变您的内存。
由于我们不计划提供此工具的更新、我建议您避免使用 readMemQuick、或者如果您正在编辑源代码、您可以尝试自行修复它、但考虑到您具有此功能、此活动可能不值得您花时间进行。
如果您还有其他关于此主题的问题、请告诉我。
Tsai、您好!
为延误道歉-我已经不在办公室,我在一周的剩余时间。
为了回答您的问题、我会说是的、问题似乎在 ReadMemQuick 函数中、并且 ReadMem 似乎工作效率更高。 要完全清楚、这完全基于您对问题的描述:由于您使用的是自定义工具和实施、因此我只能根据您提供的信息进行评估。
话虽如此、您已在此处发布的证据似乎确实表明 ReadMemQuick 函数不起作用、并且会无意中更改数据、而 ReadMem 函数可正确读取数据。