2023版 STM32实战12 IIC总线读写AT24C02

IIC简述

一个多主从的串行总线,又叫I2C,是由飞利浦公司发明的通讯总线

IIC特点

-1- 串行(逐bit传输)

-2- 同步(共用时钟线)

-3- 半双工(收发不同进行)

-4- 总线上的任何设备都可以是主机

开发使用习惯和理解

-1- 通过地址寻址

-2- 数据线的输入输出模式需要经常改变

-3- 通信只需要两根线(SCL)(SDA)

AT24C02介绍

一种为有限的系统空间提供存储方案的芯片,使用IIC总线通信

地址介绍

前四位固定为1010

A2 A1 A0根据硬件设计定义(可查看下方原理图)

R/W位根据收发定义 读取设置为1 发送设置为0

原理图

数据发送顺序

MSB 先发高位

格式详解-开始信号

时钟线高电平的时候数据线呈下降沿(从高电平改为低电平)

格式详解-停止

时钟线高电平的时候数据线呈上升沿(从低电平改为高电平)

格式详解-数据发送时钟线的状态(SCL)

时钟低电平准备数据(红框)
时钟高电平发送数据(蓝色框)

格式详解-数据发送数据线的状态(SDA)

无论地址还是数据,每发送8bit必须等待一个从机应答

主函数

全部工程获取

查看下方头像

相关推荐
Groundwork Explorer11 小时前
W5500 网卡编程初始化与使用指南
python·单片机
单片机仿真设计12 小时前
【proteus仿真】基于 STM32 的智能垃圾桶设计(仿真图+程序)
c语言·stm32·stm32单片机·proteus·毕设·仿真
智闲电子设计13 小时前
STM32 SD 卡 + FatFS 实战:掉电丢数据?f_sync 和簇对齐写救你
stm32·单片机·嵌入式硬件
ヾChen15 小时前
ESP32 OTA 踩坑实录
stm32·单片机·嵌入式硬件·物联网·学习
DevHub15 小时前
probe-rs 教程:一行命令替代 OpenOCD 烧写调试 Cortex-M
arm开发·嵌入式硬件·mcu·rust
小僧景贤15 小时前
嵌入式ADC高阶深度解析:基于STM32底层原理、误差溯源、硬件调校与工业级落地
单片机·嵌入式硬件·stm32 adc·工业级高精度采集·adc 误差校准·量产固件开发
黑猫学长呀16 小时前
【驱动开发常见问题】编译出现rm: cannot remove `asm/arch‘: Is a directory
驱动开发·单片机·嵌入式硬件·bug·编译报错·kernrl
雨田言炎16 小时前
STM32专题之内部FLASH详解
笔记·stm32·单片机
Be for thing18 小时前
【嵌入式成长10】STC89C51蜂鸣器|有源/无源蜂鸣器区分、三极管驱动、定时器播放音乐实战
单片机·嵌入式硬件·学习
郎哥编程课堂19 小时前
单片机零基础训练营第2天:嵌入式开发常用的三种进制
单片机·嵌入式硬件