单片机之间通信

[复制链接]
2240|11
 楼主| zwll 发表于 2012-8-23 21:06 | 显示全部楼层 |阅读模式
就是一个单片机向另一个单片机发送一组数据,后者应该怎么接受数据呢,用指针吗?
llljh 发表于 2012-8-23 21:07 | 显示全部楼层
指针会改变其他变量啊
yinxiangh 发表于 2012-8-23 21:09 | 显示全部楼层
前者发送的数据存放在SBUF里,后者从SBUF里取数据。可以用中断来实现。
 楼主| zwll 发表于 2012-8-23 21:09 | 显示全部楼层
一个好的通讯程序模块应该怎么写?
llljh 发表于 2012-8-23 23:06 | 显示全部楼层
协议肯定要规定最大值
llljh 发表于 2012-8-23 23:06 | 显示全部楼层
通信的头几个字节就应该告知此次数据长度
llljh 发表于 2012-8-23 23:07 | 显示全部楼层
嗯,在一帧数据中一定要包含数据的长度,原机地址,目的地址,协议标示,最后还要有校验和,你才能保证数据收到要收的,并且是对的
renyaq 发表于 2012-8-23 23:08 | 显示全部楼层
当然这个要看通信原理的书。根据你产品的需要来定义你的帧数据结构。
 楼主| zwll 发表于 2012-8-23 23:09 | 显示全部楼层
嗯,我知道了,多谢
hawksabre 发表于 2012-8-28 18:57 | 显示全部楼层
上位机先编写串口通讯即运用串口中断编写的发送程序,定义发送数据,准备发送。在从机上定义接受程序,通过调用存储器中的数据即可  还需要一个通信协议,比如IIC协议、SPI协议、串口通信协议、单总线协议,都可以用在单片机之间的通信,当然你也可以自己定义一个通信协议,上面说的的是单机通信   你也也可以互相通信    呵呵
MatthewH 发表于 2012-8-28 20:37 | 显示全部楼层
两个单片机的时钟周期应该一致,也即通信双方能产生相同的传送速率。
zhl100 发表于 2012-8-29 11:19 | 显示全部楼层
首先两个系统最好共地
选择一种通信方式 串口 spi can iic
规定通信协议
加包头包尾
加CRC16
您需要登录后才可以回帖 登录 | 注册

本版积分规则

885

主题

11314

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部