STM32F3 HardFault_Handler
uint32_t MAX35101UpFirstReadDoubleWord(char StartingAddress,uint32_t *Result)
{
uint16_t dataRx1,dataRx2;
StartingAddress |= 0x80;
MAX35101UpFirstCSLow;
SPI2ExchangeData(StartingAddress);
dataRx1 = SPIReadWord(&dataRx1);
dataRx2 = SPIReadWord(&dataRx2);
MAX35101UpFirstCSHigh;
*Result =(dataRx2 + (uint32_t)(dataRx1 << 16));
return *Result;
}
执行这个函数的时候进入HardFault_Handler死循环,求助怎么处理?函数功能是从某个芯片中读取两个字,网上都说是接收缓冲区小了,请问各位怎么处理啊?
单步走看看哪句导致数据溢出了。 有可能传进来的指针Result的地址不可写导致了fault。
具体方法可参考:如何找到导致程序出现HardFault的代码 学习了..........
页:
[1]