#STM32 学习笔记(I2C)
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 软件 I2CI2C 是通信协议硬件 I2C是片上外设硬件模块实现协议软件 I2C模拟 I2C用普通 GPIO 引脚CPU 靠软件时序模拟 I2C 协议。核心区别1. 实现方式硬件 I2C芯片内置 I2C 外设SDA/SCL 必须用指定专用引脚。时序由硬件电路自动生成CPU 只读写寄存器收发数据。软件 I2C软 I2C任意普通 GPIO 引脚程序里手动写高低电平、延时模拟起始、停止、应答、读写时序。2. CPU 占用硬件 I2C占用 CPU 少可以配合中断 / DMA发数据时 CPU 可以干别的事。软件 I2CCPU 占用高全程 CPU 循环翻转 IO、延时模拟时序期间不能被打断打断就会通信出错。3. 引脚灵活性硬件 I2C引脚固定只能用芯片分配好的 I2C 引脚。软件 I2C任意 GPIO 都可以当 SDA、SCL引脚随便选布线 PCB 方便。4. 速度硬件 I2C标准 100kHz、400kHz部分芯片支持 1MHz速度稳定。软件 I2C速度受 CPU 主频、延时函数影响一般只能跑到几十400kHz延时不准会直接通信失败。