目录
简介
上电时序
电压不同
时序不同
使能与复位
CLK时钟
I2C通讯
主从关系
识别设备
通讯格式
简介
任何相对于主板芯片的外挂设备都需要一定的注册挂载流程
(外挂设备:比如摄像头、nfc芯片、显示屏等等)
设备的挂载则需要满足一定的顺序
-
上电时序
普通的电灯可能通上5v电压就可以工作(不同的灯需要的消耗电压功率也是不一样)
但是大部分稍微有功能的设备上电的不单单是一个5v
电压不同
比如摄像头需要三个不通的电压,分别是IOVDD,DVDD,AVDD,每个电压的大小不一样,而且一定要按照厂家的要求进行供电,不能低也不能高。因为摄像头内部的电路会检测电压才能正常工作。
时序不同
除了电压不通,上电时序也不通(上电的时间顺序不一样),就像上面的图中一开始都是低电平也就是不供电,随着时间推移,IOVDD先开始上电,然后是DVDD,最后是AVDD。甚至每两个的时间间隔也是有严谨的要求的,在IOVDD上电后,DVDD必须在最低50us后才能上电,同理AVDD也要在50us后才能上电。
使能与复位
管脚定义 | PWDN | RESET |
具体名称 | 使能脚 | 复位脚 |
作用 | 上电后,控制设备状态 | 上电后,复位设备的状态 |
举例子 (实际参考具体的手册) | PWDN低电平:待机状态 PWDN高电平:工作状态 | 上次供电是工作状态, reset后进入默认准备状态 |
CLK时钟
简称 | CLK,MCLK |
详称 | 英文clock的缩写,中文意思“时钟”; mclk就是main clock,主时钟 |
简介 | 提供固定时间间隔且不间断的脉冲 (由低到高的电平) |
作用 | 为摄像头等设备的内置芯片提供时间,设备按照时间工作 |
I2C通讯
缩写 | SDA | SCL |
称呼 | 数据脚 | 时钟脚 |
简介 | 传输数据 | 传输时钟(数据传输按照这个时钟进行) |
主从关系
如图主设备上通过两根SDA和SCL可以挂着多个从设备。主芯片通过I2C 发起指令,其他从设备只需要应答,从设备不能发起指令。
识别设备
从设备这么多怎么识别呢?每个从设备都有自己的内置芯片,内置芯片会定义自己的id地址,比如A设备地址是0x01,B设备地址是0x02;再主设备发起通讯,想要使用A设备,就通过SDA发送0x01 ,这就是address byte。
通讯格式
如图是SDA的数据传输格式,每次8bit的数据就要求从设备返回一个高电平或者低电平响应
(即正常的从设备在工作时,每次检测到SDA上有数据传输都应该给与回应)
其他数据介绍如下表
control byte | 读写控制 | 通过0和1的高低电平区分读写操作 |
address byte | 设备地址 | 从设备的地址,例如0x01 就发送00000001 |
control byte | 读写控制 | 发送设备地址的同时,控制从设备 |
data byte | 控制数据 | 发送具体的控制数据,比如下发指令打开摄像头 |