我正在编写一个 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);
}