51单片机上面的IIC协议

1、什么是IIC协议

2、模拟IIC协议

51单片机上面是没有与IIC协议相关的寄存器的(没有相关的硬件),不像串口可以配置对应的寄存器达到目的(比如修改波特率9600 or 115200),要配置IIC只能够根据用户手册里面的时序图,DHT11也是一样的配置法(也就是软件配置法)

3、IIC协议的起始和终止信号

在代码中模拟

4、IIC协议的应答信号

在代码中模拟

5、数据发送的时序

写代码

6、OLED写入指令和数据

看图写话

6、OLED显示一个点

思路:

地址模式:

代码:

7、OLED列地址和雪花BUG解决

OLED列地址

列寻址;

雪花清屏

有雪花的原因是因为寄存器里面还留有其他的数据在里面

清屏函数

8、显示一个字符A

这里的话要借助字符工具

烧录:

9、显示一串汉字

烧录:

10、OLED显示图片

配置图片(bmp格式,128x64个像素)

代码表示:

这个函数其实和清屏函数很像,拿来改一改就行了!

编译运行烧录:

相关推荐

  1. 51单片机与ARM单片机区别

    2024-04-12 10:52:01       24 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-12 10:52:01       5 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-12 10:52:01       5 阅读
  3. 在Django里面运行非项目文件

    2024-04-12 10:52:01       4 阅读
  4. Python语言-面向对象

    2024-04-12 10:52:01       5 阅读

热门阅读

  1. 基于springboot的大学城水电管理系统源码数据库

    2024-04-12 10:52:01       26 阅读
  2. 查看Tomcat和JDK版本信息(32位还是64位)

    2024-04-12 10:52:01       21 阅读
  3. L2-047 锦标赛

    2024-04-12 10:52:01       26 阅读
  4. node与npm常用命令

    2024-04-12 10:52:01       90 阅读
  5. 速盾:为什么会出现高防cdn?它适合哪些行业?

    2024-04-12 10:52:01       71 阅读