duanliangcong 发表于 2015-12-21 14:46:12

I2C通讯接收问题,麻烦大哥们抽出点时间看一下

昨晚试了一下两个arduino uno,通过I2C通讯,主机发送100从机接收的是一百,主机发送200从机接收的也是200。可是当我从机发送256的时候,从机接收的结果竟然是1。试了多次后我才发现发送的数据不能大于255。可是我要发送360。希望从机接收的也是360,有什么办法可以解决呢

275891381 发表于 2015-12-21 15:07:33

肯定不能大于255了 ,360=255+105

苦苦砸坏五块石 发表于 2015-12-21 15:27:07

:)qqwdawawdawd

duanliangcong 发表于 2015-12-21 15:49:06

275891381 发表于 2015-12-21 15:07 static/image/common/back.gif
肯定不能大于255了 ,360=255+105

是啊,有什么办法能解决这个问题呢

6881087 发表于 2015-12-22 08:18:47

主機將360 分為兩個Byte 發送
從機接收兩個Byte 後合起來

shihaipeng04 发表于 2015-12-22 11:02:12

360 = 101101000 再拆成两截就可以了, 00000001 ,01101000

ketose 发表于 2015-12-22 17:14:23

1个字节8位,最大表示255,最小表示0
你要发360大于255,就要用short型了,两个字节来表示。

duanliangcong 发表于 2015-12-22 22:23:38

ketose 发表于 2015-12-22 17:14 static/image/common/back.gif
1个字节8位,最大表示255,最小表示0
你要发360大于255,就要用short型了,两个字节来表示。

xiexie,以解决
页: [1]
查看完整版本: I2C通讯接收问题,麻烦大哥们抽出点时间看一下