使用硬件spi读写外设采集的数据,通过外部中断触发spi读写操作,正常情况下没问题,但是在连接蓝牙过程中,或者蓝牙数据发送过程中spi出错,进入一个死循环,应该是一个硬件错误,出错信息如下:
在0x1001b986和0x1001b988死循环,
spi配置为SPI_MODE_BLOCKING模式,一次spi数据长度为20byte。读写时间不到100uS。
请问,该错误是什么原因导致的,有什么好的解决方案么。我用模拟spi操作没有任何问题。
用硬件spi就不行,主要考虑到硬件spi速度快,ti工程师能帮忙指导下么?谢谢!
Viki Shi:
That message is not an error message. The debugger is telling you that the target is halted at a program address where there is no source code correlation. It could mean one of two things:
1) You are halted in valid code with no symbols loaded for it. This can happen if your project includes a library that has been stripped of all debug symbols. So if you are halted in this library code, you will not have any debug information
2) You are halted at at an address where this is no actual code. This can happen if your code "runs off into the weeds" – basically your code hit some strange exception and jumped to an address that it should not. It could be a stack overflow/corruption, some other memory corruption, some interrupt triggered, etc. In any case, this is typically not a tools (CCS) issue but something specific to the device or program that needs to be debugged