prefech abort 预取指令中止 LPC2114取指令中止
2009-04-21 09:44
190 查看
今天调试程序的时候遇到了一个预取指令中止。我想了半天也没想到哪里有问题,于是单步加断点调试....终于发现了问题所在:
void Uart1DealFunc(e_SvrCommandFunction cf){
void (*pFunc)();
switch(cf){
case READ_ALL_METER_CYCLE:
pFunc = ReadAllMeterCycle;
break;
...
...
default:
break;
}
pFunc();
}
由于我定义了一个函数指针,但是在default里面没有对函数指针赋以有意义的值,结果,遇到default情况的话,pFun指向的地址就未知了,当然就预取中止了。
void Uart1DealFunc(e_SvrCommandFunction cf){
void (*pFunc)();
switch(cf){
case READ_ALL_METER_CYCLE:
pFunc = ReadAllMeterCycle;
break;
...
...
default:
break;
}
pFunc();
}
由于我定义了一个函数指针,但是在default里面没有对函数指针赋以有意义的值,结果,遇到default情况的话,pFun指向的地址就未知了,当然就预取中止了。
相关文章推荐
- ADS中的数据预取中止错误 DataAbort 周立功
- Activemq 预取指令的配置
- JQuery中止(abort)Ajax请求
- linux编程奇淫巧计17(如何达到内存最大带宽,精简指令,预取和NT)
- LPC2294 ARM7 ADS1.2 AXD startup.s 取数据中止 DataAbort B DataAbort
- Intel64及IA-32架构优化指南第7章——7.2 数据的硬件预取,7.3 预取以及与Cache相关的指令
- ARM指令预取的应用---调整DRAM的clock经典代码段
- Activemq 问题记录2--预取指令的配置
- ARM学习笔记(六)--ARM指令的预取和自修改代码
- WPF中更改键盘默认指令小结
- 百度搜索高级指令教程
- apache常用的配置指令:PidFile
- 1.1 ls指令:显示目录内容(1)
- JVM字节指令详解
- 汇编----乘指令: MUL、IMUL
- 学习AngularJs:Directive指令用法(完整版)
- pragma指令(1)
- [汇编学习笔记][第十三章int指令]
- arm指令中的伪操作