原子哥,在你的MINIV3.0版本的FLASH模拟EEPROM实验中,关于保护地址 有点不解
#define FLASH_SAVE_ADDR 0X08070000 //设置FLASH 保存地址(必须为偶数,
//且其值要大于本代码所占用FLASH的大小+0X08000000)
就这句话中“其值要大于本代码所占用FLASH的大小+0X08000000”中的大于本代码所占用的FLASH大小,我从哪里可以知道我占用的FLASH的大小
还有地址怎么算啊?谢谢
再补充一点
//从指定地址开始写入指定长度的数据
//WriteAddr:起始地址(此地址必须为2的倍数!!)
//pBuffer:数据指针
//NumToWrite:半字(16位)数(就是要写入的16位数据的个数.)
#if STM32_FLASH_SIZE<256
#define STM_SECTOR_SIZE 1024 //字节
#else
#define STM_SECTOR_SIZE 2048
#endif
u16 STMFLASH_BUF[STM_SECTOR_SIZE/2];//最多是2K字节
这里面明明是个选择,那为什么在开发之指南里却这样写到
“战舰STM32开发板的FLASH是512K字节,所以STM_SECTOR_SIZE的值为512,故该数组大小为2K字节。”
可这里,FLASH是512K字节,但是STM_SECTOR_SIZE的值应该是2048,这又是为什么?
|