新手问个问题,求帮忙~~~

[复制链接]
1598|13
 楼主| 七彩豌豆荚 发表于 2016-9-27 18:23 | 显示全部楼层 |阅读模式
就是串行传递数据时,比如是我要读一个字节,存到一个字符变量a中,根据时序图来看,它是先传出最低位,那么这么最低位是放在a的最高位还是最低位啊(看了好多写好了的,为什么有的是每接收一位就<<,有的是>>啊),出来贵论坛,望多多帮助
ningling_21 发表于 2016-9-27 18:48 | 显示全部楼层
最低位, 肯定是放在最低的那一位,如XXXX XXXbit

至于<< 和>> 程序的写法是灵活多样的

dirtwillfly 发表于 2016-9-27 21:15 | 显示全部楼层
楼主想多了,用<< 还是>>要看具体程序。
xyz549040622 发表于 2016-9-27 21:22 | 显示全部楼层
用<< 还是>>要看具体芯片是高位先送出,还是低位先送出。
NE5532 发表于 2016-9-28 09:31 | 显示全部楼层
SPI、UART、I2C、1-W,都是串行通信,楼主你到底做的哪个?
yichunshan 发表于 2016-9-28 10:56 | 显示全部楼层
首位非版主发言:数据存储当然是低位放低位高位放高位啦,与读取时序无关。
justtest111 发表于 2016-9-28 13:26 | 显示全部楼层
楼主去看看大端模式和小端模式
 楼主| 七彩豌豆荚 发表于 2016-9-28 13:40 | 显示全部楼层
ningling_21 发表于 2016-9-27 18:48
最低位, 肯定是放在最低的那一位,如XXXX XXXbit

至于> 程序的写法是灵活多样的

主要不明白它最低位先传过来,然后自己放在在这个a中的哪一位
 楼主| 七彩豌豆荚 发表于 2016-9-28 13:40 | 显示全部楼层
justtest111 发表于 2016-9-28 13:26
楼主去看看大端模式和小端模式

嗯嗯,我去看看
 楼主| 七彩豌豆荚 发表于 2016-9-28 13:45 | 显示全部楼层
yichunshan 发表于 2016-9-28 10:56
首位非版主发言:数据存储当然是低位放低位高位放高位啦,与读取时序无关。 ...

主要不明白它最低位先传过来,然后自己先放在在这个a中的哪一位
yichunshan 发表于 2016-9-28 14:02 | 显示全部楼层
七彩豌豆荚 发表于 2016-9-28 13:45
主要不明白它最低位先传过来,然后自己先放在在这个a中的哪一位

低位来了也放低位呗
NE5532 发表于 2016-9-28 14:37 | 显示全部楼层
大端模式和小端模式是指高、低字节的存放顺序,绝不是一个字节内,高低位的存放顺序。
ningling_21 发表于 2016-9-28 14:51 | 显示全部楼层
七彩豌豆荚 发表于 2016-9-28 13:40
主要不明白它最低位先传过来,然后自己放在在这个a中的哪一位

最低位放在第0位
例如:
x 是一个位
if( x) //高电平
a |=0x80;
else
a&=0x7f;
a>>=1;
 楼主| 七彩豌豆荚 发表于 2016-10-1 18:16 | 显示全部楼层
ningling_21 发表于 2016-9-28 14:51
最低位放在第0位
例如:
x 是一个位

也就是说它最低位先放在了a的最高位的那个位子,然后在一个一个挪过去,挪了7次也就挪到了最低位
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

6

帖子

0

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