I2C通信实现OLED屏幕

这篇博客介绍了如何通过I2C通信协议使用u8g2库在STM32单片机上实现对OLED屏幕的操作。详细讲解了I2C的基本原理,包括空闲状态、起始与停止信号、应答信号ACK、数据有效性以及数据传送的过程。同时,还探讨了如何添加和应用u8g2库来驱动OLED屏。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

I2C通信

在这里插入图片描述

半双工通信

基本原理

空闲状态

I2C总线的SDA和SCL两条信号线同时处于高电平时,规定为总线的空闲状态

起始信号与停止信号

起始信号:当SCL为高期间,SDA由高到低的跳变;启动信号是一种电平跳变时序信号,而不是一个电平信号

停止信号:当SCL为高期间,SDA由低到高的跳变;停止信号是一种电平跳变时序信号,而不是一个电平信号

应答信号ACK

发送器每发送一个字节(8bit)就在时钟脉冲9期间释放数据线,由接收器反馈一个应答信号。应答信号为低电平时,规定为有效应答位,表示接收器已经成功接受了该字节;应答信号为高电平时,规定为非应答位(NACK),一般表示接收器接收该字节失败
接受器在第9个时钟脉冲之前的低电平期间将SDA线拉低,并且确保在该时钟的高电平期间位稳定低电平

数据有效性

时钟信号为高电平期间,数据线必须保持稳定,只有时钟线信号为低电平期间,数据线上的高电平或低电平状态才允许变化(不然就停止了)即数据在SCL的上升沿到

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值