在OLED上显示各种各样的数据(文字、字母、图片)

今天来说一说OLED,也同时记录一下成果。

在学习OLED之前需要知道IIC协议,不了解的可以看(IIC协议相关_dxdlnu的博客-CSDN博客

什么是OLED? OLED_百度百科 (baidu.com)

 一.OLED写入指令和数据

因为OLED是有写入指令/数据的操作的,至于为什么有在后面编写程序的时候就能知道。

先看一下如何写入指令和数据?

CO和D/C说明如下:

根据协议图,封装一个写入指令的函数

 封装一个写入数据的函数:

**********87行有误应该是0x40写入数据

二.OLED显示一个点的思路及代码实现

首先思考,一个OLED屏有那么大,我们如何在一个自己想要的地方显示一个点呢?这就先要解决,OLED显示方式的问题。

首先我们要了解OLED显示屏它的构成:

我们可以看到,这里Page共有8行,并且每一个Page里有8位(bit),也就是一个Page的一列代表一个字节。

大致了解之后我们看看OLED如何寻址呢?

这里有三个寻址方式(前两种最常见),图还是比较形象的不做过多解释。

如何在Keil中设定自己想要的寻址模式?

 

比如这里我们想要定为页寻址模式,我们可以在代码的发送cmd并写入0x20,再发送0x02,成功进入页寻址模式。

接下来用代码实现一个点。 

在OLED上显示一个点主要就是这三大步

以下对代码逐行分析:

141行.首先是初始化Init,这个手册里有,直接cv过来就好(我们的Cmd和Data函数已经写好了)

 142.行选择一个位置

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值