你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

官方出品:RT-Thread I2C设备应用指南

[复制链接]
rtthread 发布时间:2018-4-16 15:15
本应用笔记以驱动I2C接口的6轴传感器MPU6050为例,说明了如何使用I2C设备驱动接口开发应用程序,并详细讲解了RT-Thread I2C设备驱动框架及相关函数。7 A# a6 t% V( _2 o2 L# s
8 `. k* e9 c9 r+ K" @2 u
1 本文的目的和结构
' g6 F3 {* z+ ^1 y1.1 本文的目的和背景
4 F5 ]" Y. o) w  b4 j
I2C(或写作i2c、IIC、iic)总线是由Philips公司开发的一种简单、双向二线制(时钟SCL、数据SDA)同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息,是半导体芯片使用最为广泛的通信接口之一。RT-Thread中引入了I2C设备驱动框架,I2C设备驱动框架提供了基于GPIO模拟和硬件控制器的2种底层硬件接口。
1.2 本文的结构( l9 v: C3 p: {
本文首先描述了RT-Thread I2C设备驱动框架的基本情况,然后详细描述了I2C设备驱动接口,并使用I2C设备驱动接口编写MPU6050的驱动程序,并给出了在正点原子STM32F4探索者开发板上验证的代码示例。
2 I2C设备驱动框架简介
: Z8 u7 I" f' E$ k! [5 }- J; ]- |
在使用MCU进行项目开发的时候,往往需要用到I2C总线。一般来说,MCU带有I2C控制器(硬件I2C),也可以使用MCU的2个GPIO自行编写程序模拟I2C总线协议实现同样的功能。
RT-Thread提供了一套I/O设备管理框架,它把I/O设备分成了三层进行处理:应用层、I/O设备管理层、底层驱动。I/O设备管理框架给上层应用提供了统一的设备操作接口和I2C设备驱动接口,给下层提供的是底层驱动接口。应用程序通过I/O设备模块提供的标准接口访问底层设备,底层设备的变更不会对上层应用产生影响,这种方式使得应用程序具有很好的可移植性,应用程序可以很方便的从一个MCU移植到另外一个MCU。
本文以6轴惯性传感器MPU6050为例,使用RT-Thread I2C设备驱动框架提供的GPIO模拟I2C控制器的方式,阐述了应用程序如何使用I2C设备驱动接口访问I2C设备。
QQ截图20180416151030.png
图2-1 RT-Thread I2C设备驱动框架
3 运行I2C设备驱动示例代码7 c( c9 t- y- c4 o  B( ~
3.1 示例代码软硬件平台
. O% W' m% r5 j0 T
  • 正点原子STM32F4探索者开发板
  • GY-521 MPU-6050模块
  • MDK5
  • RT-Thread 源码/ T& l) A" B0 ?6 h4 i: F* h7 J
正点原子探索者STM32F4 开发板的MCU是STM32F407ZGT6,本示例使用USB串口(USART1)发送数据及供电,使用SEGGER JLINK连接JTAG调试。/ R  |+ I! k- ?4 r
AN0003 RT-Thread应用笔记之I2C设备应用指南.pdf (1.96 MB, 下载次数: 95)
收藏 评论5 发布时间:2018-4-16 15:15

举报

5个回答
黑皮男 回答时间:2018-4-16 20:08:31
支持
lifengheart 回答时间:2018-4-30 21:07:09
学学
newbobde163 回答时间:2018-7-28 00:15:21
学习学习,谢谢分享
zhenyu 回答时间:2018-7-31 13:30:02
暂时还用不上,先下下来备着!
princepeng11 回答时间:2020-3-1 22:41:00
感谢分享,正在学习RT-Thread设备驱动
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版