在线时间1 小时
UID354110
注册时间2012-4-19
NXP金币0
该用户从未签到
新手上路

- 积分
- 45
- 最后登录
- 2021-5-31
|
发表于 2012-8-6 17:17:06
|
显示全部楼层
回复:关于P-Flash,D-flash的完整实例
楼主好,看了你的这个例程,我也试试的用了下,发现擦写flash时候,flash的地址必须是0或者8结尾(即地址是0x007feff0,如果地址是0x007feff4则读出来是不对的,读出是0xffff),不知道别人有没有向你反映这个问题。
我的程序如下:
uint Arr[4]={ 0x0102,0x00304,0x0506,0x0708};
PFlash_Erase_Sector(address);
#if 1
PFlash_Write_Phrase(0x7FEFF4,Arr,4);
Arr0[0]=PFlash_Read(0x7FEFF4);
Arr0[1]=PFlash_Read(0x7FEFF4+2);
Arr0[2]=PFlash_Read(0x7FEFF4+4);
Arr0[3]=PFlash_Read(0x7FEFF4+6);
#else
PFlash_Write_Phrase(0x7FEFF8,Arr,4);
Arr0[0]=PFlash_Read(0x7FEFF8);
Arr0[1]=PFlash_Read(0x7FEFF8+2);
Arr0[2]=PFlash_Read(0x7FEFF8+4);
Arr0[3]=PFlash_Read(0x7FEFF8+6);
#endif
我是利用你的例程来擦写flash,来做bootloader时发现的。
可能是我哪里没做对,但是我不知道错在哪里?若是,请楼主明示,谢谢! |
|