我刚使用利尔达的MSP430F5438评估板进行学习,在读写内部Flash的部门遇到了两个问题。
我先在Flash中0x10000位置处写入了 100,写入成功了。然后想使用下面语句读取0x10000位置的数据,但是始终不成功,请大牛们看看是什么原因?
PS:我用的IAR5.5,数据模式也是large。
———————————————————
int a;
int *p = (int *)0x10000;
a = *p;
——————————————————
还有就是现在Fctl2为什么没有了呀?那写入频率什么的是怎么控制的?
谢谢!
Peter_Zheng:
char * Flash_ptr;
Flash_ptr = (char *) 0x10000;
char a;
a=*Flash_ptr ;
Heng Zhao:
int a;
a = __data20_read_short(0x10000);
这样就可以了。
Delta:
FLASH的写入频率没必要控制了,用处不大。