找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3768|回复: 4
收起左侧

求教怎样用串口发送大于255的数然后把它显示出来

[复制链接]
ID:640309 发表于 2019-11-13 17:46 | 显示全部楼层 |阅读模式
以十六进制发送一个0~65536之间的任意数,当单片机收到后在数码管上动态显示出来,波特率自定
串口能发送的数最大是255,按我的思路应该是把大数分成两部分然后分别串口储存,求教具体操作
回复

使用道具 举报

ID:617449 发表于 2019-11-13 22:20 | 显示全部楼层
发送端取余后再发送,到接收端重新组合数据
回复

使用道具 举报

ID:25310 发表于 2019-11-14 05:59 | 显示全部楼层
串口一次发8位数据,发两次就可以发一个16位数,比如先发高8位,再发低8位。  
设置一个数据格式比如:AA 12 34 55  ,其中头尾各一个识别码,中间2位是数据,接收端放到数组后检验头尾,正确后取数字。
回复

使用道具 举报

ID:213173 发表于 2019-11-14 08:02 | 显示全部楼层
无标题.jpg
回复

使用道具 举报

ID:123289 发表于 2019-11-16 09:37 | 显示全部楼层
建议:用三个字节发,且用BCD码。
好处:
1、显示时不用再做BCD转换。
2、共用6位数,0-65536只用5位,多出1位可用于做同步位。例如规定首位必须是F,这样接收时收到Fx时就知道这个字节的x是万位,接下来再收到的是千百十个。这样不会组错。
坏处:
浪费一个字节。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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