首页 > 其他分享 >六、STM32的外设OLED屏幕的使用

六、STM32的外设OLED屏幕的使用

时间:2024-12-24 09:01:24浏览次数:7  
标签:显示 16 0xAA55 STM32 OLED 第一列 include 外设

介绍:OLED(有机发光二极管)是一种具有低功耗和快速响应特点的显示技术。本章所使用的0.96寸OLED模块,不仅界面占用少,且操作简便,非常适合嵌入式应用。其卓越的显示效果和高效的能源利用,使其成为理想的显示解决方案。

阿里云盘分享

提取码:c2s8

目录

一、OLED屏幕图示

二、函数接口的解读 

三、程序设计

四、程序现象 


一、OLED屏幕图示

1.1使用的是8x8像素的字体,有4行可以显示,每一行可以显示16个字符。

二、函数接口的解读 

2.1函数的初始化:

OLED_Init(); 

2.2清屏:

OLED_Clear(); 

2.3在第一行第一列显示A字符:

OLED_ShowChar(1, 1, 'A'); 

2.4从第一行第三列开始显示字符串:

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

2.5从第二行第一列开始显示5个数据长度的十进制数“12345”:

OLED_ShowNum(2, 1, 12345, 5); 

2.6从第二行第七列开始显示2个数据长度的有符号十进制数“-66”:

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

2.7从第三行第一列开始显示4个长度的16进制数“AA55”:

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

2.8 从第四行第一列开始显示16个长度的12进制数(因为c语言不能直接写2进制数):

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

三、程序设计

#include "stm32f10x.h"                  // Device header
#include "Delay.h"
#include "OLED.h"

int main(void)
{
	OLED_Init();
	
	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);
	
	while (1)
	{
		
	}
}

四、程序现象 

本文OLED显示用的I²C的协议,本文先用起来OLED,后面文章会详细讲解 I²C协议。

 到此本篇文章结束。

At the end of this article, applaud yourself again!!

标签:显示,16,0xAA55,STM32,OLED,第一列,include,外设
From: https://blog.csdn.net/weixin_64632926/article/details/144677333

相关文章

  • 金名的STM32F407标准库开发笔记(二)--点亮一个LED
    金名的STM32F407单片机标准库开发(二)–点亮LED灯​在金名的STM32F407单片机标准库开发(一)中我们编写了一段代码,相信即使是C语言大佬,初次看到这段代码也会很迷茫,无法理解这段代码的含义。确实,STM32单片机的代码,尤其是涉及到硬件操作的部分,对于初学者来说可能会显得有些复杂......
  • STM32单片机芯片与内部39 DAC 数据手册 寄存器
    目录一、DAC寄存器1、DAC控制寄存器(DAC_CR)2、DAC软件触发寄存器(DAC_SWTRIGR)3、DAC通道1的12位右对齐数据保持寄存器(DAC_DHR12R1)4、DAC通道1的12位左对齐数据保持寄存器(DAC_DHR12L1)5、DAC通道1的8位右对齐数据保持寄存器(DAC_DHR8R1)6、DAC通道2的......
  • STM32单片机芯片与内部38 DAC 双DAC通道转换
    目录一、双DAC通道转换二、不使用波形发生器的独立触发三、使用相同LFSR的独立触发四、使用不同LFSR的独立触发五、产生相同三角波的独立触发六、产生不同三角波的独立触发七、同时软件启动八、不使用波形发生器的同时触发九、使用相同LFSR的同时触发十、使用不同LFS......
  • 毕业设计基于STM32F103C8T6智能小车设计PWM调速、红外循迹、障碍物跟随、超声波避障、
    (页数:61页、字数:14473字)1绪论1.1前言1.2设计任务与要求1.3智能小车硬件设计思路1.3.1智能小车控制板设计思路1.3.2智能小车底板设计思路2单片机的组成及特点2.1单片机的组成2.2单片机的特点2.3STM32F103C8T6单片机介绍2.4STM32F103C8T6单片......
  • LVGL 移植到 STM32 通法 ( 例:LVGL 9.2.2 到 STM32F429 )
     心法:以往看过很多的移植教程、在Keil里面添加很多的文件分组、进到LVGL源码文件夹,进进出出多级目录添加很多的源码文件、这个添加,那个不需要添加,着实吓人+劝退人。 1.Keil里面的文件分组的组织结构、取名对编译根本不重要,只是方便程序员管理文件。不过要注意,需要......
  • 基于 STM32F767 的 4 位数码管显示与数字递减设计
    基于STM32F767的4位数码管显示与数字递减设计一、实验设计电路数码管连接-**段选引脚连接**:采用共阴极数码管,其段选引脚`a-g`分别连接到STM32F767开发板的GPIOA的0-7引脚。这种连接方式使得通过控制GPIOA相应引脚的电平状态,能够输出不同的段码,从而在......
  • 关于stm32f407 cherryusb初始化失败“This dwc2 version does not support dma mode,
    初学cherryusb,照着论坛帖子操作,将cherryusb软件包加入到407工程,编译完成后,下载,出现如下问题:[I/USB]dwc2has1channelsanddfifodepth(32-bitwords)is0[E/USB]Thisdwc2versiondoesnotsupportdmamode,sostopworking通过反复确认,各种定位尝试,最终发现是usb模......
  • 2024新版本如何配置CLion与cubeMX开发STM32
    2024新版本如何配置CLion与cubeMX开发STM321.为什么我要在网上有很多教程的情况下再做一个新版各种大佬们给出的配置教程原本很详细,但是在时间过了这么久之后已经不完全符合现在的环境了。昨天在教群里萌新安装CLION+CUBEMX时我才发现,在配置过程中新出现的一些变化甚至没有清......
  • STM32工程 如何设置堆栈大小(Heap和Stack)
    在STM32工程中,合理设置堆栈大小对于确保程序的稳定运行至关重要。堆栈大小的设置涉及到内存管理,特别是对于资源受限的嵌入式系统。1.理解堆栈的概念在嵌入式系统中,堆(Heap)和栈(Stack)是两种不同的内存区域,它们在程序运行中扮演着重要的角色:栈(Stack):由编译器自动管理,用于存......
  • 嵌入式开发:STM32 硬件 CRC 使用
    STM32微控制器内置了硬件CRC计算单元,可以用于计算多种CRC多项式,从而提高数据处理的效率和准确性。以下是STM32硬件CRC的详细使用步骤和代码示例。1.硬件CRC的优势硬件CRC不占用MCU的资源,计算速度快,适合于对实时性要求较高的场合。它通过直接对数据进行处理,减少了软件CRC......