OLED显示屏(内含:1.调试方式+2.OLED简介+3.硬件电路+4.驱动函数+5.软件代码部分+6.代码部分注释)

简介: OLED显示屏(内含:1.调试方式+2.OLED简介+3.硬件电路+4.驱动函数+5.软件代码部分+6.代码部分注释)

1.调试方式:


b74aa2d30c0d464ca878677dff9afbd4.png


注:串口调试可以理解为将电脑用作单片机的显示屏。优点:电脑可以显示图像等,功能强大。


缺点:需要电脑,不方便,且多为信息流的方式。后面的信息会覆盖前面的信息。


显示屏调试:优点:可以覆盖刷新显示。缺点,显示屏小,不能显示图像等高端功能。(推荐)


Keil调试:如电灯调试,注释调试法等。


2.OLED简介:


e512eb37350e46d5804f471a23423547.png


注: 功耗低(每个像素都是单独的发光二极管).响应速度快(使OLED有更高的刷新率)。宽视角(任何角度都能看清).


分为4针脚和7针脚(占用IO口数量不同)


4针脚的是IIC通信协议,7针脚的是SPI通信协议。


3.硬件电路:


4238f9a60a0a4ef0ac6c74fc087c8985.png


注:SCL和SDA接IIC通信引脚。


4.驱动函数:


91d06dc85d4c440785df320ea76111a4.png


接线图如下:


af60a7a6cea34375a0fb7ea584228354.png


实物图如下:


804972f495134ae19069cb16fb6567f7.png


5.软件代码部分:


OLED配置图如下:


3ed49dafc9874ddfbc0301b238e411dd.png


OLED.c 等三个函数已经包装好,上传到git中,名字如下,@qq1483078351a


可以直接免费下载使用.


1d4f5353d6dd463093c2dcf6d17f2c74.png


main.c部分代码如下:


9072bded36c142ecb1a78aa0b2210083.png


#include "stm32f10x.h"                  // Device header
#include "Delay.h"
#include "OLED.h"
int main(void)
{
    OLED_Init();
    OLED_ShowChar(1, 1, 'A');//在第一行一列显示A,字符需要用''
    OLED_ShowString(1, 3, "HelloWorld!");//在第一行第三列开始显示HelloWorld!,
                               //注:此处要查找数字的长度,超过就会截断,无法显示
    OLED_ShowNum(2, 1, 12345, 5);//在第二行一列显示12345,显示五个长度,
    //                       注:长度要适当
    OLED_ShowSignedNum(2, 7, -66, 2);//显示-66,第一位显示符号位
    OLED_ShowHexNum(3, 1, 0xAA55, 4);//显示AA55,十六进制
    OLED_ShowBinNum(4, 1, 0xAA55, 16);//显示2进制的AA55,即10101010 01010101
    OLED_Clear();//清屏。若只想清除某一位或某几位,使用OLED_ShowString();并添加空格.
    while(1)
    {
    }
}


LED.c部分代码如下:


abe8d86006ee448d8abbd250f8e156c8.png


注:使用OLED.c文件时,SCL和SDA引脚链接在哪里,就改为哪里。


OLED.Font.h文件如下:


e25fcc16cfd44233b7dc79afd6da8c5d.png


注:里面都是字库数据,在51单片机显示屏章节里面已经说过如何计算和使用,不会可再次查看了解。


相关文章
|
6月前
|
流计算
LabVIEW开发LED滚动显示程序
LabVIEW开发LED滚动显示程序
43 2
【51单片机】自定义静态数码管显示(设计思路&代码演示)
【51单片机】自定义静态数码管显示(设计思路&代码演示)
|
6月前
|
芯片
【嵌入式开源库】使用J-Link打印日志,让你节省一个打印串口
【嵌入式开源库】使用J-Link打印日志,让你节省一个打印串口
224 0
STM32:GPIO控制LED闪烁代码部分(内含配置图+代码+代码注释)
STM32:GPIO控制LED闪烁代码部分(内含配置图+代码+代码注释)
558 0
STM32:GPIO控制LED闪烁代码部分(内含配置图+代码+代码注释)
|
API 芯片
嵌入式 STM32 实现STemwin移植+修改其配置文件,驱动LCD显示文本 (含源码,建议收藏)
嵌入式 STM32 实现STemwin移植+修改其配置文件,驱动LCD显示文本 (含源码,建议收藏)
|
编解码 监控 Linux
嵌入式Linux MIPI接口LCD调试-关于DRM显示与应用调试的干货浓缩
嵌入式Linux MIPI接口LCD调试-关于DRM显示与应用调试的干货浓缩
1142 0
|
Linux 芯片
LED驱动程序--可拓展的LED驱动程序
LED驱动程序--可拓展的LED驱动程序
110 0
|
JavaScript 编译器 Linux
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十四)文字显示(上)
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十四)文字显示
254 1
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十四)文字显示(上)
|
内存技术
STM32Fxx位带操作还不会?哲学三问让你实现位带自由(含位带操作核心代码)以LED与键盘为例
STM32Fxx位带操作还不会?哲学三问让你实现位带自由(含位带操作核心代码)以LED与键盘为例
|
Linux 开发工具 git
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十四)文字显示(下)
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十四)文字显示
355 0
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十四)文字显示(下)