请大家帮我看看我这个操作FLASH的代码有什么问题
 
- UID
- 526174
- 性别
- 男
|
单步可以点RUN就不行可能是因为flash读写是在高于芯片电源电压下进行的.这样会导致程序运行不稳定.你可以试一下将 // FSTAT=0x80; while(!(FSTAT&0x40));这两句转成机器码放入RAM中运行. 这是这两句的机器码const INT8U P[18] = {0x18,0x0B,0x80,0x01,0x05,0xF6,0x01,0x05,0x87, 0x87,0xC4,0x40,0x8C,0x00,0x00,0x27,0xF4,0x3D}. RAM中的这些机器码放入一数组中,flash擦写时调用就行了for (i=0; i<18; i++) PrgOfRam = P;当要执行 FSTAT=0x80; while(!(FSTAT&0x40));这两句时就换成asm("JSR PrgOfRam);就ok了. |
|
|
|
|
|