⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 两行显示.asm

📁 时间和温度同时拥有,一次满足你两个愿望,而且友好的界面,一定合你心意.
💻 ASM
字号:
              DATDB   EQU      P0
              TEMPL   EQU      3EH
              TEMPH   EQU      3FH
              ALARMHL EQU      40H
              ALARMHH EQU      41H
              ALARMLL EQU      42H
              ALARMLH EQU      43H
              MODE1   BIT      7EH
              MODE2   BIT      7DH
              ONALARM BIT      7CH
              ALARMM  BIT      P3.7
              K1      BIT      P2.2
              K2      BIT      P2.1
              K3      BIT      P2.0
              RS      BIT      P1.0
              RW      BIT      P1.1
              E       BIT      P1.2
              FLAG    BIT      00H
              DAT     BIT      P3.6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
        ORG  00H
        JMP  DESPLAY
        ORG  000BH
        AJMP INSERS
        RETI
        ORG  50H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DESPLAY:  
        MOV   TMOD,#0
        MOV   TL0,#0
        MOV   TH0,#0
        SETB  EA
        SETB  ET0
        SETB  TR0
        MOV   R5,#50
        CLR   P3.2
        SETB  P3.1
        MOV   SP,#60H
 DISPLAY1:
        CALL  INITIAL;启动显示
        CALL  CLS;清屏
        MOV   A,#10000000B
        CALL  WRITE
        MOV   DPTR,#LINE1;指向显示内容
        mov   R3,#0
        LCALL PRSTRING;查显示内容
        MOV   A,#11000000B
        CALL  WRITE
        MOV   DPTR,#LINE2
        MOV   R3,2BH
        LCALL PRSTRING1;查显示内容
        MOV   A,#11000001B
        CALL  WRITE
        MOV   DPTR,#LINE2
        MOV   R3,2AH
        LCALL PRSTRING1;查显示内容
        MOV   A,#11000010B
        CALL  WRITE
        MOV   DPTR,#LINE2
        MOV   R3,29H
        LCALL PRSTRING1;查显示内容
        MOV   A,#11000011B
        CALL  WRITE
        MOV   DPTR,#LINE2
        MOV   R3,28H
        LCALL PRSTRING1;查显示内容   
LOOP:   RETI
LINE1:  DB     'temp:',00H
LINE2:  DB    '0','1','2','3','4','5','6','7','8','9',00H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INSERS: MOV   TH0,#0
        MOV   TL0,#0
        DJNZ  R5,NO
        MOV   R5,#50
        CPL   P3.2
        CPL   P3.1
NO:     RETI
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;      启动LCM子程序              
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INITIAL:MOV   A,#00111000B;设置为8BIT汇流,显示两行并使用5*7的字型
        CALL  WRITE
        MOV   A,#00001110B;设置为显示器要显示,光标要显示并闪烁
        CALL  WRITE
        MOV   A,#00000110B;设置为每一次资料输入后光标自动向右移一格
        CALL  WRITE
        RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;     检测显示器是否忙 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
CHECKBUSY:
        PUSH  ACC
CHECKBUSYLOOP:
        CLR   E
        SETB  RW
        CLR   RS
        SETB  E
        MOV   A,DATDB
        CLR   E
        JB    ACC.7,CHECKBUSYLOOP;BF=1时忙,直到检测到BF=0时才跳出循环
        POP   ACC
        CALL  DELAY
        RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;     写寄存器子程序
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
WRITE:  CALL  CHECKBUSY
        CLR   E
        CLR   RW
        CLR   RS
        SETB  E
        MOV   DATDB,A
        CLR   E
        RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;     写显示内容字程序
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
WRITELCDDATA:
        CALL  CHECKBUSY
        CLR   E
        CLR   RW
        SETB  RS
        SETB  E
        MOV   DATDB,A
        CLR   E
        RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
CLS:    MOV   A,#01H;清显示屏
        CALL  WRITE
        RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
PRSTRING: PUSH  ACC
PRLOOP: CLR   A
        mov   a,r3
        MOVC  A,@A+DPTR;查显示内容表
        JZ    EPR;判断是否查到结束标志位00H
        CALL  WRITELCDDATA
        INC   DPTR
        JMP   PRLOOP
EPR:    POP   ACC
        RET
PRSTRING1: PUSH  ACC
PRLOOP1: CLR   A
        mov   a,r3
        MOVC  A,@A+DPTR;查显示内容表
        CALL  WRITELCDDATA      
EPR1:   POP   ACC
        RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY:  MOV   R6,#5
D1:     MOV   R7,#248
        DJNZ  R7,$
        DJNZ  R6,D1
        RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DL10MS:  LCALL DELAY
        LCALL DELAY
        LCALL DELAY
        LCALL DELAY
        LCALL DELAY
        LCALL DELAY
        LCALL DELAY
        LCALL DELAY
        LCALL DELAY
        LCALL DELAY
        RET
        
        
DL50MS: LCALL DL10MS        
        LCALL DL10MS
        LCALL DL10MS
        LCALL DL10MS
        LCALL DL10MS
        RET
        END


















  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -