STM32内部Flash读写会对延时函数delay有影响,导致delay内部循环

2019-08-14 05:24发布

这是主程序的循环
    while(1)
        {
                delay_ms(100);  
                LED0=!LED0;//提示系统正在运行
                Config_RetrieveSettings();
                       
        }  
1、Flash能正常读写,且正确,内存位置也对
2、Config_RetrieveSettings();为Flash读写函数,无特殊操作,只是写入数据,然后在读出来,最后串口发送

问题:主循环中Config_RetrieveSettings();删除后,系统完全正常运行。
         主循环加入Config_RetrieveSettings();,删除delay_ms(100); 系统正常运行,读取,LED都正常
         以上两个同是写入,第一遍LED正常延时,点亮,Flah读写打印出数据。第二遍循环,程序异常,死循环在delay_ms(100);


图片红框内为死循环异常的地方,在执行第一遍之后,就一直停留在这里循环。         
1 1

望大神能够解答。
ALIENTEK MINISTM32 实验26 FLASH模拟EEPROM实验.zip (2.47 MB, 下载次数: 196) 2017-7-17 16:33 上传 点击文件名下载附件
1



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。