微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Contiki-NG CC2538 rom_util_program_flash 问题

如何解决Contiki-NG CC2538 rom_util_program_flash 问题

我正在编写一个 Contiki os 服务,它应该在 CC2538 上运行。但是,我遇到了一个我不知道为什么会发生的问题。更具体地说,我想将给定的数组 (my_arr) 写入闪存的连续页面。但是,在第 20 次迭代之后,程序停止并且电路板重新启动。你知道为什么会这样吗?擦除功能我也遇到过类似的问题。

int8_t* my_arr= (int8_t*)malloc(2048);

for(int i=0; i<2048; i++)
    my_arr[i] = i+1;


int8_t* init_addr = (int8_t*)0x222000;

for(int i=0;i<40;i++){

     rom_util_program_flash((uint32_t *)my_arr,(uint32_t)(init_addr +i*2048),2048);

           LOG_INFO("%d\n",i);
}

解决方法

重启是由看门狗引起的。

尝试在每次写入前添加 watchdog_periodic() 以避免重新启动。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。