4-ATSAM3X8E-FLASH写入
ATSAM3X8E-FLASH写入
#include <asf.h>
uint8_t RRR[]="HFIHGIURGHI";
int main(void)
{// 1. 初始化 SAM 系统(时钟、中断等)sysclk_init();board_init();pmc_enable_periph_clk(ID_PIOB);pio_set_output(PIOB, PIO_PB27, LOW, DISABLE, ENABLE);// 2. 配置看门狗定时器// 参数: 超时周期(ms), 是否启用窗口模式(此处禁用)wdt_init(WDT,1000, 1000, 1000);// 3. 启用看门狗wdt_restart(WDT);//pio_set(PIOB, PIO_PB27); // LED亮// 主循环flash_write(0XF0000,RRR,10,1);while (1) {// 4. 定期“喂狗”以防止复位// 必须在超时时间 (WDT_TIMEOUT_MS) 到达之前调用此函数//wdt_restart(WDT); // 重置看门狗计数器pio_clear(PIOB, PIO_PB27); // LED亮// 添加一些延时,模拟主循环的执行时间// 注意:总循环时间必须小于 WDT_TIMEOUT_MS!delay_ms(1000);}
}