1khzpw50程序.txt

来自「语音芯片PM50的汇编源码程序 以及简单说明」· 文本 代码 · 共 60 行

TXT
60
字号
    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 + =
减小字号Ctrl + -
显示快捷键?