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

📄 新建 文本文档 (3).txt

📁 zlg7289显示键盘芯片 带消隐程序,包含多个文件,调试通过
💻 TXT
字号:
BIT_CNT DATA 30H
DELAY1 DATA 31H
DECIMAL DATA 32H
REC_BUF DATA 20H
SEND_BUF DATA 21H
CS BIT P1.1
CLK BIT P1.2
DIO BIT P1.3
KEY BIT P3.2
ORG 00H
AJMP RESET
ORG  0003H
AJMP MAIN_LP
ORG 80H
RESET:
SETB CS
SETB KEY
SETB DIO
MOV  IE, #81H
CLR  IT0
MOV DELAY1,#25 ;延时25MS
RST_DELAY1:
DJNZ DELAY1,RST_DELAY1
MOV SEND_BUF,#A4H ;初始化命令
CALL SEND
SETB CS
SJMP $
MAIN_LP:
MOV SEND_BUF,#15H ;有键按下,发送读键盘命令
CALL SEND
CALL RECEIVE ;读键盘
SETB CS
MOV B,#10 ;10 进制转换
MOV A,REC_BUF
DIV AB
MOV DECIMAL,A
MOV SEND_BUF,#A1H ;左移2 次.
CALL SEND
SETB CS
MOV SEND_BUF,#A1H
CALL SEND
SETB CS
MOV SEND_BUF,#81H ;下载数据且译码.
CALL SEND
MOV SEND_BUF,DECIMAL ;发送10 位数到zlg7289A 显示
CALL SEND
SETB CS
MOV SEND_BUF,#80H ;下栽数据且译码.
CALL SEND
MOV SEND_BUF,B ;发送个位数据到zlg7289A
CALL SEND
SETB CS
MOV SEND_BUF,#88H ;设定刚发送数据显示为闪烁
CALL SEND
MOV SEND_BUF,#FCH
CALL SEND
SETB CS
MAIN_LP2:
JNB KEY,MAIN_LP2  ;等待键松开.
RETI
;-----------------------------------------
;发送一字节到zlg7289A,高位在前
;-----------------------------------------
SEND:
MOV BIT_CNT,#8 ;设发送位数为8 位.
CLR CS
CALL LONG_DELAY ;延时50 微秒.
SEND_LP:
MOV A,SEND_BUF
RLC A
MOV SEND_BUF,A
MOV DIO,C
NOP
NOP
SETB CLK
CALL SHORT_DELAY ;延时10 微秒.
CLR CLK
CALL SHORT_DELAY ;延时10 微秒.
DJNZ BIT_CNT,SEND_LP
CLR DIO
RET
;-------------------------------------
;由zlg7289A 接收一字节数据,高位在前
;-------------------------------------
RECEIVE:
MOV BIT_CNT,#8 ;定义接收8 位.
SETB DIO
CALL LONG_DELAY ;延时50 微秒.
RECEIVE_LP:
SETB CLK
CALL SHORT_DELAY ;延时10 微秒.
MOV C,DIO ;接收数据送REC_BUF 低位.
MOV A,REC_BUF
RLC A
MOV REC_BUF,A
CLR CLK
CALL SHORT_DELAY ;延时10 微秒.
DJNZ BIT_CNT,RECEIVE_LP
CLR DIO
RET
LONG_DELAY:
MOV DELAY1,#25
DJNZ DELAY1,$
RET
SHORT_DELAY:
MOV DELAY1,#4
DJNZ DELAY1,$
RET
END

⌨️ 快捷键说明

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