I2C通信协议&MPU6050

目录

I2C通信协议

硬件

 软件

 I2C时序

MPU6050 


I2C通信协议

硬件

 为了避免总线没协调好导致电源短路,配置为开漏输出,所有设备输出低电平不输出高电平,即右图。又为了避免高电平造成的引浮空,(第三点)总线外接上拉电阻(弱上拉)

好处:1.避免短路问题;

2.避免引脚模式频繁切换 开漏+弱上拉同时兼具输入输出。开漏模式输出高电平相当于断开引脚,在输入模式之前,可以输出高电平;

3.这个模式下会出现“线与”现象,有一个或多个设备输出低电平总线低电平,全部为高电平才处于高电平,可用于多主机模式下时钟同步和总线仲裁。


 

GPIO口这里都要配置成复用开漏输出。复用,GPIO口的状态交由片上外设来控制 

 起始,从机地址,应答,数据1,应答,数据2,应答。

当前地址读 

 

 软件

一主多从时 起始和终止都是由主机产生,从机不允许

这里是高位先行,串口是地位先行。

主机拉低SCL将数据放在SDA线上,释放SCL从机读取SDA上的数据

SCL低电平从机放数据,高电平主机读数据(实线是主机控制,虚线是从机)

 发送应答/接收应答

 I2C时序

读写后地址指针会+1。同时要注意给应答

指定地址写:reg address(寄存器地址)

起始      重复起始      停止

 


MPU6050 (具体看两个手册)

 3.3V稳压器

 

 107 电源管理寄存器1 操作之前要解除睡眠,否则操作其他寄存器是无效的

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值