《项目7任务3:液晶显示器设计与制作ppt课件.pptx》由会员分享,可在线阅读,更多相关《项目7任务3:液晶显示器设计与制作ppt课件.pptx(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、玩转项目开发 任务三液晶显示器设计与制作一、目的与要求 利用PROTUES仿真软件进行电路设计,通过KEIL软件进行单片机程序设计,要求利用LCD1602液晶显示器进行字符显示,第一行显示“HNDQZY-QCXH-DPJ-”,第二行显示“Ji_Shu:*”,其中“*”为0-999计数,间隔100mS,自动计数。液晶屏选择“LM016L”。玩转项目开发 任务三液晶显示器设计与制作二、电路效果图玩转项目开发 任务三液晶显示器设计与制作三、源程序#includesbit lcden=P31;/LCD1602 使能端sbit lcdrs=P30;/LCD1602 寄存器选择unsigned int J
2、_C;unsigned char table116=HNDQZY-QCXH-DPJ-;/第一行显示数组unsigned char table216=Ji_Shu:;/第二行显示数组void delay(unsigned int x)/延时程序unsigned int i,j;for(i=x;i0;i-)for(j=240;j0;j-);void lcd_write_com(unsigned char com)lcdrs=0;/指令 P2=com;/转换成并口数据 lcden=1;/LCD1602 使能置高 delay(1);/适当延时 lcden=0;/LCD1602 使能拉低,实现下降沿跳变
3、void lcd_write_data(unsigned char dat)lcdrs=1;/数据 P2=dat;/转换成并口数据 lcden=1;/LCD1602 使能置高 delay(1);/适当延时 lcden=0;/LCD1602 使能拉低,实现下降沿跳变void display()unsigned char num;lcd_write_com(0 x80);/第一行显示指令for(num=0;num16;num+)lcd_write_data(table1num);/第一行显示16 个字符 delay(1);lcd_write_com(0 x80+0 x40);/第二行显示指令for
4、(num=0;num16;num+)lcd_write_data(table2num);/第二行显示16 个字符 delay(1);玩转项目开发 任务三液晶显示器设计与制作void init()lcd_write_com(0 x38);delay(10);/显示模式设置 lcd_write_com(0 x08);delay(10);/显示关闭lcd_write_com(0 x01);delay(10);/显示清屏lcd_write_com(0 x06);delay(10);/显示光标移动设置lcd_write_com(0 x0C);delay(10);/显示开及光标设置void main()i
5、nit();/LCD1602 初始化while(1)display();/显示if(J_C998)J_C+;else J_C=0;table27=J_C/100+0 x30;/显示百位字符table28=(J_C%100)/10+0 x30;/显示十位字符table29=J_C%10+0 x30;/显示个位字符delay(100);玩转项目开发 任务三液晶显示器设计与制作四、LCD16021.初识LCD1602 液晶模块1602表示一行可以显示16个字符,一共有两行。LCD1602是显示模块,主要作用当然是显示,既然是显示,无非就是两个内容:第一点:你打算让它在哪里显示(显示位置)第二点:你要
6、显示什么内容(显示内容)例如单片机告诉LCD1602模块:请你在第1行的第4个位置,显示字符A。在正常显示之前单片机需要与LCD1602模块建立联系。比如打电话,不是一上来就开始谈论主题了。先要发出一信号,比如喂,打个招呼,确定对方能收到信号后才开始谈论主题。对于单片机与LCD1602的正常通信,同样需要先打个招呼,称之为“初始化”。玩转项目开发 任务三液晶显示器设计与制作LCD1602 基本操作思路:第一步:初始化(单片机先跟1602打个招呼)第二步:确定显示位置(单片机告诉1602在哪里显示)第三部:确定显示内容(单片机告诉1602显示什么内容)第1引脚:GND为电源地。第2引脚:VCC接
7、5V电源正极。第3引脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会 产生鬼影,使用时可以通过一个10K的电位器调整对比度)。第4引脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。第5引脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。第6引脚:E(或EN)端为使能(enable)端,高电平(1)时读取信息,负跳变时执行指令。第714引脚:D0D7为8位双向数据端。第15引脚背光正极,第16引脚背光负极。玩转项目开发 任务三液晶显示器设计与制作2.LCD1602 的基本操作(1)读状态:输入RS=0,
8、RW=1,E=高脉冲。输出:D0D7为状态字。(2)读数据:输入RS=1,RW=1,E=高脉冲。输出:D0D7为数据。(3)写命令:输入RS=0,RW=0,E=低脉冲。输出:无。(写完置E=高脉冲)(4)写数据:输入RS=1,RW=0,E=低脉冲。输出:无。玩转项目开发 任务三液晶显示器设计与制作3.lcd1602 指令说明lcd1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。lcd1602液晶模块内部的控制器共有11条控制指令,如图所示。玩转项目开发 任务三液晶显示器设计与制作指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H
9、。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。玩转项目开发 任务三液晶显示器设计与制作指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F:低电平时显示5x7的点阵字符,高电平时显
10、示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。玩转项目开发 任务三液晶显示器设计与制作4.lcd1602RAM 地址映射液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符。第一行第一个字符的地址是00H,那么是否直接写入00H就可以将光标定位在第一行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7恒定为高电平1,所以实际写入的数据应该是00H+80H=80H。第二行第一个字符的地址是40H,那么实际写入的数据应该是40H+80H=C0H。THE END