嵌入式实践教程--【裸机程序】I2C裸机

简介: 嵌入式实践教程--【裸机程序】I2C裸机

一、时序图



image.pngimage.pngimage.png


1、平时SDA和SCL常高

2、 开始信号:SCL保持高电平,SDA有一个下降沿脉冲

3、数据在SCL低电平时变化,在SCL高电平时稳定


二、设备地址、寻址过程、写数据



1、设备地址


设备地址共7bit,其中1010固定,A2A1A0取决于连接。读写的确定由第8位确定。


2、ACK信号


在第9 个CLK 里,I2C 主机释放SDA,由从机驱动驱动SDA.若从机发现该“设备地址”

是自已的,是把SDA 拉为低电平。这时主机就能知道此“设备地址”的设备是存在的,后面就能再发数据了。


后面接着再8 个CLK 时钟,是具体的数据,是与设备有关的。


3、主机到从机的读


image.png

image.png


寻址后的 8 个时钟是由 从机响应,从机会把设备驱动到 SDA 中,最后的第9 个时钟也

是ACK,但是由主机响应。就是说主机已经接收到数据了,就到ACK 拉为低电平。


4、结束传输


SCL 时钟信号在高电平期间,SDA 由低电平变成高电平时结束传输。

相关文章
|
2月前
|
异构计算 Windows
嵌入式硬件电路常用设计软件有哪些
嵌入式硬件电路常用设计软件各有其特点和优缺点。在选择软件时,用户应根据自己的实际需求、预算以及学习曲线等因素进行综合考虑。
82 7
|
11月前
|
存储 监控 安全
【探索嵌入式虚拟化技术与应用】— 虚拟化技术深入浅出自学系列
【探索嵌入式虚拟化技术与应用】— 虚拟化技术深入浅出自学系列
189 2
|
11月前
|
安全 C++ 容器
嵌入式c++软件开发笔记第三讲
嵌入式c++软件开发笔记第三讲
51 0
|
存储 网络协议 数据库
一步步实现SDDC-嵌入式PSC的VC部署
实验摘要: 1>嵌入式PSC的VC部署第一阶段 [难度★复杂度★] 2>嵌入式PSC的VC部署第二阶段 [难度★复杂度★]
一步步实现SDDC-嵌入式PSC的VC部署
|
Java 程序员 Linux
什么样的人适合学习嵌入式?
随着嵌入式的发展,越来越多的人想要进入嵌入式这个行业里来。但是学习嵌入式并不是那么简单的,在学习嵌入式Linux之前,肯定要有C语言基础。。C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能。
2406 0
|
芯片 C语言 人工智能
嵌入式基础怎么学 嵌入式好学么
关于嵌入式基础和物联网,行业外的人员并不是很了解,基础不同对其了解的也不同。但是,应该明确哪些是必备的基础知识,哪些应该先学,哪些应该后学?哪些必须通过实践才能获得?哪些是与具体芯片无关的通用知识?哪些是与具体芯片或开发环境相关的知识?     嵌入式基础怎么学 嵌入式好学么   ①嵌入式系统软件硬件密切相关,一定要打好软硬件基础。
1447 0