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单片机显示屏章节里面已经说过如何计算和使用,不会可再次查看了解。


相关文章
|
传感器 编解码 数据处理
毕业设计|基于STM32单片机的水位浑浊度检测设计
毕业设计|基于STM32单片机的水位浑浊度检测设计
1750 0
|
数据安全/隐私保护
STM32F103C8T6实现简易密码锁(CubeMax配置)(一),Oled显示。
项目功能:实现设置密码,登陆密码,后期还可以通过E2PROM实现掉电不丢失数据。通过Oled的显示去判断我们是否设置或者登陆成功。
554 1
|
10月前
|
JSON 前端开发 应用服务中间件
跨域请求(CORS)如何解决?
CORS 全称为(Cross-Origin Resource Sharing:跨站资源共享),跨域请求是由于浏览器的同源策略(Same-Origin Policy)引起的,那么 CORS 的产生和浏览器的同源策略有关系,我们先了解什么是同源策略。
【AD速成】半小时入门AltiumDesigner之绘制原理图(四)
【AD速成】半小时入门AltiumDesigner之绘制原理图(四)
5531 3
|
传感器 算法 物联网
智能停车解决方案之停车场室内导航系统(二):核心技术与系统架构构建
随着城市化进程的加速,停车难问题日益凸显。本文深入剖析智能停车系统的关键技术,包括停车场电子地图编辑绘制、物联网与传感器技术、大数据与云计算的应用、定位技术及车辆导航路径规划,为读者提供全面的技术解决方案。系统架构分为应用层、业务层、数据层和运行环境,涵盖停车场室内导航、车位占用检测、动态更新、精准导航和路径规划等方面。
1162 4
|
传感器 数据采集 API
C语言与硬件编程:GPIO操作
C语言与硬件编程:GPIO操作
STM32学习笔记(4) 高级定时器-两路互补的PWM输出(带死区和刹车控制)
原理:当捕捉到信号的跳变沿时,将CNT的值所存到捕获寄存器CCR中,然后把两次的值相减,就可以得到脉宽或者频率。
3138 0
|
算法 调度 C语言
C/C++学习 -- SHA-256算法
C/C++学习 -- SHA-256算法
546 0
|
Java 关系型数据库 MySQL
java.sql.SQLException: No operations allowed after statement closed.
java.sql.SQLException: No operations allowed after statement closed. 原因很简单:这里和数据库的连接Connection是一个Static的,程序共享这一个Connection。
18265 0