请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP-EXP430FR2433 工具/软件:Code Composer Studio
我在 CCS 10中遇到 MSP430 FRAM 持久性问题。 我在 MSP-EXP430FR2433的新 CCS 项目中创建了以下内容。 我希望看到的是、每次复位电路板时、电路板上的 LED0/1组合将根据我的持久性表发生变化。 但是、它不会。 LED 永远不会亮起。 在调试器中、当在存储器浏览器中观察 pData 时、我看到写入 pData[k]永远不会更新值。 不过、我可以手动更改存储器浏览器中的值、这些更改实际上是永久性的。 我尚未从默认文件中编辑.cmd 文件、因此定义了.TI.persistent。
#include #define P_DAT_LEN (8) #pragma PERSISTENT (pData) unsigned char pData[P_DAT_LEN]={0、1、2、3、2、1、0}; int main (void) { unsigned char x; int k; WDTCTL = WDTPW | WDTHOLD;//停止看门狗计时器 //配置 LED P1DIR |= 0x03; P1SEL0 &=~0x03; P1SEL1 &=~0x03; PM5CTL0 &=~LOCKLPM5; //清除 LED P1OUT &=~0x03; //将序列中的第一个值保存为"x" x = pData[0]; //向量向左旋转1个位置 for (k=0;k<(P_DAT_LEN-1);k++) { pData[k]= pData[k+1]; } pData[P_DAT_LEN-1]= x; //使用"x"中保存的值点亮 LED P1OUT |= x; //永远循环 while (1); 返回0; }