打印
[应用相关]

串口发送16位数据是反的

[复制链接]
694|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
bqyj|  楼主 | 2019-8-25 16:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我将ADC采到的数据存入16位数组中,然后串口依次发送字节,可是发送得到的数据是反的,比如0x0FFF,收到的两个
字节就是0xFF, 0x0F。这给我写上位机处理数据造成了困扰,这是不是大小端的问题,上位机如果直接用16位数组直接存储就可以了

使用特权

评论回复
沙发
huanghuac| | 2019-8-25 16:53 | 只看该作者
自己把发送顺序调一下就行了

使用特权

评论回复
板凳
happy_10| | 2019-8-25 16:58 | 只看该作者
按顺序存入你的16位数组里面,就会正确还原,我们常用的都是小端模式,低字节占据低地址,这个根本不是问题,只是你肉眼看上去是反的,但这就是在内存中的顺序

使用特权

评论回复
地板
yszong| | 2019-8-25 17:02 | 只看该作者
先发高位字节,再发低位字节。

使用特权

评论回复
5
bqyj|  楼主 | 2019-8-25 17:05 | 只看该作者
楼主改成8位发送,不要用16位发送即可

使用特权

评论回复
6
wenfen| | 2019-8-25 17:07 | 只看该作者

小端模式,低字节占据低地址

使用特权

评论回复
7
zhuhuis| | 2019-8-25 17:08 | 只看该作者
串口收到的数据肯定是对的。

使用特权

评论回复
8
tian111| | 2019-8-25 17:10 | 只看该作者
可能错位了。

使用特权

评论回复
9
songqian17| | 2019-8-25 17:11 | 只看该作者
串口没有16位数据的。

使用特权

评论回复
10
gongche| | 2019-8-25 17:13 | 只看该作者
可以使用字符串。

使用特权

评论回复
11
huwr| | 2019-8-25 17:15 | 只看该作者
你发送的数据是什么顺序

使用特权

评论回复
12
heweibig| | 2019-8-25 17:17 | 只看该作者
你怎么判断是开始发送的

使用特权

评论回复
13
jlyuan| | 2019-8-25 17:18 | 只看该作者
线找到起始位,然后发送数据。

使用特权

评论回复
14
jiahy| | 2019-8-25 17:20 | 只看该作者
线找到起始位,然后发送数据。

使用特权

评论回复
15
kangzj| | 2019-8-25 17:21 | 只看该作者
发送的字节先后顺序错误。

使用特权

评论回复
16
xxmmi| | 2019-8-25 17:21 | 只看该作者
如果发送数据正确,就没有问题。

使用特权

评论回复
17
zyf部长| | 2019-8-25 17:22 | 只看该作者
将ADC转换为字符串可以直接识别。

使用特权

评论回复
18
戈卫东| | 2019-8-25 17:23 | 只看该作者
正好赶上!

使用特权

评论回复
19
bqyj|  楼主 | 2019-8-25 17:23 | 只看该作者
       
其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先

使用特权

评论回复
20
戈卫东| | 2019-8-25 17:24 | 只看该作者
大家不要吵。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

390

主题

4526

帖子

2

粉丝