OpenEdv-开源电子网

 找回密码
 立即注册

扫一扫,访问微社区

正点原子新作:阿波罗STM32F767&F429&探索者STM32F4开发板&赶快来下载资料哦。

查看: 471|回复: 8

两个单片机通过I2C通讯的问题

[复制链接]

  离线 

25

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
181
金钱
181
注册时间
2017-8-10
在线时间
39 小时
发表于 2017-10-20 17:27:27 | 显示全部楼层 |阅读模式
1金钱
两个单片机通过I2C通讯需要什么约定?比如波特率等等要设置一样的么?路过的指点一下,谢谢!

回复

使用道具 举报

  离线 

99

主题

326

帖子

0

精华

高级会员

Rank: 4

积分
579
金钱
579
注册时间
2017-7-12
在线时间
101 小时
发表于 2017-10-20 18:20:51 | 显示全部楼层
波特率,数据位,校验位,晶振。这些一般要一样。软件上的延时最好也一样
回复

使用道具 举报

  离线 

25

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
181
金钱
181
注册时间
2017-8-10
在线时间
39 小时
 楼主| 发表于 2017-10-20 19:25:39 | 显示全部楼层
余一水 发表于 2017-10-20 18:20
波特率,数据位,校验位,晶振。这些一般要一样。软件上的延时最好也一样

就像串口通讯一样?
回复

使用道具 举报

  离线 

99

主题

326

帖子

0

精华

高级会员

Rank: 4

积分
579
金钱
579
注册时间
2017-7-12
在线时间
101 小时
发表于 2017-10-21 16:17:01 | 显示全部楼层
折腾无止境 发表于 2017-10-20 19:25
就像串口通讯一样?

不是,看错了。。。。。
回复

使用道具 举报

  离线 

0

主题

6

帖子

0

精华

新手入门

积分
27
金钱
27
注册时间
2017-11-27
在线时间
4 小时
发表于 2017-11-27 15:13:21 | 显示全部楼层
正点原子公众号
大概说一下:
IIC协议的设置参数比串口通讯的要求低一些,IIC协议主要用于元器件之间的通讯,通讯距离比较短。
硬件上,IIC协议需要3根线,时钟SCL,数据SDA,公共端GND。
需要将用于IIC协议通讯的端口设置为开漏模式(硬件IIC可能不需要此设置),并通过上拉电阻接至VCC,上拉电阻是必须要有的(器件内部集成了上拉电阻外部才能省略)。
时钟和数据线的高电平相当于端口被释放(悬空),只是被上拉电阻拉为高电平。
当需要新增器件时,直接将新增器件的时钟和数据线接入已有总线,硬件上不需要改动。

IIC协议通讯时的时钟信号由主机提供,频率可以很低很低,频率也可以不是固定值,。
IIC协议通讯是主从模式,必然存在主机和从机,主机有绝对的控制权。
IIC协议通讯方向是双向的,通讯时的开始和停止信号及从机地址,读或写都是由主机指定。
IIC协议通讯发送或接收数据都是按字节传输,数据接收方接收完一个字节的数据后需要返回应答信号,否则就需要等待,或者认为传送失败,中止通讯或重新开始通讯。
IIC协议协议支持同时连接多个器件,从机必须要有地址。而主机的地址不是必须的(多主机通讯时才需要,那时候其实主机也只能称为从机了)

以上是我自己的理解,如果有歧义,请以IIC协议官方为准。
回复

使用道具 举报

  离线 

2

主题

259

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1027
金钱
1027
注册时间
2017-10-24
在线时间
62 小时
发表于 2017-11-27 20:30:11 | 显示全部楼层
楼上说的啥波特率啥的那个都是异步串口通讯的内容,不是IIC的。

一般来讲,两个单片机通过IIC通信,要规定一个作为主机,一个作为从机。之后的数据协议就仿照着各类IIC芯片通讯协议就可以了,也可以自拟协议。
十六进制带我飞。
回复

使用道具 举报

  离线 

492

主题

9万

帖子

30

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
126497
金钱
126497
注册时间
2010-12-1
在线时间
1091 小时
发表于 2017-11-27 23:45:21 | 显示全部楼层
两个单片机之间,建议用串口通信。IIC搞起来麻烦,效率也不高。
回复

使用道具 举报

  离线 

16

主题

341

帖子

0

精华

高级会员

Rank: 4

积分
736
金钱
736
注册时间
2017-5-21
在线时间
327 小时
发表于 2017-12-1 17:53:39 来自手机 | 显示全部楼层
我也想用iic做单片机通信,准备用硬件的
回复

使用道具 举报

  离线 

16

主题

341

帖子

0

精华

高级会员

Rank: 4

积分
736
金钱
736
注册时间
2017-5-21
在线时间
327 小时
发表于 2017-12-3 14:23:01 来自手机 | 显示全部楼层
我的32f030双机通信做好了,用CR1的PE位解决数据线释放
回复

使用道具 举报

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

本版积分规则




QQ|联系我们|手机版|官方淘宝店|新浪微博|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2018-5-23 07:15

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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