record.asm

来自「51系列单片机的汇编程序包」· 汇编 代码 · 共 48 行

ASM
48
字号
;============== 语音控制:录音 ====================
RecCode equ   40h

        org   0000h

        mov   sp,#53h
        mov   r7,#0

Loop:   acall zh_rec
        acall Record
        mov   r0,#0FH         ;#0fh
yh:     djnz  r0,yh
        inc   r7
        cjne  r7,#14h,Loop
        mov   a, #0FFh
        mov   dptr,#8e18h
        movx  @dptr,a
        sjmp  $

zh_rec: mov   a,r7              ;r7 is segment address:0,1,2,....
        mov   dptr,#Tab_Rec
        movc  a,@a+dptr
        mov   RecCode,a
        ret

Record: mov   dptr,#8e18h
        mov   a,RecCode
        movx  @dptr,a
        lcall d500ms
        lcall d500ms
        ret

d500ms: mov   r5,#0AH             ;#5
dl1:    acall d100ms
        djnz  r5,dl1
        ret

d100ms: mov   r6,#0C8H            ;#64h
dl2:    mov   r4,#0ffh
dl3:    djnz  r4,dl3
        djnz  r6,dl2
        ret

Tab_Rec:db    40h,42h,44h,46h,48h,4ah,4ch,4eh,50h,52h
        db    54h,56h,58h,5ah,5ch,5eh,60h,62h,64h,66h
        
        END

⌨️ 快捷键说明

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