基于SPI/IIC接口的OLED数据显示

本文详细介绍了SPI通信协议以及OLED显示屏的工作原理,并通过一个实验展示了如何使用SPI接口驱动OLED显示学号、姓名、AHT20传感器的温度湿度,以及实现字符的滚动显示,加深了对SPI高速数据传输特性的理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、SPI通信协议、OLED简介

SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,越来越多的芯片集成了这种通信协议。
OLED(OrganicLight-Emitting Diode),又称为有机电激光显示、有机发光半导体(OrganicElectroluminesence Display,OLED)。OLED属于一种电流型的有机发光器件,是通过载流子的注入和复合而致发光的现象,发光强度与注入的电流成正比。OLED在电场的作用下,阳极产生的空穴和阴极产生的电子就会发生移动,分别向空穴传输层和电子传输层注入,迁移到发光层。当二者在发光层相遇时,产生能量激子,从而激发发光分子最终产生可见光

二、OLED显示实验

1.实验目的
显示自己的学号和姓名;
显示AHT20的温度和湿度;
上下或左右的滑动显示(使用硬件刷屏模式)。
2.实验过程
①显示自己的学号和姓名:
打开如下工程
在这里插入图片描述
在工程的基础上进行改动,将main.c中的while函数里的其他函数注释掉,加入以下两句
在这里插入图片描述
接线
在这里插入图片描述

字库取模
由于OLED显示中使用了中文字符,因此需要将中文进行取模得到中文的点阵编码并存到oledfont.h中,方便程序调用并显示到OLED上去。
在这里插入图片描述

在这里插入图片描述
实验结果
在这里插入图片描述
②显示AHT20的温度和湿度
使用上面所使用的代码,在USER目录下加入bsp_i2c.c,bsp_i2c.h,usart.c,usart.h几个文件
在这里插入图片描述
在这里插入图片描述

③上下的滑动显示长字符
仍然使用最开始选择的工程文件,
更改main.c改为(滑动字符根据自己的需要添加字模并改动)
在这里插入图片描述

在这里插入图片描述

三、总结

通过使用SPI通信方式进行OLED的显示,我了解到了中文字库点阵、SPI通信协议、OLED屏幕滑动显示等,了解到SPI数据传输速率确实较高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值