HAL库图形化编程之OLED屏应用

描述

1.OLED简介

      OLED (Organic Light-Emitting Diode)即有机发光二极管,在手机OLED上属于新型产品,被称誉为“梦幻显示器”。

      OLED显示技术与传统的LCD显示方式不同,无需背光灯,采用非常薄的有机材料涂层和玻璃基板(或柔性有机基板),当有电流通过时,这些有机材料就会发光。而且OLED显示屏幕可以做得更轻更薄,可视角度更大,并且能够显著的节省耗电量。

      OLED也被称之为第三代显示技术。OLED不仅更轻薄、能耗低、亮度高、发光率好、可以显示纯黑色,并且还可以做到弯曲,如当今的曲屏电视和手机等。当今国际各大厂商都争相恐后的加强了对OLED技术的研发投入,使得OLED技术在当今电视、电脑(显示器)、手机、平板等领域灵应用愈加广泛。

2.硬件接口

HAL

    显示屏为0.91寸OLED屏,4线串行接口:时钟CLK,数据线MOSI,数据命令选择线DS,片选线CS。屏幕复位信号脚RES(低电平复位)。

3. 通信协议

      在每一个 SCLK 的上升沿上 SDIN 按照 D7, D6...D0 的顺序被转换成一个 8 位的移位寄存器。 在每第 8 个时钟上采样 D/C# , 在同一个时钟上移位寄存器中的数据字节被写到图形显示数据 RAM(GDDRAM) 或命令寄存器中。在串行模式下, 只允许写操作。 

HAL

发送一个字节函数示例:

void OLED_SPI_ReadWriteOneByte(u8 data,u8 cmd)
{
	u8 i;
	if(cmd) OLED_DC(1);
	else OLED_DC(0);
	OLED_CS(0);//片选拉低,选择OLED屏
	OLED_SCK(0);
	for(i=0;i<8;i++)
	{
		OLED_SCK(0);
		if(data&0x80)OLED_MOSI(1);
		else OLED_MOSI(0);
		OLED_SCK(1);
		data<<=1;
	}
	OLED_CS(1);
	OLED_SCK(0);
}

3.软件设计

      打开STM32CubeMx软件,配置DHT11硬件接口和OLED屏幕接口。

HALHAL

 

4. 生成代码

4.1 基本硬件接口配置

HAL

4.2 OLED屏幕相关接口函数

      OLED屏幕SPI发送一字节函数示例:时钟线空闲电平为低电平,在时钟的下将沿发送数据。在oled.c中:

HAL

OLED硬件接口宏定义,在oled.h中:

HAL

4.3 主函数

HALHAL

4.4 取模工具使用

    OLED屏幕本身并不带有字库,要显示汉字或字符则需要通过取模工具获取点阵码信息。

HAL

 

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分