ADUC7023 芯片 Flash 擦除代码示例 - 32 位地址
#include <ADuC7023.h>
#define FLASH_PAGE_SIZE 256 // Flash页大小
void eraseFlash(uint32_t address) { // 禁用中断 __disable_irq();
// 设置Flash控制器
FLASHKEYR = 0x0123;
FLASHKEYR = 0x4567;
// 设置擦除页地址
FADDRH = (address >> 16) & 0xFF;
FADDRL = (address >> 8) & 0xFF;
// 开始擦除
FCR = 0x02;
// 等待擦除完成
while (FSR & 0x80);
// 启用中断
__enable_irq();
}
int main() { // 擦除Flash地址为0x000000的页 eraseFlash(0x000000);
return 0;
}
注意,这只是一个示例代码,具体的实现可能因芯片型号、开发环境等而有所不同。请确保在使用该代码之前仔细阅读ADUC7023的数据手册和相关开发文档,并根据实际情况进行适当的修改和调整。
原文地址: https://www.cveoy.top/t/topic/pktb 著作权归作者所有。请勿转载和采集!