我做外部中断实验1,也就是通过P0.14控制蜂鸣器的实验。在AXD中调试偶尔出现以下的错误:<br /><br />A memory access failed.Some of the data displayed may be invalid.<br /><br />同时在Debug log窗口中提示:<br /><br />RDI Warning 00254: Unimplemented RDI message<br />A memory access failed. Some of the data displayed may be invalid.<br /> Operation: Read Address: 0x40000000 BufferSize: 192 bytes<br /> Access Size: Default Not more than 0 bytes were transferred.<br />DBT Warning 00125: Debugger internal error<br />RDI Warning 00254: Unimplemented RDI message<br />A memory access failed. Some of the data displayed may be invalid.<br /> Operation: Read Address: 0x40000000 BufferSize: 192 bytes<br /> Access Size: Default Not more than 0 bytes were transferred.<br /><br />记得周公的书上讲过,如果在片内RAM中调试程序并使用了中断,那么必须将存储器映射控制设置为内部RAM模式,但没有讲原因,所有先请您解释一下。<br /><br />我确实是在RAM中调试的,但我想当我选择了DebugInExtRAM调试模式后,模板通过如下代码就自动映射到内部RAM模式去了。<br /><br /> void TargetResetInit(void)<br />{<br /> #ifdef __DEBUG <br /> MEMMAP = 0x3; //remap<br /> #endif<br /><br /> #ifdef __OUT_CHIP <br /> MEMMAP = 0x3; //remap<br /> #endif<br /><br /> #ifdef __IN_CHIP <br /> MEMMAP = 0x1; //remap<br /> #endif<br /><br /> ......<br />}<br />请问我这样的理解是否正确?另外就是出现的错误是什么原因引起的,如何解决? |
|