分享

单片机之路—诺基亚5110LCD显示屏驱动

 xpxys99 2017-05-07

电子产品在很多场合都需要提供和用户交互的人机界面,具备人机交互界面的电子产品可以给用户更好的使用,让电子产品更加直观。今天给大家讲一个性价比很高的LCD显示器——诺基亚5110LCD。可能很多人奇怪,为什么这个LCD显示屏被叫做诺基亚5110,那是因为这个显示屏诺基亚经典机型5110手机上使用的现实屏。就是下图这部手机,曾经的经典。记得第一部手机就是诺基亚的,那会还在读初中,宿舍的同学总是抢着来打贪吃蛇,打到满屏。电子产品的更新换代实在太快了,现在已经很难找到这个手机的踪影了。

单片机之路—诺基亚5110LCD显示屏驱动

诺基亚5110手机

5110LCD是一个84X48的点阵LCD,可以显示4行汉字。和单片机的接口不是很复杂,是一个没有MISO只有MOSI的SPI协议。用于通信的数据线是4根,其中有一根是用于设定传入的数据是命令还是数据的选择端口。下图是在马云家买的一个诺基亚5110LCD模块,总共有8个引脚。用于通信的引脚为4个,1个复位引脚,2个电源引脚,1个是背光灯控制引脚。因为诺基亚LCD本身是不会发光的,为了能够在晚上也能够看到液晶显示屏显示的内容,需要增加背光灯。

单片机之路—诺基亚5110LCD显示屏驱动

诺基亚5110实物图和引脚描述

我们把LCD需要单片机控制的5个引脚连接到单片机的P1口,背光灯通过一个电阻接到VCC5V,让背光灯保持常亮的状态,也可以接到单片机的引脚上去,通过单片机控制背光灯的亮灭。

单片机之路—诺基亚5110LCD显示屏驱动

5110LCD与单片机接口图

我们来看一下怎么写程序驱动诺基亚5110,实现在5110上显示出字符。由于接通电源后,LCD内部的RAM数据状态是不确定的,所以我们需要给LCD复位一下。

单片机之路—诺基亚5110LCD显示屏驱动

5110LCD复位时序

//产生一个复位脉冲

Lcd_res=0;

delay_us();

Lcd_res=1;

我们需要往LCD写数据,SPI的写时序如下,这里实现的是通过单片机IO口模拟SPI时序,如果单片机有硬件的SPI接口是可以用来驱动的5110LCD的。

单片机之路—诺基亚5110LCD显示屏驱动

5110LCD通信时序

/********************************************************************************

函数名称:Lcd_writebyte

函数功能:Lcd写入函

输入参数:

unsigned char dat:需要写入的数据

bit dc:写入的数据是命令还是数据

*********************************************************************************/

void Lcd_writebyte(unsigned char dat,bit dc)

{

unsigned char i;

Lcd_ce=0;

Lcd_dc=dc;

for(i=0;i<>

{

Lcd_clk=0;

if(dat&(0x80>>i))

Lcd_din=1;

else

Lcd_din=0;

Lcd_clk=1;

}

Lcd_ce=1;

}

完成写入函数后,还需要按照5110LCD规定写入初始化命令,LCD5110才能够正常工作。

单片机之路—诺基亚5110LCD显示屏驱动

LCD5110初始化函数

前面说到LCD是一个84X48的点阵,我们需要在点阵上显示字符就需要知道怎么在点阵上寻址。通过5110LCD的资料我们可以知道,5110LCD点阵和地址对应关系如下,起始偏移地址分别问0x80和0x40。

单片机之路—诺基亚5110LCD显示屏驱动

5110LCD点阵分布

单片机之路—诺基亚5110LCD显示屏驱动

LCD5110显示坐标设置函数

LCD通过控制点阵上的点显示或者不显示,使得显示不分组成字符。比如我们需要在LCD上显示一个字符'A',需要在LCD上显示的点如下图,也就是我们需要往LCD的显示地址写入0x00、0x7C、0x12、0x11、0x12、0x7c。对应位数值为0,该点熄灭,对应位为1,该点点亮。点亮的部分组成字符‘A’。能够显示出一个字符,显示其他字符就是取模不一样而已了。

单片机之路—诺基亚5110LCD显示屏驱动

LCD显示的点组成字符‘A’

单片机之路—诺基亚5110LCD显示屏驱动

在5110LCD上显示字符'A'

单片机之路—诺基亚5110LCD显示屏驱动

实际程序显示的效果

由于程序还是比较复杂,这里就只给大家讲一下驱动显示的原理,需要程序源代码的同学可以回复邮箱,我会发给大家的。关注我,我们一起搞搞单片机。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多