Data Abort 问题
A5平台,CE6.0
运行时出现问题,串口的输出如下:
Exception 'Data Abort' (4): Thread-Id=0777001a(pth=8d04ab5c), Proc-Id=00400002(pprc=8c7cf308) 'NK.EXE', VM-active=0776001a(pprc=8d261c18) 'main.exe'
PC=c0d0f5b4(atlasserial.dll+0x0000f5b4) RA=c0d100d0(atlasserial.dll+0x000100d0) SP=d06bfd28, BVA=00000030
Exception 'Raised Exception' (-1): Thread-Id=0777001a(pth=8d04ab5c), Proc-Id=00400002(pprc=8c7cf308) 'NK.EXE', VM-active=0776001a(pprc=8d261c18) 'main.exe'
PC=c006bc70(k.coredll.dll+0x0001bc70) RA=93c2e920(kernel.dll+0x00007920) SP=d06bf5c4, BVA=ffffffff
+Bsp SerChkDbgPort: dwDbgComPortNum 1
程序还在正常运行,只是串口失效了。
可能是什么原因呢?
[解决办法]
Data Abort 一般是由于内存操作越界引起的,LZ 需要查查看。
[解决办法]
atlasserial.dll 是 A5 的串口驱动程序啊,CE6.0 下驱动应该是运行在内核状态,应用怎么会导致驱动报错?
[解决办法]
先查下是哪个函数报错,根据这个信息,问题就好定位多了。网上有查看data abort报错函数名的方法,百度上去搜,很多。