使用Flash API报错 错误号是31 — — STATUS_FAIL_ZERO_BIT_ERROR
代表的应该是尝试把0写成1了。但这个问题的可能性不大;
我程序在仿真器下跑,一点错误都没有,脱离仿真器后就报上面的错误信息。
我程序里只用了一个串口中断,会不会是中断没关的原因?
时钟应该是正确的,main函数一开始就设置PLL了。
请问该如何解决?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
使用Flash API报错 错误号是31 — — STATUS_FAIL_ZERO_BIT_ERROR
代表的应该是尝试把0写成1了。但这个问题的可能性不大;
我程序在仿真器下跑,一点错误都没有,脱离仿真器后就报上面的错误信息。
我程序里只用了一个串口中断,会不会是中断没关的原因?
时钟应该是正确的,main函数一开始就设置PLL了。
请问该如何解决?
而且我是使用#pragma CODE_SECTION使得API函数在RAM中运行的
调试后发现: Flash_Program(Flash_ptr,Buffer,Length,&FlashStatus);中的Buffer;在RAM中运行时,数据是对的;
脱离仿真器 在flash中运行 Buffer中数据就不对了, 一开始还能跑 最后出现status=31的错误。。。
关闭中断了,用的查询方式;
可是结果还是不行。。。。
还有什么思路么?我是这样,使用fopen fgetc等函数进行文件操作,读到一个缓冲区,然后调用API函数进行烧写。
fopen等函数是在rts2800_fpu32.lib里面,有必要将他们也拷贝至内存运行吗?