大家好、
因此、我必须遇到一个使我的头部吹气的问题 、那么、让我们开始吧。
我正在为嵌入 MSP430FR2433和 MSP430FR2533的产品构建一个 Jiga 测试、该器件必须对这些微控制器进行编程。 我正在处理一个在 CC26x2上运行的代码、该代码基于 用于 MSP430FR2433的 SLAU320。
因此、在某些情况 下、代码能够完美地工作、例如、GetDeviceID 运行良好且华丽、读取器件的 TLV 并解析以获取有关微控制器的信息、如下图所示。
我可以成功写入一些寄存器、也可以读取数据(在所有情况下、读取工作正常)...
但是、当我尝试写入 SYSCFG0寄存器以禁用 FRAM 程序区域上的写保护和写数据时、器件不会禁用保护位。 这也发生在 Portx 上、无法写入值。
我将在图中显示程序步骤和写入/读取的值。
在第一个图像中、我读取 SYSCFG0寄存 器的值、给出的值为0x9603、该值与 MSP430FR2xx 用户指南第1.16.2.1节中的值匹配、因此读取有效。
在 第二个映像中、向我发送了写入0xA500的命令(其中0xA5是 寄存器的密码、0x00是用于禁用写保护的数据)、该例程运行良好、因为其他寄存器被写入(例如 PM5、一些其他存储器区域)。
现在 、在第三幅图片中、读取器值包含0x9603、换句话说、保护未被禁用、从而保持了主程序区域的保护。
因此、我认为微控制器处于无法写入某些寄存器的状态、但我遵循 MSP430复制器代码流程、没有理由出现任何问题、并阅读所有文档。
如果有人能帮忙,我会很高兴。 如果您需要这些代码、我可以上传它们、因为我开发的代码没有敏感信息。