【STM32】OLED显示屏

news/2024/4/17 16:20:31

1 调试方式

1. 串口调试:通过串口通信,将调试信息发送到电脑端,电脑使用串口助手显示调试信息

2. 显示屏调试:直接将显示屏连接到单片机,将调试信息打印在显示屏上

3. Keil调试模式:借助Keil软件的调试模式,可使用单步运行、设置断点、查看寄存器及变量等功能

2 OLED简介

OLED(Organic Light Emitting Diode):有机发光二极管

OLED显示屏:性能优异的新型显示屏,具有功耗低、相应速度快、宽视角、轻薄柔韧等特点

0.96寸OLED模块:小巧玲珑、占用接口少、简单易用,是电子设计中非常常见的显示屏模块

供电:3~5.5V,通信协议:I2C/SPI,分辨率:128*64

一般4引脚使用I2C通信;7引脚使用SPI通信。

2.1 硬件电路

SCL和SDA是I2C通信的引脚(这里使用GPIO口模拟I2C通信)

剩下的引脚是SPI通信的引脚。

2.2 驱动函数

函数

作用

OLED_Init();

初始化

OLED_Clear();

清屏

OLED_ShowChar(1, 1, 'A');

显示一个字符

OLED_ShowString(1, 3, "HelloWorld!");

显示字符串

OLED_ShowNum(2, 1, 12345, 5);

显示十进制数字

OLED_ShowSignedNum(2, 7, -66, 2);

显示有符号十进制数字

OLED_ShowHexNum(3, 1, 0xAA55, 4);

显示十六进制数字

OLED_ShowBinNum(4, 1, 0xAA55, 16);

显示二进制数字

实物对照

4行16列

3 OLED显示屏

3.1 接线图

图中右下角,PB6接GND, PB7接VCC,不影响,不初始化这两个口即可(默认浮空输入)

也可以用GPIO口给OLED供电(PB6输出低电平,PB7输出高电平)

3.2 OLED驱动

这里需要和实物对应起来。

其他的先不需要了解。

3.3 OLED显示屏

#include "stm32f10x.h"                  // Device header
#include "Delay.h"
#include "OLED.h"int main()
{OLED_Init();								// 初始化OLEDOLED_ShowChar(1, 1, 'A');					// 显示字符'A'OLED_ShowString(1, 3, "HelloWorld!");   	// 显示字符串OLED_ShowNum(2, 1, 12345, 5);           	// 显示十进制12345,长的话,补0;短的话切掉高位OLED_ShowSignedNum(2, 7, -66, 2);       	// 显示有符号OLED_ShowHexNum(3, 1, 0xAA55, 4);       	// 显示16进制OLED_ShowBinNum(4, 1, 0xAA55, 16);      	// 显示二进制//	OLED_Clear();								// 清屏while (1){}
}

4 Keil的调试模式

换一个LED闪烁的工程

使用硬件在线模仿真。

点击进入调试模式


https://www.xjx100.cn/news/3118976.html

相关文章

一文秒懂|Linux字符设备驱动

我的圈子: 高级工程师聚集地 我是董哥,高级嵌入式软件开发工程师,从事嵌入式Linux驱动开发和系统开发,曾就职于世界500强公司! 创作理念:专注分享高质量嵌入式文章,让大家读有所得! …

制作心理咨询小程序的详细指南

随着科技的的发展,小程序已经成为了人们日常生活中不可或缺的一部分。特别是在心理咨询这个领域,小程序可以提供一个更为便捷、高效的服务平台。本文将通过乔拓云平台为例,详细介绍如何制作一个心理咨询小程序。 首先,我们需要注册…

c 语言常见的易错题分析

在C语言中,有一些常见的易错题需要特别注意。以下是一些例子: 1,数组越界:在C语言中,数组的索引是从0开始的。因此,一个长度为n的数组的索引范围应该是0到n-1。如果尝试访问超出这个范围的索引&#xff0c…

代码随想录 435. 无重叠区间

题目 给定一个区间的集合 intervals ,其中 intervals[i] [starti, endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。 示例 1: 输入: intervals [[1,2],[2,3],[3,4],[1,3]] 输出: 1 解释: 移除 [1,3] 后,剩下的区间没有重叠。 示…

【Openstack Train安装】五、Memcached/Etcd安装

本文介绍Memcached/Etcd安装步骤,Memcached/Etcd仅需在控制节点安装。 在按照本教程安装之前,请确保完成以下配置: 【Openstack Train安装】一、虚拟机创建 【Openstack Train安装】二、NTP安装 【Openstack Train安装】三、openstack安装…

让 OpenAI GPT4 出 10 道题测试其他开源大语言模型

让 OpenAI GPT4 出 10 道题测试其他开源大语言模型 1. 中文题目及答案2. 日文题目及答案3. 英文题目及答案 1. 中文题目及答案 数学题:一个矩形的长是10厘米,宽是5厘米,求它的面积。 答案:面积 长 x 宽 10厘米 x 5厘米 50平方厘…

YOLOv5原创改进:全维动态卷积再改进,GCODConv

目录 一、原理 网络结构 二、代码 三、应用到YOLOv5中 一、原理

VUE本地idea启动

安装yarn(也可以用npm) 问题:yarn : 无法加载文件 C:\Users\xx/yarn.ps1,因为在此系统上禁止运行脚本 解决办法:管理员身份运行【 PowerShell】,然后执行【Set-ExecutionPolicy RemoteSigned】&#xff0c…