当前位置: 首页 > ai >正文

OpenHarmony标准系统-HDF框架之I2C驱动开发

请添加图片描述

文章目录

  • 引言
  • I2C基础知识
    • 概念和特性
    • 协议,四种信号组合
  • I2C调试手段
    • 硬件
    • 软件
  • HDF框架下的I2C设备驱动
    • 案例描述
      • 驱动Dispatch
      • 驱动读写
  • 总结


引言


I2C基础知识

概念和特性

  • 集成电路总线,由串网12C(1C、12C、Inter-Integrated Circuit BUS)行数据线SDA和串行时钟线SCL组成,对于-个12C接口的器件,至少还需要电源和地线
  • 12C总线是双向、半双工传输支持多主机、多从机同时挂接在一条12C总线上,多主机同时请求总线时,可以通过冲突检测和仲裁机制防止总线数据被破坏;
  • 每个从设备都有唯一的地址,从设备可被寻址(又称被选中)只有被选中的从设备才能参与通信,每次通信只有一个主设备和个从设备参与;
  • 主设备发起一次通信,从设备响应:主从设备都可以发送和接收数据,SCL时钟由主设备发出,在工程中常见MCU或SOC作为主设备,主从设备地位可能交换。

12C是串行低速总线,常见传输速度如下
- 标准模式(Standard-mode):速率高达100kbit/s
- 快速模式(Fast-mode):速率高达400kbit/s
- 快速模式+(Fast-mode Plus):速率高达1Mbit/s。
- 高速模式(High-speed mode):速率高达3.4Mbit/s
工程中常见兼容标准模式和快速模式的12C从设备。

  • 一条12C总线上的所有从设备都有一个唯一的设备地址,不能与线上的其他设备地址重复;
  • 设备地址有7位和10位两种格式,常见7位格式;
  • I2C主设备对从设备可执行写操作和读操作,通过写地址和读地址区分写操作和读操作;

设备地址7位:1010000 (0x50)
写地址8位:设备地址左移1位,末位补0,10100000 (0xA0)
读地址8位:设备地址左移1位,末位补1,10100001 (0xA1)


  • 同一个I2C从设备可能具有多个设备地址,通常可通过从设备的管脚配置,以I2C接口的ROM芯片AT24C256为例:
    在这里插入图片描述
    在这里插入图片描述

协议,四种信号组合

在这里插入图片描述


I2C调试手段

硬件

在这里插入图片描述


软件

在这里插入图片描述


HDF框架下的I2C设备驱动

案例描述

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


驱动Dispatch

在这里插入图片描述


驱动读写

在这里插入图片描述


在这里插入图片描述


总结

在这里插入图片描述

http://www.xdnf.cn/news/12894.html

相关文章:

  • 关于我对各开发语言的看法与接下来的文章内容
  • Java 系统上线全流程指南:从开发到部署、监控与高可用架构
  • 【OpenCV】相机标定之利用棋盘格信息标定
  • 嵌入式学习--江协stm32day7
  • 莫兰迪高级灰总结计划简约商务通用PPT模版
  • 【Gateway断言(predicates)设置】
  • LeetCode 0386.字典序排数:细心总结条件
  • STM32标准库-ADC数模转换器
  • 机器学习与深度学习16-概率论和统计学01
  • 神经网络-Day49
  • 实现p2p的webrtc-srs版本
  • 操作系统的概念,功能和目标
  • 鸿蒙 Stege模型 多模块应用
  • HubSpot推出与ChatGPT的深度集成引发兴奋与担忧
  • 【C++】IO库 IO流
  • 2025年渗透测试面试题总结-小鹏[社招]车联网工程师(题目+回答)
  • 节拍定时器是什么?
  • 基于鸿蒙(HarmonyOS5)的打车小程序
  • NL2SQL模型应用实践-解决上百张表筛选问题
  • .NET开发主流框架全方位对比分析
  • linux下安装elasticsearch及ik分词器
  • 从零开始的python学习(八)P108+P109+P110+P111+P112+P113+P114
  • 【PySpark安装配置】01 搭建单机模式的PySpark开发环境(Windows系统)
  • 深入解析 JavaScript 中 var、let、const 的核心区别与实践应用
  • MybatisPlus使用DB静态工具出现找不到实体类的报错
  • Python基于OpenCV的全景图像拼接系统(附源码,文档说明)
  • 【DAY43】复习日
  • 《高等数学》(同济大学·第7版)第三章第三节“泰勒公式“
  • 微机原理与接口技术,期末冲刺复习资料(三)
  • 《前端面试题:JavaScript 闭包深度解析》