找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5607|回复: 6
收起左侧

stm32spi主机发送一串数据,从机怎么判断接收完?

[复制链接]
ID:592871 发表于 2019-8-30 15:48 | 显示全部楼层 |阅读模式
4黑币

回复

使用道具 举报

ID:235200 发表于 2019-8-30 23:38 | 显示全部楼层
一般是这样的,发送的第一个字节作为发送数据的长度,最后一个字节作为全部发送数据的校验码,当从机接收够了同样的数据长度,且自己计算所接收的数据校验码,如果计算出来的校验码与接收到主机的校验码一致,就代表接收数据正确且完成接收.
回复

使用道具 举报

ID:174087 发表于 2019-9-2 10:04 | 显示全部楼层
可以用接收超时来判断接收完成
回复

使用道具 举报

ID:426861 发表于 2019-9-2 12:35 | 显示全部楼层
你可以参考一下这个
捕获.PNG
回复

使用道具 举报

ID:709787 发表于 2020-4-9 20:30 来自手机 | 显示全部楼层
我也在纠结你这个问题,基于52的modbus通信,用了串口中断,每接收到一个数据,就会产生一次中断,这就很完美啊。spi从机,如果主机发数据的时候,从机在执行别的程序,那岂不是接受的数据就不完整?
回复

使用道具 举报

ID:728278 发表于 2020-4-14 17:09 | 显示全部楼层
1.一般来说可以定义自己的数据帧格式2.也可以调用接收,比方你的数据在10ms内能发完,那么在接收前清空,延迟10~15ms内截取一段数据,那么基本上你的数据就是在这段时间内的,同时可以判断数据的长度啥的,不然就可认为数据是有问题的
回复

使用道具 举报

ID:602576 发表于 2020-4-14 22:22 | 显示全部楼层
校验和就可以了,主要看通信协议怎么规定
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

Powered by 单片机教程网

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