在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!)    创芯人才网--重磅上线啦!
查看: 6294|回复: 18

两个单片机进行串口通讯时

[复制链接]
发表于 2004-4-22 11:26:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
两个单片机进行串口通讯时,是不是在发送数据时,会自动给要发的数据加上起始和停止还有校验位呀?
如果我想连续传送32字节的数据,在传送前和后自己加起始和停止标志行吗?
  比如在发送前发5a,告诉对方是发送开始,然后发32字节数据,最后再发a5结束。该怎么做呢?
发表于 2004-4-22 11:32:26 | 显示全部楼层

两个单片机进行串口通讯时

单片机发送数据时,会自动加上起始和停止位(是bit),如果你设置了校验位,也会自动加校验位。
在传送多字节数据包时,可以加起始和停止标志(标志字节),或者采用一定的帧格式,按照你的要求按顺序发送就可以了。
 楼主| 发表于 2004-4-22 12:37:45 | 显示全部楼层

两个单片机进行串口通讯时

如果按这种方法发数据包,那会不会给自动加上起始和停止位呢?串口通讯方式该怎么设定呢?
发表于 2004-4-22 12:54:44 | 显示全部楼层

两个单片机进行串口通讯时

按这种方法发数据包,每个字节还是会自动加上起始和停止位的,这是异步通信的特点。串口通讯方式应该安装你的要求,设定波特率、数据位、停止位、校验位等等。
 楼主| 发表于 2004-4-22 13:13:10 | 显示全部楼层

两个单片机进行串口通讯时

那如果接收方要是不识别这自动加的起始和停止位呢?
如果我用串口方式0方式发送这32字节的数据包可以吗?
发表于 2004-4-22 13:49:21 | 显示全部楼层

两个单片机进行串口通讯时

收发两方必须设置成一样,才可以正常通信。
BTW:有所谓的自动识别的异步串行接口,只是先设定某种方式,看有没有应答,如果不相符,接收方没有收到正确的握手信号,自然没有应答,然后再换另一种方式,直到双方配置相同,就能正常通信。
 楼主| 发表于 2004-4-22 16:59:27 | 显示全部楼层

两个单片机进行串口通讯时

你的意思是只要双方都设置同一个收发方式就行了吧。并且设置一个握手信号。
我还想问一下,那如果我想在接收方收到一个请求发送信号后,就开始发送一个32字节的数据,我该怎么用程序实现呢?你能否给点提示呀。这32字节的数据是不是得先存在寄存器中然后逐个得送入sbuf中,发出呢?
发表于 2004-4-22 17:03:32 | 显示全部楼层

两个单片机进行串口通讯时

逐个送入sbuf中,而且要确保前1个byte发送结束后,才能在写入sbuf。
 楼主| 发表于 2004-4-22 17:18:17 | 显示全部楼层

两个单片机进行串口通讯时

哦,有点眉目了,我还想问你一下,校验和是什么意思?是怎么实现的呢?
发表于 2004-4-22 17:23:56 | 显示全部楼层

两个单片机进行串口通讯时

校验和可以是你自己定义的某一串数据(通常是字或字节)的和,用于校验你的数据包是否正确。
在要求高可靠性通信的场合,最好不采用校验和的方法,校验和只能检验出大约40%左右的错误。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-13 16:52 , Processed in 0.066276 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表