源代码还是在前一节中下载。[忙里偷闲学习ufun_8]uarst1串口——调试小技巧
https://bbs.eeworld.com.cn/forum.php?mod=viewthread&tid=497317&extra=page%3D1%26filter%3Dtypeid%26typeid%3D440
循环冗余校验CRC原理:校验一组数据是否出错,一般用于通信,在通信过程中,发送完数据后,再加上检验码一起发送。接收到数据一端再结数据进行检验,与检验码是否一样。如果不一样,说明有数据丢失。
只有两段代码。
配置
void CRC_Config(void)
{
/* Enable CRC clock */
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_CRC, ENABLE);
}
使用
/* Compute the CRC of "DataBuffer" */
for(i=0; i
{
CRCValue = CRC_CalcBlockCRC((uint32_t *)DataBuffer, BUFFER_SIZE);
printf("\r\n32-bit CRC 校验码为:0X%X\r\n", CRCValue);
}
printf("\r\nCRC(循环冗余校验)测试成功\r\n");