1. OLED显示器基本原理

通过I2C总线向内存里面写入数据,来调试内存内容,对比特位写1则亮

2. 屏幕初始化

初始化软I2C

屏幕初始化

回调函数的作用:OLED 库本身不实现 I2C 底层收发,通过回调函数,把【I2C 硬件发送】交给用户自己实现。 OLED 库只管组织 OLED 命令、显示数据;真正把字节通过 I2C 总线发出去的工作,调用你写的 I2C 函数完成。

3. 基本概念与基本操作

画笔和画刷

屏幕坐标系

光标

4. 文字相关操作

打印字符串

设置字体

添加别的字时先向map中添加需要的字,然后点击爱心运行

格式化打印字符串

%04d/%02d/%02

设置文本区域

5. 设置文本区域

6. 绘图相关操作

画点

画线

画圆和画矩形

绘制位图

前往image2cpp生成图片代码

7. 硬件 I2C vs 软件 I2C

I2C 是通信协议;硬件 I2C是片上外设硬件模块实现协议;软件 I2C(模拟 I2C)用普通 GPIO 引脚,CPU 靠软件时序模拟 I2C 协议。

核心区别

1. 实现方式

  • 硬件 I2C:芯片内置 I2C 外设,SDA/SCL 必须用指定专用引脚。时序由硬件电路自动生成,CPU 只读写寄存器收发数据。
  • 软件 I2C(软 I2C):任意普通 GPIO 引脚,程序里手动写高低电平、延时,模拟起始、停止、应答、读写时序。

2. CPU 占用

  • 硬件 I2C:占用 CPU 少,可以配合中断 / DMA,发数据时 CPU 可以干别的事。
  • 软件 I2C:CPU 占用高,全程 CPU 循环翻转 IO、延时,模拟时序,期间不能被打断,打断就会通信出错。

3. 引脚灵活性

  • 硬件 I2C:引脚固定,只能用芯片分配好的 I2C 引脚。
  • 软件 I2C:任意 GPIO 都可以当 SDA、SCL,引脚随便选,布线 PCB 方便。

4. 速度

  • 硬件 I2C:标准 100kHz、400kHz,部分芯片支持 1MHz+,速度稳定。
  • 软件 I2C:速度受 CPU 主频、延时函数影响,一般只能跑到几十~400kHz;延时不准会直接通信失败。
Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐