IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 0.96寸OLED屏幕7针SPI接口使用指南 -> 正文阅读

[嵌入式]0.96寸OLED屏幕7针SPI接口使用指南

这是我在淘宝上买的7针LED屏,根据卖家提供的资料整理出如何驱动这块OLED屏显示

?

?首先是接线,我们直接打开例程的文件夹,找到自己对应的板子,卖家提供了51、arduino、MSP430、STM8和STM32的驱动程序,打开之后看到代码main函数里会提示如何接线

?

?接好线以后我们可以试着编译下载提供的例程,对比源码与实物,初步认识OLED是如何工作的;

从源码中我们可以看出,在显示的时候,当我们选择16x16显示的时候,X取值最大可以取到108,Y最大可以取到48,这是因为这块OLED屏幕像素是128*64,选择16x16显示的时候,把长16个像素和宽16个像素划分出一个区域,屏幕显示汉字时就会根据你定的X和Y坐标,在该区域显示出来,为了不重叠,我们最好设置每一个汉字的列都隔开两个像素,这样我们就把屏幕划分为一个4行x7列,共可以显示28个汉字。另外两种大小的显示可以以此类推。

?

?

?

?

?

?接着我们来查看显示函数

void OLED_ShowChinese(u8 x,u8 y,u8 num,u8 size1)
{
	u8 i,m,n=0,temp,chr1;
	u8 x0=x,y0=y;
	u8 size3=size1/8;
	while(size3--)
	{
		chr1=num*size1/8+n;
		n++;
			for(i=0;i<size1;i++)
			{
				if(size1==16)
						{temp=Hzk1[chr1][i];}//调用16*16字体
				else if(size1==24)
						{temp=Hzk2[chr1][i];}//调用24*24字体
				else if(size1==32)       
						{temp=Hzk3[chr1][i];}//调用32*32字体
				else if(size1==64)
						{temp=Hzk4[chr1][i];}//调用64*64字体
				else return;
							
						for(m=0;m<8;m++)
							{
								if(temp&0x01)OLED_DrawPoint(x,y);
								else OLED_ClearPoint(x,y);
								temp>>=1;
								y++;
							}
							x++;
							if((x-x0)==size1)
							{x=x0;y0=y0+8;}
							y=y0;
			 }
	}
}

?我们可以看到该显示先判断传进来的字符大小size1,假设我们选16*16,那实际显示的是数组Hzk1[chr1][i]的内容,接着我们去查看该数组,数组是由文字取模工具生成,我们可以自己用文字取模工具生成文字,然后放到数组中;(取模步骤过于简单,略)

?在调用文字显示函数OLED_ShowChinese(u8 x,u8 y,u8 num,u8 size1),第三个参数num即是我们取模生成的数组中第几个字,例程中最大可以存放11个字,当我们需要存放超过11个时会报错,只需把数组的行改为适当的数字或者不填(c语言中数组的行可不填,列必须填)即可;

?

?测试,运行成功:

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-09-30 12:05:27  更:2021-09-30 12:05:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 2:24:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码