1602液晶显示驱动_第1页
1602液晶显示驱动_第2页
1602液晶显示驱动_第3页
1602液晶显示驱动_第4页
1602液晶显示驱动_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编号:编号:GUILIN UNIVERSITY OF ELECTRONIC TECHNOLOGY单片机实训(论文)说明书题 目:1602液晶显示驱动院(系):应用科技学院专 业:电子信息工程学生姓名:学 号:指导教师:2008年12月25日1602液晶驱动显示目 录引言2摘要3-41 系统的设计与分析1.1 8052单片机概述51.2单片机的组成 6-82 1602液晶彩图93 1602液晶详细介绍3.1工业字符型液晶 103.2 1602标准的16脚接口 113.3 1602的编程方法 12-144结论谢辞 15参考文献 17附录 18-2611602液晶驱动显示引言:随着时代的进步,科技技

2、术的高速发展。新的产品代替旧产品。各种广告牌不再 是白底,也不再单一木制品,而是应用上高科产品。 LCD的出现,为城市的增添了一道 靓丽的风景。而且它采用低电压扫描驱动,具有:耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远、规格品、可靠耐用、应用灵活、安全、响应时间 短、绿色环保、控制灵活种等特点。近年来 LCD液晶显示屏市场得到了迅猛的发展,已 经广泛应用到银行、邮电、税务、机场、车站、证券市场及其它交易市场、医院、电力、 海关、体育,军事,航空,航天等多种需要的场合。目前LED显示屏作为信息传播的一种重要手段, 已经成为城市信息现代化建设的标 志丄ED显示屏随着社会经济的不

3、断进步,以及 LCD显示技术的不断完善,人们对 LED 显示屏的认识将会越来越深入,其应用领域将会越来越广;LCD显示屏经多年的开发、研制、生产,其技术目前已经成熟。因此,学习LCD技术,很有必要。本文通过设计一个液晶显示电路, 可可显示英文、 阿拉伯数字及其他图形等来练习使用 LCD21602液晶驱动显示摘要LCD可分为两种类型,一种是字符模式的 LCD,别一种是图形模式LCD,其中, 字符模式LCD是点阵型液晶显示器,专门用来显示字母,数字,符号等。由于LCD的控制需要专用的驱动电路,一般不会单独使用,而是将 LCD面板,驱 动与控制电路组合而成的 LCD模块(Liquid Cryasta

4、l display moulde,简称为LCM)一起 使用。目前,常用的有16字*1、 16字*2、20字*2、40字*2行等字符模块,这些 LCM 虽然显示字数不同,但都有相同的输入输出界面,此电路是用AT89S52单片机来控制显 示,显示字符,数字,动态电子钟。关键词:AT89S52单片机;LCD1602液晶;下载接口31602液晶驱动显示AbstractLCD can be divided in to two types, is a character mode LCD, other graphics mode is a kind of LCD, which is the point o

5、f character-mode LCD LCD display, designed to display letters, nu mbers, symbols and so on.As the LCD con trol of the special n eeds of the driver circuit, gen erally will not be used alone, but LCD pan els, drive and con trol circuits of the comb in ati on of LCD module (Liquid Cryastal display mou

6、lde, referred to as LCM) used together.At prese nt, there are 16 common ly used words * 1, 16-character word 2,20 * 2,40 * word * 2 module line, and other characters, although these LCM display differe nt words, but have the same in put-output in terface, the circuit is AT89S52 Sin gle-chip to con t

7、rol the display to show characters, nu mbers, the dyn amic electro nic bell.Key words : AT89S52 si ngle chip; LCD1602 LCD; dow nload in terface41602液晶驱动显示1系统的设计与分析1.1 89S51单片机的概述单片机也被称作“单片机微型计算机”、“微控制器”、“嵌入式微控制器”,国际上 采用“MCU (Micro Controller Unit)称呼单片机。如果将8位单片机的推出作为起点(1976 年),那么单片机的发展的历史大致可以分为 4个阶段。

8、第一阶段是单片机探索阶段, 主要探索如何把计算机的主要部件集成在单芯上;第二阶段是单片机完善阶段,完善了 8位单片机的并行总线结构、外围功能单元由CPU集中管理模式、体现控制特性的位地 址空间和位操作方式、指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令; 第三阶段是向微控制器发展的阶段, 说的是在89S52的基本结构的基础上,加强了外围 电路的功能,突出了单片机的控制功能,将一些用测控对象的模数转换器、 数模转换器、 程序运行监视器、脉宽调制器等纳入芯片中,体现单片机的微控制器特征;第四阶段是 单片机的全面发展阶段,很多大半导体和电气厂商都开始加入单片机的研制和生产,单 片机世界出现

9、了百花齐放,欣欣向荣的景象。随着单片机在各个领域全面深入地发展和 应用,出现了高速、大寻址范围、强运算能力的8位、16位、32位通用型单片机,以及小型谦价的专用型单片机。目前,单片机正朝着高性能和多品种方向发展,今后单片机的发展趋势将是进一步 向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装等方面发 展。1.2单片机的组成图3-1是单片机典型组成框图,由图可见它通过内部总线把计算机的各主要部件连为一体,其内部总线包括地址总线、数据总线和控制总线。其中,地址总线的作用是 为进行数据交换时提供地址,CPU通过将地址输出到存储器或I/O接口;数据总线用于 在CPU与存储器或I/O

10、接口之间或存储器与外设之间交换数据;控制总路线包括CPU发出的控制信号线和外部送入CPU的应答线等。61602液晶驱动显示#1602液晶驱动显示图3-1单片机结构框图#1602液晶驱动显示 好 7e01111*1 iuuuLliuiLJLJiLJ 尸p尸尸尸ppp冃戸尸p下面介绍下89S52单片机的引脚的功能和其内部结构图。AT89S52单片机实际有郊的引脚为40个,有3种封装形式,一种是DIP( Dual Inline Package)封装形式, 一种是LCC (Quad Flat Package封装形式。这种形式是具有 44个“J'形脚的方 型芯片。另一种是QFP( Quad Fl

11、at Package封装形式,这种形式是具有44个“ J” 形脚的方型芯片,但它的体积更小、更薄,是一种表面贴焊的封装形式。下面介绍 DIP封装形式的引脚的名称,如图3-2。_ VOOn F»O.O (AOO> F*O. 1 EACM > 二)尸。N (AO£> 二I RO 3 <AO3> n pop( A&4> PO-&n RO 右(Adn RO.7 (AO7> n es/vff*5 Al_£/P-F%o-C3 p PSETi二! PN一了 (XI S>二I PNW (A1O> 二1 PN4二

12、J 尸匕2 3 (A 1 1 > n F*NW <A 1O>O R2_1 (A9> ZJ PNO (AS>图3-2单片机的引脚说明图3.3是89S52的内部结构图,由图可以看到在单片机内部除了有 CPU、RAM、ROM 和定时器、串行口等主要功能部件之外,还有驱动器、锁存器、指令寄存器、地址 寄存器等辅助电路部分,以及各功能模块在单片机中的位置和相互关系。71602液晶驱动显示P».O- PD 7厂RAMX13寄存骞P'SW3RAM 地 ipPO 瞎柑序地吐|掃 I用业初騎JACC屮斷*申厅1和皇时赭:LP3锁仃船PI镶存器/ I i 乩P3 I

13、嵌也牌PI骡动器:4 裟冲券 卜刁X单片机具有控制功能强、集成度高、体积小、有很高的可靠性、有优异的性能价格 比、低功耗、低电压等优点。下图就是单片机最小系统原理图。81602液晶驱动显示#1602液晶驱动显示I .|.|. |.|. | I - I F4 4-I - -t 'l -4 t" I -1 I -畠“H I 卜+G 卜卜卜卜卜卜卜卜卜卜卜卜卜卜卜卜卜卜卜卜卜卜> aTUk-T "J、91602液晶驱动显示101602液晶驱动显示Pin39P01PI3PCUP15635PI63433prsPQ632103!P31 11±301:1314:7

14、26P5616P2417ISP212021P20Y1tCIC12? DPHPPL CCxPOCJZ2CO2岡COX2PH 5Pl.O PLIP12 Pl 3Pl.4Pl 5MOSI PL6n$O Pl ? SCK RST P3.0RXD P3.1 TXD P3 丄!NT。P3 3TKTI P3.4TQ P3.y'Tl P3_6AVR P3 7 RD XTAL2 XTAL1GNDAD2 PO 2AD3 P0.3ADJ P0.4 ADMFOWAD<5 PDJ5-W7 PO 7 EAVPP -ALE PROG PESNA15 P2 7A14P2 6 AB'P2.5 A12P2.

15、4A11/M.3A1QP2.2A9/P2.1AS P2.0f vcc AD0P0,0 ADI POJATS9S522 1602字符液晶图:111602液晶驱动显示3 1602液晶详细介绍:3.1工业字符型液晶外形尺寸(LxWxH) 80.0x36x12.0 视域尺寸(WxHxT) 64.5x13.8驱动电压(V) 5.0V or 3.3V 驱动控制芯片 KS0066工作温度(oC) 050 or -2070存储温度(oC) -1060 or -3080显示类型 STN or FSTN显示模式 黄绿/黑白屏/灰屏/兰屏LED背光类型 白光or黄绿光生产工艺 COB or SMT产品型号TJDM1

16、602C工业字符型液晶,能够同时显示16x2即32个字符。液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表 和低功耗应用系统中得到越来越广泛的应用。这里介绍的字符型液晶模块是一种用 5x7点阵图形来显示字符的液晶显示器,根据显示 的容量可以分为1行16个字、2行16个字、2行20个字等等,这里以常用的2行16 个字的1602液晶模块来介绍它的编程方法。3.2 1602标准的16脚接口第1脚:VSS为地电源第2脚:VDD接 5V正电源第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最 高,对比度过高时会产生“鬼影”,使用时可以通过一个10K

17、的电位器调整对比度第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当 RS和RW 共同为低电平时可以写入指令或者显示地址, 当RS为低电平RW为高电平时可以读忙信 号,当RS为高电平RW为氐电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0- D7为8位双向数据线第1516脚:空脚3.3液晶的编程方法1602液晶模块内部的字符发生存储器(CGROM)经存储了 160个不同的点阵字符图形, 如表1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的

18、符号、和日文假名 等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H,显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“ A”我13U CCROM W CCRAM中字帚買觀与字符圈形对旗芸窸00000010WH01000101oi ioOlli'J1010ionHOC11011110HllXXX XC00QCXRAM 1Cl)FQapp夕<ZiaPXX X XOWI(«1#1AQg曾口7厶i '1qXXX X0010*2BRbtr彳ftXXX XOOII3 :CSJ吒1tgx XXX01QO(S>:

19、$4DTdI工卜i |产nX XX X0101KEUeu0才工Baxxx xonoC7>&fiFV i ,!VT3PJXXX X01L1>TGW8w7IX X X X1Q00(D(aHXhK*二 j.XX XXX10Q1> fpI 1Yiyj-1XXX xioiotJZjXX';k亠L±,XXXXiOll(4)+KKIk1寸tOLaXXX XllOO<Lr ¥11七V77QAXXXX 11QIL Mmr)JLA、7曜屮xxxxmoC;)>wn'#帛八l LXXX KUH(8)7T0o4*77D1 a1 . 1602液晶模

20、块内部的控制器共有11条控制指令,如表2所示,表 指令裘拨令RSR/WD7DSD4D3D2DIDO0000C0 10001 .光标返回00000000100000001I/Os壷示开f关控制00000Q1Dc光掠或字符移位000001S/CR/L00Q01儿NF去录蒔发生存贮器馳址00Q1字幷发生存贮器地址AGG)琵数据存贮踞地址00显示数据存氏器地址(ADD)谏ft标志成地址01BF计呢靈地址"6垮独到CGRAM血DDRAM10从CGRAM或DDRAM读数11读出的數据它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01

21、H,光标复位到地址00H位置指令2:光标复位,光标返回到地址 00H指令3:光标和显示模式设置I/D :光标移动方向,高电平右移,低电平左移S:屏幕上 所有文字是否左移或者右移。高电平表示有效,低电平则无效指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示 关显示C :控制光标的开与关,高电平表示有光标,低电平表示无光标B :控制光标是否闪烁,高电平闪烁,低电平不闪烁指令5:光标或显示移位S/C :高电平时移动显示的文字,低电平时移动光标指令6:功能设置命令DL:高电平时为4位总线,低电平时为8位总线N :低电平时为 单行显示,高电平时双行显示 F:低电平时显示5x7

22、的点阵字符,高电平时显示 5x10 的点阵字符(有些模块是DL:高电平时为8位总线,低电平时为4位总线)指令7:字符发生器RAM地址设置指令8: DDRAI地址设置指令9:读忙信号和光标地址BF:为忙标志位,高电平表示忙,此时模块不能接收命令 或者数据,如果为低电平表示不忙。指令10:写数据指令11:读数据161602液晶驱动显示DM-1602液晶显示模块可以和单片机AT89C51/52直接接口,电路如图1所示I:LVEM=- _:-TWK L-171602液晶驱动显示#1602液晶驱动显示液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标 志为低电平,表示不忙,否则此指

23、令失效。要显示字符时要先输入显示字符地址,也就 是告诉模块在哪里显示字符,表 3是DM-1602的内部显示地址.18082838485868788898A8B8C8D8E8F90919293HHHHHHHHHHHHHHHHHH2C0C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3HHHHHHHHHHHHHHHHHHH结论经历数星期的单片机实训眼看尘埃落定, 感觉忍不住要长出一口气。我除学习外均 有一定的日常工作,数日来,为了这个实训真是花了很多功夫,将所有的课余时间均奉 献给了这个实训我还做了三块板,结果怎样已然不再重要,在这几日里,我们经历了阶段性成功的狂喜、测试失败

24、 后的绝望、陷入困境时的不知所措,重新投入的振作。除此之外,我们学会了焊接电路板,还有掌握了书本以外的电子技术知识,培养 了专心致志的工作学习习惯,在遇到很多不懂的问题时,请教了同学,还有符强老师, 可谓获益匪浅,在后来做的哪几块板中我的感受是:我做板的速度,质量都有了很大的提高 而且做得时候也细心了很多,就好像符强老师说的哪样:'做一次就有一次新的体会! ”这是 真的,另外在软件方面,因为我以前是用C语言的,现在编这个程序是用汇编语言,通过参 考别人的程序,再结合自己的所需调试了一段时间才调好在调试时是很要耐心的,也许这 个程序不行就是一个非常小的问题,比如说一个语句判断相反,反正要

25、慢慢检查,慢慢体会 才会成功!不过,我很高兴,我做的三块板最后都成功了 !并都实现了我的要的功能,并且 我以后我还会不断的完善软件和硬件,使其有更多的功能!181602液晶驱动显示致谢感谢应用科技学院提供这个实训的机会;感谢符老师的指导还有我宿舍同学的帮助;尤其是同学还有实验室的师兄们对我帮助是很大的,帮我解决问题191602液晶驱动显示参考文献1、单片微型计算机与接口技术(第 2版)黄建电子工业出版社2003年3月 主编:李群芳 张士军2、单片机原理及应用电子工业出版社主编:张鑫3、Protell99电路设计与应用机械工业出版社主编:孙江宏 李良玉201602液晶驱动显示参考文献1单片微型计

26、算机与接口技术(第 2版)黄建电子工业出版社2003年3月 主编:李群芳 张士军2、单片机原理及应用电子工业出版社主编:张鑫3、Protell99电路设计与应用机械工业出版社主编:孙江宏 李良玉181602液晶驱动显示K3EQUP2.7;K4EQUP2.6K5EQUP2.5K6EQUP2.4;LCD引脚定义RSEQUP3.5;LCD RS引脚定义RWEQUP3.6;LCD RW引脚定义EEQUP3.7;LCD RS引脚定义ORG0000H;程序由地址0开始执行JMPMAINORG0BH;定时器0中断地址设置JMPT0_INT主程序MAIN:开始MOVSP,#60H;堆栈指针指向60HCLRE;

27、E=0,禁止读/写LCMACALL SET_LCD;调LCD控制子程序ACALL INIT;初始化变量MOVK1_P,#01H;按键上次端口设置1ACALL INIT_TIMER;初始化定时器ACALL MEU;调用工作菜单子程序ACALLCONV;时间计数处理JB1K3, M1;未按下K1键则继续扫描ACALLSET_TIME;设置目前时间JMPLOOP;继续循环执行M1:JBK4,M2;未按下K2键则继续扫描JMPLOOP;继续循环执行M2:JBK5, M3;未按下K3键则继续扫描JMPLOOP;继续循环执行M3:JBK6,M4;未按下K4键则继续扫描JMPLOOP;继续循环执行M4: J

28、Z:LOOP;无键按下转LOOPJMPLOOP;继续循环执行MOVK1_P,K1_N;父换数据JMP LOOP;跳LOOP处循环;初始变量清零子程序INIT:;初始变量清零CLRA;A清为零MOVK1_C,A;K1_C初始为0MOVDEDA,A;DEDA初始为0MOVSEC,A;SEC初始为0MOVMIN,A;MIN初始为0MOVHOUR,A;HOUR初始为0MOVK1_N,A;K1_N初始为0MOVK1_P,A;K1_P初始为0CLRTR0;启动中断RET;定时器初始化设置子程序INIT_TIMER:MOV TMOD,#00000001BMOV IE, #10000010B;定时器初始化;定

29、时器0模式1;开通中断MOV TL0,#L0W(65536-10000);定时初值装入低位MOV TH0,#HIGH(65536-10000);定时初值装入高位RET ;中断服务程序T0_INT:;定时器T0中断程序PUSH ACC;入栈保护MOV TL0,#LOW(65536-10000);重加载MOV TH0,#HIGH(65536-10000)INCDEDAMOVA,DEDACJNEA,#100,TTMOVDEDA,#0INCSECMOVA,SECCJNEA,#60,TTINCMINMOVSEC,#0MOVA,MINCJNEA,#60,TTINCHOURMOVMIN,#0MOVA,HOU

30、RCJNEA,#24,TTMOVDEDA,#0MOVSEC,#0MOVMIN,#0MOVHOUR,#0;10ms计数值加1秒加1;分加1;时加1;秒、分、时单元清0TT: POP ACCRETI;出栈中断程序返回 LCD显示 ;LCD控制子程序SET_LCD:;CLR EACALL INIT_LCD;初始化 LCDMOV R5,#10ACALL DELA YMOV DPTR,#LMESS1 ;指针指到显示消息1 MOV A,#1;显示在第一行ACALL LCD_PRINT;调用显示字符子程序MOV DPTR,#LMESS2 ;指针指到显示消息2 MOV A,#2;显示在第二行ACALL LCD

31、_PRINT;调用显示字符子程序RETLMESS1: DB "LMESS2: DB "TIME:",0 ;LCD第一行显示消息",0 ;LCD第二行显示消息;LCD初始化子程序INIT_LCD:MOV A,#38HACALL WR_COMMACALL DELA Y1MOV A,#0CHACALL WR_COMMACALL DELA Y1MOV A,#01HACALL WR_COMMACALL DELA Y1RET;设置8位、2行、5x7点阵;调用写指令子程序;调用延时子程序;开显示,光标不闪烁;调用写指令子程序;调用延时子程序;清除LCD显示屏;调用写指

32、令子程序;调用延时子程序;写指令子程序WR_COMM:MOV P1,ACLR RS;RS=0选择指令寄存器CLR RW;RW=0,选择写模式SETB E;E=1,允许读/写 LCMACALL DELA Y1;调用延时子程序CLR E;E=0,禁止读/写 LCMRET;写数据子程序WR_DATA:MOVP1,ASETBRS;RS=1选择数据奇存器CLRRW;RW=0,选择写模式SETBE;E=1,允许读/写LCMACALL DE;调用延时子程序CLRE;E=0,禁止读/写LCMACALL DE;调用延时子程序RET;清除该行LCD的字符CLR_LINE:MOV R0,#24CL1: MOV A,

33、#''ACALL WR_DATADJNZ R0,CL1RET;LCD存入工作菜单MEU:MOVMOVDPTR,#MENU0;存入工作菜单A,#1;第一行CALL LCD_PRINT RET;工作菜单MENU0:DB "2008.12 NOW TIME IS:",0;一行、二行显示字符LCD_PRINT:CJNE A,#1,LINE2 LINE1:ACALL CLR_LINE MOV A, #80HACALL WR_COMM JMP FILLLINE2:;判断是否为第一行;清除该行字符数据;设置LCD的第一行地址;写入命令ACALLCLR_LINE;清除该行字

34、符数据MOVA,#0C0H;设置LCD的第二行地址ACALLWR_COMMFILL: CLR A;填入字符MOVCA,A+DPTR;由消息区取出字符CJNEA,#0,LC1;判断是否为结束码RET;写入数据LC1: ACALL WR_DA TAINC DPTR;指针加1JMP FILL;继续填入字符RET;转换数据子程CONV:MOVMOVACALL;转换为ASCII A,HOURX,#5SKOW LINE2码并显示;加载小时数据;设置位置;显示数据INCMOVMOVACALLMOVXA, #':'B, XLCDP2 A,MININC XACALL SKOW LINE2INCMOVMOVACALLMOV;加载分钟数据;设置位置;显示数据XA, #':'B, XLCDP2A,SECINC XACA

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论