找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

STC单片机带CRC校验(查表法)的串口收发程序

查看数: 8205 | 评论数: 9 | 收藏 18
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2020-6-22 14:12

正文摘要:

      本程序为带CRC校验的单片机串口收发例程,CRC校验为查表法,实验单片机型号为STC12C5A32S2。例程中加入了包头和包尾作为初步校验,但包头包尾均不参加CRC计算。      &nb ...

回复

ID:468878 发表于 2024-8-1 08:37
我一般都懒得校验,只用截取中间数据用
ID:57896 发表于 2024-7-31 13:05
谢谢分享,有时间实验一下
ID:81808 发表于 2024-7-31 10:06
四年后的今天,这段代码又在我的程序里跑起来了
ID:4855 发表于 2021-5-5 00:00
嗯,CRC学习了。
ID:495287 发表于 2020-6-27 13:52
谢谢指点,学习中。
ID:224782 发表于 2020-6-24 09:32
aking991 发表于 2020-6-23 08:35
建议不要在串口中断里进行这些相关计算,如果碰到超长帧或高波特率通讯时的接收可能会受影响,应在接收中断 ...

才想起来,我这段程序还真没在中断里计算CRC,麻烦下载一下好好看看......中断里只是判断了三个HEX的包头和包尾......CRC计算是在主循环里计算的,因为包头包尾都不参与计算,还要有一个去包头包尾的过程......
ID:774633 发表于 2020-6-24 08:47
校验这方面是不断学习别人的经验,一滴滴积累起来的。谢谢分享
ID:224782 发表于 2020-6-23 13:36
aking991 发表于 2020-6-23 08:35
建议不要在串口中断里进行这些相关计算,如果碰到超长帧或高波特率通讯时的接收可能会受影响,应在接收中断 ...

这个例程里的接收包长是固定的,所以没有考虑那么多。而且主要是提供一个基础函数,具体到做产品里使用还得看个人积累。
ID:65956 发表于 2020-6-23 08:35
建议不要在串口中断里进行这些相关计算,如果碰到超长帧或高波特率通讯时的接收可能会受影响,应在接收中断中先缓存,缓存完了再去主函数中进行计算,这样才有保证完整性,只是建议

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表