📄 lcdfrequency.asm
字号:
org 0000h
ajmp main
org 0003h
ajmp intx0
org 000bh
ajmp intt0
org 0030h
main:
mov sp,#5fh
setb it0
setb px0 ;外部中断0优先
mov tmod,#02h
MOV 45H,#00H
ACALL DELAYA
ACALL DELAYA
ACALL DELAYA
ACALL INIT
ACALL FIRST
MOV DPTR,#TABLE1
ACALL DISPLAY
ACALL SECOND
MOV DPTR,#TABLE2
ACALL DISPLAY
MOV DPTR,#TABLE4
ACALL FOUR
ACALL DISPLAY
xiayi:mov th0,#38h
mov tl0,#38h
SETB EA
SETB ET0
; SETB EX0 ; 外中断
setb tr0
mov r7,#72
mov r6,#00h
WAIT1:;ACALL DISPLAY
cjne r7,#00h,wait1
mov ie,#00h ;只显示一秒到时的所测频率
clr tr0
mov r1,#30h; (30h)送到40单元
mov r0,#40h
zaici:mov b,@r1
mov @r0,b
inc r0
inc r1
cjne r1,#35h,zaici
mov r0,#30h
fanh: mov @r0,#00h ;将显示寄存器地址内容清零
inc r0
cjne r0,#35h,fanh
; ajmp xiayi
SS: ACALL KEY
MOV A,#0C0H
ACALL WRCON
ACALL DISPLAY
ACALL DELAYA
ACALL THIRED
MOV A,44H
ANL A ,#0FH
ACALL TABLE3
ACALL WRDATA
LCALL DELAYA
MOV A,43H
ANL A ,#0FH
ACALL TABLE3
ACALL WRDATA
LCALL DELAYA
MOV A,42H
ANL A ,#0FH
ACALL TABLE3
ACALL WRDATA
LCALL DELAYA
MOV A, #10100101B ;点
ACALL WRDATA
LCALL DELAYA
MOV A,41H
ANL A ,#0FH
ACALL TABLE3
ACALL WRDATA
LCALL DELAYA
MOV A,40H
ANL A,#0FH
ACALL TABLE3
ACALL WRDATA
LCALL DELAYA
AJMP xiayi
DELAYA: MOV R3, #10H
DELAY0: MOV R4, #20H
DELAY1: DJNZ R4,DELAY1
DJNZ R3,DELAY0
RET
INIT:
ACALL BUSY
MOV A,#01H
ACALL WRCON
MOV A,#38H
ACALL WRCON
MOV A,#38H
ACALL WRCON
MOV A,#38H
ACALL WRCON
MOV A,#38H
ACALL WRCON
MOV A,#0CH
ACALL WRCON
MOV A,#01H
ACALL WRCON
MOV A,#06H
ACALL WRCON
RET
DISPLAY:
MOV R1,#00H
NEXT:
MOV A, R1
MOVC A, @A+DPTR
CJNE A, #23H,DSP
RET
DSP:
ACALL WRDATA
INC R1
AJMP NEXT
FIRST:
MOV A,#10000000B
ACALL WRCON
RET
SECOND:
MOV A,#11000011B
ACALL WRCON
RET
THIRED:
MOV A,#11000111B
ACALL WRCON
RET
FOUR:
MOV A,#11001101B
ACALL WRCON
RET
WRCON:
ACALL BUSY
MOV P3,#11010101B
NOP
SETB P3.3
MOV P0,A
NOP
CLR P3.3
RET
WRDATA:
ACALL BUSY
MOV P3,#11010111B
NOP
SETB P3.3
MOV P0,A
NOP
CLR P3.3
RET
BUSY:
PUSH ACC
WAIT:
MOV P3,#11110101B
NOP
SETB P3.3
MOV A,P0
JB ACC.7,WAIT
POP ACC
RET
KEY:
MOV P3,#0FFH
JB P3.4,KEY2
KEY1:
ACALL DELAY
JNB P3.4,KEY1
MOV A,45H
CJNE A,#01H,KEY11
MOV 45H,#00H
AJMP KEY2
KEY11:
INC 45H
KEY2:
MOV A,45H
CJNE A,#00H,KEY3
MOV DPTR,#TABLE6
AJMP NNN
KEY3:
MOV DPTR,#TABLE5
NNN:
RET
DELAY:
MOV R5,#80H
D1:
MOV R4,#80H
DJNZ R4,$
DJNZ R5,D1
RET
TABLE3: INC A
MOVC A, @A+PC
RET
DB "0123456789"
TABLE1:
DB "NanhuaUniversity#"
TABLE2:
DB "FM: #"
TABLE6:
DB "Run#"
TABLE4:
DB "MHz#"
TABLE5:
DB "Set#"
Intx0: ;外中段
push psw
push acc
clr ex0 ;禁止外中断
mov r1,#30h
cmp: cjne @r1,#09h,firsSt
mov @r1,#00h
inc r1
cjne r1,#38h,cmp
ajmp wanbi
firsSt:inc @r1
wanbi:setb ex0
pop acc
pop psw
reti
intt0: ;定时器0中断
push psw
push acc
inc r6
cjne r6,#64,huiqu
mov r6,#00h
dec r7
huiqu:
pop acc
pop psw
reti
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -