I2C操作时序问题总结(内附大量实用代码和详解)

更新时间:2024-03-20 15:54:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

I2C 总线在单片机操作中用到的很多。特别是以I2C总线进行数据和命令传输的器件,比如AT24C02存储芯片等。特此做了相关操作过程中经常用到的操作和一些操作的解释。相信看完之后,肯定会对I2C总线有深刻的理解。 I2C总线操作(从高位开始进行读写操作)

写操作时序

启动之后先进行一个字节的指令写入操作,然后进行应答;在进行字节数据的传送;然后再进行应答; I2C读操作时序

基本上与写操作相同,不同的是读操作只需进行指令的写入,不写数据(应该不绝对),

最后主机产生非应答信号,结束数据的读取;

在对E2PROM(24C02)进行操作时,写入写操作指令后,然后写入需要操作的存储器地址号,最后写入数据。且每个存储器地址只能赋值一次,重复对该存储器地址赋值会使前一个数据丢失。 读操作过程中需对将指令改写为读指令,在读取数据时需要写入指令指明需要读出数据时的存储器地址号

下面是对24C02的写操作和读操作

void write_add(uchar address,uchar date) {

start();

write_byte(0xa0); //写指令 respons();

write_byte(address); //写入要操作的存储器地址 respons();

write_byte(date); //写入存储器数据 respons(); stop();

本文来源:https://www.bwwdw.com/article/89o8.html

Top