本帖最后由 xu84403451 于 2013-5-22 18:41 编辑
//启动文件和连接文件
starup_stm32f10x_hd.tar.gz
(2.91 KB)
stm32_flash.tar.gz
(1.85 KB)
//程序如下,uart_printf,是自己写的一个printf函数,
uart_printf("while(1) res=%d,ftemp=%.8X\r\n", res,ftemp);
res = f_read(ftemp, tempbuf, 4096, (UINT *) &bread); //读取4K字节
uart_printf("ftemp=%.8X\r\n", ftemp);
//在串口打印结果
while(1) res=0,ftemp=20004444
ftemp=20000000
//然后卡死
卡死在0x08010de0 in WWDG_IRQHandler ()
排除uart_printf函数问题,因为直接用在线仿真,不用uart_printf函数,结果一样是修改了ftemp值
希望能给一个解决的思路,查出修改ftemp值的地方
想过可能是栈堆互相覆盖问题,也有可能是连接文件或启动文件问题
但不知从何查起
|