流年__ 发表于 2017-3-23 14:11:46

xmshao 发表于 2017-3-23 13:15
会不会跟堆栈大小有关?调整系统堆栈大小试试。

因为用了UCOS,所以主堆栈用的空间很小,目前设置的是400,而且进入BUSFault的时候我也查过堆栈内容,没发现有溢出。

eagle0754 发表于 2017-3-24 21:23:55

P_DataBuffer每次传入的都是uint32_t的数组么?
还有你长度bufLen在进入函数时是否判断下如
if (bufLen > xxx) while(1);
是否定义成如下会好些,P_DataBuffer在运算过程中是否有变化?计算返回的值如果不对你是怎么处理的?
uint32_t CRC_BufferGet(const uint32* P_DataBuffer, uint32_t bufLen)
页: 1 [2]
查看完整版本: STM32调用硬件CRC出现Hardfault