基于STM32的0.96寸OLED显示屏显示数据和滚动显示

这篇博客介绍了如何使用STM32通过SPI接口驱动0.96寸OLED显示屏显示数据,包括显示姓名和学号,并详细讲解了滚动显示的实现,包括水平和垂直滚动,提供了代码实现和结果展示。

一、SPI

1.SPI的定义

SPI(Serial Peripheral Interface)就是串行外围设备接口。
SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚。SPI 是一个环形总线结构,由 ss(cs)、sck、sdi、sdo 构成,时序主要是在 sck 的控制下,两个双向移位寄存器进行数据交换。
上升沿发送、下降沿接收、高位先发送。
上升沿到来的时候,sdo 上的电平将被发送到从设备的寄存器中。
下降沿到来的时候,sdi 上的电平将被接收到主设备的寄存器中。

2.SPI的连接方式
在这里插入图片描述

SS( Slave Select):从设备选择信号线,常称为片选信号线。
SCK (Serial Clock):时钟信号线,用于通讯数据同步。
MOSI (Master Output, Slave Input):主设备输出/从设备输入引脚。
MISO(Master Input,,Slave Output):主设备输入/从设备输出引脚。

3. SPI的通讯过程
在这里插入图片描述

MOSI 与 MISO 的信号只在 NSS 为低电平的时候才有效,在 SCK 的每个时钟周期 MOSI 和 MISO 传输一位数据。

二、OLED显示屏显示数据

1.0.96寸OLED显示屏相关介绍
参考下面链接:
http://www.lcdwiki.com/zh/0.96inch_SPI_OLED_Module

运行厂家给出的Demo程序:
下载程序:(复制搜索)http://www.lcdwiki.com/res/Program/OLED/0.96inch/SPI_SSD1306_MSP096X_V1.0/0.96inch_SPI_OLED_Module_SSD1306_MSP096X_V1.0.zip
打开资料包,选择与自己平台相同的实例,打开Demo的工程,使用keil编译

连接方式:
在这里插入图片描述

2.1 代码实现

功能:显示姓名和学号

点阵字库生成工具:
链接:https://pan.baidu.com/s/1bBjj-yzrJO-8J3yq8Jlohg
提取码:2000

在这里插入图片描述
用工具生成字模,向嘉诚存储代码:

"向",0x02,0x00,0x04,0x00,0x08,0x00,0x7F,0xFC,0x40,0x04,0x40,0x04,0x47,0xC4,0x44,0x44,
0x44,0x44,0x44,0x44,0x44,0x44,0x47,0xC4,0x44,0x44,0x40,0x04,0x40,0x14,0x40,0x08,
"嘉",0x01,0x00,0xFF,0xFE,0x01,0x00,0x3F,0xF8,0x00,0x00,0x1F
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值