0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

I2C子系统SW Architecture

麦辣鸡腿堡 来源:嵌入式Linux系统开发 作者:嵌入式Linux系统开 2023-07-22 16:01 次阅读

I2C SW Architecture

图片

【driver 驱动层】由普通驱动工程师负责,【i2c 核心层】由 Linux 提供,【i2c 核心层】以下由芯片原厂负责。

I2C 子系统通过 i2c-core 将 i2c 设备驱动和 i2c 总线驱动进行了分离,从而使得 i2c 设备驱动中不用关心 i2c 总线传输细节,专注于 i2c 设备逻辑的实现。

抽象如下:

图片

I2C 总线驱动重点是 I2C 适配器(控制器)驱动,这里用到两个重要的数据结构:i2c_adapter 和 i2c_algorithm。其中,Linux 内核将 SOC 的 I2C 适配器(控制器)抽象成 i2c_adapter,i2c_algorithm 只是一些 i2c 传输的实现函数合集。

在 Linux 系统中有如下节点:

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 子系统
    +关注

    关注

    0

    文章

    100

    浏览量

    12265
  • I2C
    I2C
    +关注

    关注

    28

    文章

    1347

    浏览量

    120846
收藏 人收藏

    评论

    相关推荐

    80 第23.1讲 I2C实验-I2C协议和6U的I2C控制器详解 - 第2

    程序代码I2C协议
    充八万
    发布于 :2023年08月17日 10:03:33

    全面掌握面试必考题I2C协议 - 第12节

    I2C协议
    充八万
    发布于 :2023年09月01日 19:07:43

    I2C规范,I2C总线原理

    ................................................... 3518 F/S 模式I2C 总线系统的双向电平转换器
    发表于 04-09 18:34

    MSP430的I2C通信

    + BIT7;// Assign I2C pins to USCI_B0UCB0CTL1 |= UCSWRST; // Enable SW resetUCB0CTL0 = UCMST + UCMODE_3
    发表于 03-17 20:56

    I2C

    在看数据手册的时候看到I2C Boot Device Configuration中有这么一个选项  10       address                               0
    发表于 06-24 01:28

    请问EVM6657的I2C boot模式开关中SW5 (Pins [6:4])的含义是什么?

    ])=与I2C无关SW5 (Pins [1:3])=与I2C无关SW5 (Pins [4])=Speed?SW5 (Pins [5])=Ad
    发表于 06-25 03:52

    PIC32MK I2C E12和E13由I2C4控制

    1024MCF064)没有任何影响。只有I2C4,SDA始终是Low和SCL高。有人已经在PIC32 MK上实现这个模块(甚至使用和声,PLIB不工作)?似乎只有一种方法是使用SW解决方案?我需要I2C来配置一些组件
    发表于 11-19 10:43

    到底什么是I2C

    )。TI的用于构建I2C树状图的产品组合可以分为三个功能,如图1所示:缓冲转换器、I / O扩展器和I2C开关。 图1:具有各种I2C功能设备的电
    发表于 07-23 04:45

    I2C简介

    与 SMBus 2.0 兼容。它可以用于多种用途,包括 CRC 生成和验证、 SMBus(系统管理总线)以及 PMBus(电源管理总线)。根据器件的不同,可利用 DMA 功能来减轻 CPU 的工作量二.IIC物理层它是一个支持多设备的总线。“总线”指多个设备共用的信号线。在一个
    发表于 08-10 08:10

    I2C的简介

    的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。I2C是半双工通信I2C只有两根双向通信线: 一根是时钟线SCL, 一根是数据线SDAI2C总线通过上拉电阻接电源
    发表于 08-20 06:58

    什么是软件I2C和硬件I2C

    学习I2C总线通信协议,完成基于I2C硬件协议的AHT20温湿度传感器的数据采集,并将采集的温度-湿度值通过串口输出。具体任务:1)解释什么是“软件I2C”和“硬件I2C”? (阅读野
    发表于 08-23 06:19

    I2C使用步骤

    Phiilps 公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要 USART、CAN 等通讯协议的外部收发设备现在被广泛地使用在系统内多个集成电路(IC)间的通讯。软件I2C将芯片的两个
    发表于 08-23 06:22

    I2C怎么使用

    硬件I2C(中断方式)以STC8F2K08S2单片机为例一、I2C相关的寄存器STC8系列单片机硬件I2C使用教程(一)二、I2C中断相关的
    发表于 12-02 08:16

    linux I2C子系统的相关资料分享

    文章目录linux I2C子系统框架在设备树中添加从设备信息,mpu5060I2C driver 程序的编写mpu6050 I2C程序具体实现linux
    发表于 02-10 06:06

    I2c协议和时序的相关资料推荐

    文章目录I2c协议和时序I2c介绍I2c硬件连接I2c总线的信号I2c总线写时序I2c总线读时序
    发表于 02-10 06:51