51单片机IO口模拟SPI通信问题,发送出的数据,接收端接收极不稳定
我做实验,发送端在51单片机的学习板上,接收端在另外一块成熟的板子上,我用跳线连接的。接收端有时候能接收到正确的数据,但大部分有误!是不是跳线造成的呢?像我这样做实验还有...
我做实验,发送端在51单片机的学习板上,接收端在另外一块成熟的板子上,我用跳线连接的。接收端有时候能接收到正确的数据,但大部分有误!是不是跳线造成的呢?像我这样做实验还有哪些地方需要注意到的呢?有劳各位不吝赐教。
展开
2个回答
展开全部
51单片机IO口模拟SPI通信,发送出的数据接收端接收偶尔正确偶尔错误,说明时序上没有大问题,你自己也分析了,问题出在跳线上,电平匹配不会有问题,但波形会变坏。你把时钟放慢,降低通信速率,可能解决这个问题。
更多追问追答
追问
请问降低通信速率?是需要在SCK周期间加延时吗?还是换一个更小的晶振?
我现在做的是按一次按钮,发送三个字节的数据,有时候按的太快还会出现FF或FE的纯错误数据。而按的慢些,比如我发90 41 26,收到可能会是90 40 25、90 41 24之类的。
追答
基本确定是跳线造成延迟,不需要更换晶体,SCK周期间加延时就可以了。你试一下,看看效果,应该和按键快慢没关系,除非你程序有错误。可以尝试固定周期发送固定数据看结果,调试好了再用按键控制。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询