LCD1602液晶初始化程序.doc_第1页
LCD1602液晶初始化程序.doc_第2页
LCD1602液晶初始化程序.doc_第3页
LCD1602液晶初始化程序.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

原创1602液晶初始化程序(2007-12-22 18:10:40)标签:1602液晶it/科技汇编语言 液晶初始化,显示数字,按秒计数 RS EQU P2.0 RW EQU P2.1 E EQU P2.2 IN_0 EQU P0 SECL EQU 40H ;秒低位 SECH EQU 41H ;秒高位 MH1 EQU 42H ;冒号 MINL EQU 43H ;分低位 MINH EQU 44H ;分高位 MH2 EQU 45H ;冒号 HOURL EQU 46H ;时低位 HOURH EQU 47H ;时高位;* ORG 0000H AJMP START ORG 000BH AJMP INTT_0START:MOV SP,#70H MOV R2,#20 ACALL INIT_LCD ;初始化液晶 MOV R5,#00H MOV IN_0,#84H ;写入显示起始地址(第一行第五个位置 ACALL ENABLE MOV TH0,#3fH ;50MS MOV TL0,#0b0H MOV TMOD,#01H ACALL SJCZSTART1:SETB EA SETB ET0 SETB TR0 LCALL WDATA AJMP START1;*时间初值*SJCZ: MOV 40H,#8 ;显示初值是 08:08:08 MOV 41H,#0 MOV 42H,#10 MOV 43H,#8 MOV 44H,#0 MOV 45H,#10 MOV 46H,#8 MOV 47H,#0 RET;*T0定时器中断*INTT_0: PUSH ACC MOV TL0,#0b0H ;送定时初值 MOV TH0,#3fH DJNZ R2,TT MOV R2,#20 INC SECL ;秒记数,到60S就清0 MOV A,SECL CJNE A,#0AH,TT INC SECH MOV SECL,#0 MOV A,SECH CJNE A,#06H,TT MOV SECH,#0 INC MINL ;分记数,到60分请0 MOV A,MINL CJNE A,#0AH,TT MOV MINL,#0 INC MINH MOV A,MINH CJNE A,#06H,TT MOV MINH,#0 INC HOURL ;时记数,到24时清0 MOV A,HOURL CJNE A,#04H,TT2 MOV A,HOURH CJNE A,#02H,TT1 MOV HOURL,#0 MOV HOURH,#0 AJMP TTTT2: CJNE A,#0AH,TT MOV HOURL ,#0 INC HOURH AJMP TTTT1: MOV A,HOURL CJNE A,#0AH,TT MOV HOURL ,#0 INC HOURH AJMP TTTT: POP ACC RETI;*液晶初始化*INIT_LCD: CALL DELAYL ;延时20ms,等待LCD完成电源的启动 MOV IN_0,#01H ;清屏并光标复位 ACALL ENABLE MOV IN_0,#38H ;设置显示模式:8位2行5x7点阵 ACALL ENABLE MOV IN_0,#0FH ;显示器开、光标开、光标允许闪烁 ACALL ENABLE MOV IN_0,#06H ;文字不动,光标自动右移 ACALL ENABLE MOV IN_0,#0C0H ;写入显示起始地址(第二行第一个位置) ACALL ENABLE RET;*写数据程序*WDATA: MOV IN_0,#84H ;写入显示起始地址(第一行第五个位置 ACALL ENABLE MOV R1,#8 MOV R0,#47HWDATA1: MOV A,R0 MOV DPTR,#TABLE MOVC A,A+DPTR MOV IN_0,A ;写入数据 SETB RS CLR RW CLR E ACALL CHECKBUSY SETB E ; 忙检测 DEC R0 DJNZ R1,WDATA1 MOV R1,#8 RET;*显示字母表*TABLE: DB 30H,31H,32H,33H,34H,35H ;0 1 2 3 4 5 DB 36H,37H,38H,39H,3AH,80H,2EH ;6 7 8 9 : 空格 .;*写指令*ENABLE: CLR RS ;写入控制命令的子程序 CLR RW CLR E ACALL CHECKBUSY SETB E RET;*程序忙检测*CHECKBUSY: MOV IN_0,#0FFH ;判断液晶显示器是否忙的子程序 CLR RS SETB RW CLR E NOP SETB E JB P0.7,CHECKBUSY ;如果P1.7为高电平表示忙就循环等待 RET;*延时程序*DELAY: MOV R6,#50DEL: MO

温馨提示

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

评论

0/150

提交评论