📄 1khzpw50程序.txt
字号:
K1 EQU P1.1 ;k1脚
K2 EQU P1.2 ;k2脚
O1 EQU P1.5 ;o1脚
;初始化
ORG 0000H
MOV P1,#0FFH
MOV P3,#0FFH
MOV SP,#60H
MOV R2,#80H
MOV PSW,#00H
FANGYIN: ;放音程序
JB P1.6,FANGYIN
MOV A,R2 ;当前需要放音的地址
STEP1: ;先给40毫秒以上的信号\
SETB K1
ClR K1
ACAll time50ms ;延时
ACAll time50ms
SETB K1
ACAll time50ms
ACAll time50ms
MOV R7,#8H ;串口循环次数
STEP2: ;READ DATA
SETB K2
ACAll time500us
ClR K2
RRC A
MOV K1,C
ACAll time500us
SETB K2
DJNZ R7,STEP2
SETB O1
ACAll time50ms
ACAll time50ms
ACAll time50ms
ACAll time50ms
ACAll time50ms
;ClR O1 ;给O1一个结束信号
STEP3: JB O1,STEP3 ;等待O1信号
INC R2
CJNE R2,#84H ,FANGYIN
MOV R2,#80H
ACALL time50ms
AjMP FANGYIN
time500us: MOV R5,#0FAH ; 延时501us
DJNZ R5,$
RET
time50ms: MOV R4,#100 ; 延时50MS
ACALL time500us
DJNZ R4,$
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -