新闻详情

新闻详情

首页 / 资讯中心 / 详情

嵌入式学习——ARM(8) IIC

发布时间:2026/9/28 20:57:41来源:尧图网络
嵌入式学习——ARM(8) IIC
一、I2C底层硬件基础GPIO工作模式与线与特性1. 线与线逻辑I2C总线的核心硬件基础多个设备引脚并联任意一方拉低输出总线电平就为低只有全部设备都输出高总线才是高。chipA输出chipB输出总线pad电平1000101110002. GPIO两种输出模式推挽模式内部两个MOS管mos1上拉输出高电平、mos2下拉输出低电平可输出强高/强低。禁止两个MOS同时导通。开漏模式I2C使用仅下拉mos2可以工作上拉mos1永远关闭输出只有低电平或者高阻态。I2C的SDA/SCL必须配置为开漏输出外部接上拉电阻4.7~10kΩ才能实现线与逻辑多设备挂载同一总线。二、I2C通信时序规则总线空闲时SDA、SCL默认保持高电平。START起始信号SCL为高电平时SDA产生下降沿高→低标志一次通信开始。数据传输数据高位先行MSB优先1字节8bit。SCL为低电平主机改变SDA电平SCL为高电平从机读取采样SDA此时SDA必须保持稳定不能变化。应答位第9bitACK应答从机拉低SDA电平0表示成功收到数据NACK无应答SDA保持高电平1表示未收到/通信结束。STOP停止信号SCL保持高电平SDA产生上升沿低→高结束本次通信总线回到空闲状态。I2C地址字节定义1字节8bitbit7~bit1为从机地址最低bit0为读写方向位bit0 0主机写从机接收写操作bit0 1主机读从机发送读操作三、I2C主机写操作流程功能主机向从机的指定寄存器写入多字节数据初始化清除仲裁丢失、I2C中断标志配置为主机发送模式发送START信号发送从机地址写位(bit00)等待从机ACK应答收到NACK则终止本次传输发送目标寄存器地址等待从机ACKNACK则终止循环发送待写入数据每发送1字节等待从机ACK全部数据发送完成后发送STOP停止信号等待总线恢复空闲。四、I2C主机读操作流程I2C读操作特点先写寄存器地址告诉从机要读哪个寄存器再重复起始Restart切换方向执行读数据初始化配置主机发送模式产生START发送从机地址写位(0)等待ACK发送要读取的寄存器地址等待ACKRestart重复起始不发送Stop直接再次产生START信号发送从机地址读位(1)等待ACK切换I2C硬件到接收模式循环读取len个字节读到倒数第2个字节前主机回复ACK继续读下一字节读到最后1个字节主机回复NACK通知从机不再继续传输读完所有数据发送STOP信号释放总线。五、核心要点I2C依靠开漏GPIO外部上拉电阻实现线与支持多从机挂载在同一SDA/SCL总线时序核心SCL高时采样SDASCL低时切换SDASTART/STOP都必须在SCL高电平下产生读操作和写操作流程不对称读需要先写寄存器地址使用Restart重复起始写操作直接连续发送寄存器地址数据ACK/NACK是握手信号从机在写阶段回复ACK读阶段主机控制回复ACK/NACK最后一个字节必须发NACK结束。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

S500装机第一步:FS-IA6B接收机与Pixhawk4对码接线全攻略 2026/9/28 21:56:14

S500装机第一步:FS-IA6B接收机与Pixhawk4对码接线全攻略

1. 为什么S500装机第一步是搞定接收机对码S500这套四轴机架在入门到进阶的航模圈子里热度一直不低,轴距500mm、支持折叠、能挂云台也能挂运动相机,属于那种“既能练手又能干活”的机型。但很多新手拿到套件之后,第一道坎不是焊电调、不是调PI…

阅读更多 →
温控杯设计核心:TEC选型、STM32驱动与PID物理建模 2026/9/28 21:56:13

温控杯设计核心:TEC选型、STM32驱动与PID物理建模

1. 为什么温控杯不能只靠“加热片继电器”凑合?——从热力学失配讲起我第一次做温控杯时,用的是某宝爆款的PTC加热片配普通继电器,目标温度设60℃,结果实测水温在52℃到68℃之间反复震荡,手摸杯壁忽冷忽烫,…

阅读更多 →
CLI-Anything:面向中高级开发者的命令行能力操作系统 2026/9/28 21:56:05

CLI-Anything:面向中高级开发者的命令行能力操作系统

1. 项目概述:CLI-Anything 是什么,它解决的不是“命令行怎么用”,而是“为什么命令行总在重复造轮子”CLI-Anything 这个名字乍看有点抽象,但拆开来看就非常直白:“CLI”是命令行界面(Command-Line Interfa…

阅读更多 →
大模型应用降本实战:从成本构成到部署架构选型全解析 2026/9/28 21:55:58

大模型应用降本实战:从成本构成到部署架构选型全解析

企业做AI应用,最容易被低估的不是模型效果,而是账单。我见过不少团队,Demo阶段用在线API跑得很欢,一上生产,月成本直接飙到几十万,CTO看到账单当场沉默。也有团队花大力气私有化部署,结果GPU利用…

阅读更多 →
贝叶斯优化实战:ax调度框架接入训练流水线全攻略 2026/9/28 21:55:51

贝叶斯优化实战:ax调度框架接入训练流水线全攻略

说个最近遇到的事:我们团队原先调一组超参数,靠的是“抽签式”的网格遍历,几十台训练机跑了一整天,最后拿到手的组合却连第二名都比不上。换到 ax 调度之后,情况完全反过来了。ax 是 Adaptive Experimentation 的开源实…

阅读更多 →
Agent-native系统设计实战:从模型驱动到工程落地 2026/9/28 21:55:51

Agent-native系统设计实战:从模型驱动到工程落地

agent-native 这个词,我最早是在一份内部分享文档里注意到的,作者用它来形容下一代业务系统的设计方式:所有能力单元不再按接口、按服务、按数据表来划分,而是按 agent 来划分。当时我的第一反应是,这不就是把过去几年…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉