基于SPI/IIC接口的OLED数据显示
文章目录
- 前言
- 1、字模生成
- 2、软件修改
- 3、连线
- 4、结果
前言
任务:
理解OLED屏显和汉字点阵编码原理,使用STM32F103的SPI或IIC接口实现以下功能:
显示自己的学号和姓名;
显示AHT20的温度和湿度;
上下或左右的滑动显示长字符,比如“Hello,欢迎来到重庆交通大学物联网205实训室!”或者歌词、诗词。(最好使用硬件刷屏模式)
设备:
野火指南者(stm32f103)、AHT20温湿度传感器、0.96寸SPI的OLED。
资料链接:https://detail.tmall.com/item.htm?spm=a1z0d.6639537.1997196601.80.201d74841fbMPw&id=556732249552
这里我做的就是0.96寸SPI 7针
1、字模生成
1、打开字模软件(在上述资料里有)。我的软件在7线–0.96inch_SPI_OLED_Module_SSD1306_MSP096X_V1.0\0.96inch_SPI_OLED_Module_SSD1306_MSP096X_V1.0\7-Character&Picture_Molding_Tool\Tools-PCtoLCD200\PCtoLCD2002完美版
2、在模式里选择字符模式。选项里选择阴码、顺向、逐行、c51格式。(请根据自己程序修改取模选项)。然后输入需要取模的字符,点击生成字模即可。
2、软件修改
1、首先先从上面链接下载相应的资料包。
2、打开工程,将主程序main.c修改如下:
int main(void)
{ delay_init(); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); OLED_Init(); OLED_Clear(0); while(1) { TEST_MainPage(); //显示姓名学号OLED_Clear(0);}
}
3、在test.c里找到以下语句,
void TEST_MainPage(void)
当然,你也可以在main。c里右键单击TEST_MainPage();寻址过去。
4、修改语句如下:
void TEST_MainPage(void)
{ GUI_ShowString(20,0,"63180030615",8,1);GUI_ShowCHinese(16,20,16,"邱海琪",1);delay_ms(1500);
}
这是我自己的,修改为想要显示的文字数据即可。
注意:如果你增添了文字,记得在下面的字模里增添相应的。
5、在oledfont.h里找到相应函数,增添自己的字模。我这里是宋体、16*16大小、逐行式、顺向。
const typFNT_GB16 cfont16[] =
{"邱",0x00,0x00,0x03,0x3E,0x3C,0x22,0x20,0x24,0x20,0x24,0x20,0x28,0x3F,0xA4,0x22,0x24,0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x34,
0x27,0xA8,0xF8,0x20,0x40,0x20,0x00,0x20,"海",0x01,0x00,0x21,0x00,0x11,0xFC,0x12,0x00,0x85,0xF8,0x41,0x08,0x49,0x48,0x09,0x28,0x17,0xFE,0x11,0x08,0xE2,0x48,0x22,0x28,
0x23,0xFC,0x20,0x08,0x20,0x50,0x00,0x20,"琪",0x01,0x08,0x01,0x08,0xFB,0xFC,0x21,0x08,0x21,0x08,0x21,0xF8,0x21,0x08,0xF9,0x08,0x21,0xF8,0x21,0x08,0x21,0x08,0x3B,0xFE,
0xE0,0x00,0x40,0x90,0x01,0x08,0x02,0x04,};
3、连线
注意:cs不用连接。
4、结果
完成上述操作后,就可以将程序编译下载进设备运行了
运行结果如下:
基于SPI/IIC接口的OLED数据显示相关推荐
- STM32基于SPI接口的OLED数据显示
文章目录 一.SPI简介 1.1 什么是SPI 1.2 SPI原理 1.3 SPI的连接方式 1.4 协议层 二.OLED 2.1 OLED原理 2.2 点阵编码原理与显示 三.OLED显示实验 3. ...
- 基于SPI接口的OLED数据显示
文章目录 一.实验目的 二.准备工作 三.理论基础 1.0.96OLED简介 2.接线说明 四.实验步骤 1.显示自己的学号和姓名 2.显示AHT20的温度和湿度 3.上下或左右的滑动显示长字符 一. ...
- 基于SPI协议下的OLED显示
文章目录 一.SPI简介 二.OLED显示 1.任务要求 2.实验器材 3.实验过程 (1)显示自己的学号和姓名 (2) 显示AHT20的温度和湿度 (3)上下或左右的滑动显示长字符(SSD1306驱 ...
- STM32开发基于SPI接口的OLED数据显示
文章目录 一.SPI简介 二.0.96inch SPI OLED 介绍 三.实验内容及结果 1. 任务要求 2. 准备工作 3. 演示如下 四.参考 一.SPI简介 SPI,是英语Serial Per ...
- 实验 STM32 基于SPI的OLED屏显示
STM32 基于SPI的OLED屏显示 一.任务要求 二.显示自己的学号和姓名 1.例子程序的改写 (1)下载资料 (2)解压后找到文件,并用KEIL打开. (3)改写程序 2.连接硬件 3.运行结果 ...
- STM32-使用IIC接线的OLED显示屏
一.IIC协议的简单介绍 在物理层上:IIC协议就是通过一根数据线(SDA)与一根时钟线(SCL)将一个主机与一个或多个从机相连接,并且为了不同设备之间进行访问,每一个设备都有不同的地址. 在协议层上 ...
- 基于SPI的OLED显示
文章目录 一.SPI协议 1. SPI简介 2. SPI通信原理 3. GPIO口配置 二.OLED原理及应用 1. OLED原理 2. OLED显示 2.1 姓名学号显示 ①准备工作及部分代码 ②实 ...
- 【嵌入式】STM32基于SPI通信协议OLED屏显示
STM32基于SPI通信协议OLED屏显示 一.SPI协议和OLED介绍 1.SPI协议介绍 物理层 协议层 2.OLED显示屏介绍 二.显示个人学号姓名实验 1.题目要求 2.代码部分 1.完整代码 ...
- 基于SPI的OLED温湿度显示
本文首先会简单介绍SPI通信协议,然后后面的实验分为两个板块,一个是OLED屏的使用,另一个是在此基础上,结合上次实验(结尾会附上链接),用OLED屏显示温湿度信息. 实验器材:STM32F103C8 ...
最新文章
- 对 makefile 中 .SECONDARY 的学习体会
- SQL语句的增删改查
- 移位运算[c][code]
- Ubuntu 安装docker CE以及harbor
- SQLSERVER中如何忽略索引提示
- 信息系统项目管理师在线考试
- 支持向量机概念图解_支持向量机:基本概念
- 微软发布的两个MSF过程指导(Process Guidance)
- 音视频开发( 34)---麦克风阵列原理二
- 基于JAVA+Servlet+JSP+MYSQL的会议管理系统
- mysql报错01427_ORA-01427问题的分析和解决
- Win10+Anaconda创建新环境安装pytorch
- Android 代码混淆、第三方平台加固加密、渠道分发 完整教程(转)
- 华三交换机怎么关闭445端口通信
- Verilog除法器的设计总结
- Windows10下电脑版微信未读消息自动弹窗工具
- Android studio断点调试源码
- 2018届成都市二诊数学(文)21题第二问的另类证法(切线放缩法)
- 服务器kvm切换器维修,KVM多电脑切换器常见故障排查及处理方法
- STM32F4 IAP实现总结
热门文章
- 如何把极坐标化为直角坐标_如何将极坐标转化为直角坐标
- 英特尔1.17 亿美元投资14家公司 云拿科技和珠海亿智入列
- mac下直接打开finder的快捷键
- 如何在苹果Mac上将HEIC转换为JPG?
- 【C语言编程】使用近似值方法求圆周率π的值
- CN域名和手机号码实名制
- 大学计算机基础课程作业第4-6章,大学计算机基础课程作业(4—6章)(5页)-原创力文档...
- Excel实现数据转置,很方便操作
- 云ERP系统适合什么样的企业
- iscsi 挂载教程_linux下ISCSI存储挂载方法