📄 ts_led.asm.bak
字号:
;===============================================================================================================
;串行发送DTLED-6显示
; 30H - 31H - 32H - 33H - 34H - 35H - 36H - 37H - 38H
; 小数点 - 数码管1- 数码管2- 数码管3- 数码管4- 数码管5- 数码管6-ID识别码-BZ识别码
;00000xxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx-0000xxxx
;小数点=1~6,其它为不显示
;数码管1-6=0~15,
;ID识别码=0~15
;BZ识别码=BZ.3为蜂鸣输出控制位,0=关闭,1=打开
; BZ0~2为蜂鸣频率输出设定为,000=不分频, 最高频率输出=4800Hz;
; 001=一次分频,频率输出=4800/ 2 =2400Hz;
; 010=二次分频,频率输出=4800/ 4 =1200Hz;
; 011=三次分频,频率输出=4800/ 8 =600Hz;
; 100=四次分频,频率输出=4800/ 16=300Hz;
; 101=五次分频,频率输出=4800/ 32=150Hz;
; 110=六次分频,频率输出=4800/ 64=75Hz;
; 111=七次分频,频率输出=4800/128=38Hz;
;================================================================================================================
EN EQU P1.7
DOUT EQU P1.6
CLK EQU P1.3
DOT EQU 30H
D_1 EQU 31H
D_2 EQU 32H
D_3 EQU 33H
D_4 EQU 34H
D_5 EQU 35H
D_6 EQU 36H
ID EQU 37H
BZ EQU 38H
ORG 0000H
AJMP START
ORG 0100H
START:
MOV ID,#01H
MOV BZ,#00H
MOV DOT,#01H
MOV D_1,#00H
MOV D_2,#01H
MOV D_3,#02H
MOV D_4,#03H
MOV D_5,#04H
MOV D_6,#09H
ACALL TS_LED
SJMP $
TS_LED:
MOV R1,#30H
MOV R2,#09H
CLR CLK
CLR EN
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
TS_LOOP1:
MOV A,@R1
SWAP A
MOV R3,#04H
TS_LOOP2:
SETB CLK
RLC A
MOV DOUT,C
CLR C
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
CLR CLK
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R3,TS_LOOP2
INC R1
DJNZ R2,TS_LOOP1
SETB EN
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -