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

📄 电子琴0.asm

📁 (1)设计一个简易的八音符电子琴
💻 ASM
字号:
         ORG 00H
         JMP START
         ORG 0BH
         JMP TIM0
START:   MOV TMOD,#00000001B
         MOV IE,#10000010B
         JB  P3.4, $
         CALL DELAY1
         JNB P3.4, $
         MOV 31H,#00
START0:
         MOV 30H,#LOW SONG
NEXT:    MOV A,30H
         MOV DPTR,#TABLE
         MOVC A,@A+DPTR
         MOV R2,A
         JZ  END0
         ANL A,#0FH
         MOV R5,A
         SWAP A
         ANL A,#0FH
         JNZ SING
         CLR TR0
         JMP D1
SING:    DEC A
         MOV 22H,A
         RL A
         MOV DPTR,#TABLE
         MOVC A,@A+DPTR
         MOV THO,A
         MOV 21H,A
         MOV A,22H
         RL A
         INC A
         MOVC A,@A+DPTR
         MOV TL0,A
         MOV 20H,A
         SETB TR0
D1:
         CALL DELAY
         JNC 30H
         JMP NEXT
END0:
         CLR TR0
         MOV A,31H
         XRL A,#00H
         JNZ END1
         JB P3.4,$
         CALL DELAY
         JNB P3.4,$
         INC 31H
         MOV 30H,#LOW SONG1
         JMP NEXT
END1:
         MOV A,31H
         XRL A,#01H
         JNZ END2
         JB P3.4,$
         CALL DELAY
         JNB P3.4,$
         INC 31H
         MOV 30H,#LOW SONG2
         JMP NEXT
END2:
         MOV A,31H
         XRL A,#02H
         JNZ END3
         JB P3.4,$
         CALL DELAY
         JNB P3.4,$
         INC 31H
         MOV 30H,#LOW SONG3
         JMP NEXT
END3:
         MOV A,31H
         XRL A,#03H
         JNZ END4
         JB P3.4,$
         CALL DELAY
         JNB P3.4,$
         INC 31H
         MOV 30H,#LOW SONG4
         JMP NEXT
END4:    MOV A,31H
         XRL A,#04H
         JNZ END35
         JB P3.4,$
         CALL DELAY
         JNB P3.4,$
         INC 31H
         MOV 30H,#LOW SONG5
         JMP NEXT
END5:
         JMP START
TIM0:    PUSH ACC
         PUSH PSW
         SETB RS0
         CLR  RS1
         MOV TL0,2OH
         MOV TH0,21H
         CPL P1.0
         POP PSW
         POP ACC
         RET1
DALAY:   MOV R7,#02
D2:      MOV R4,#125
D3:      MOV R3,#248
         DJNZ R3,$
         DJNZ R4,D3
         DJNZ R7,D2
         DJNZ R5,DELAY
         RET
DEALY:   MOV  R4,#20
D4:      MOV  R3,#248
         DJNZ R3,$
         DJNZ R4,D4
         RET
         ORG 300H
TABLE:
         DW  64260,64400,64524,64580
         DW  64684,64777,64820,64898
         DW  64968,65030,65058,65110
         DW  65157,65178,65217
SONG:
    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H

    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H
    DB 00H
SONG1:
    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H

    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H
    DB 00H
SONG2:
    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H

    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H
    DB 00H
SONG3:
    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H

    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H
    DB 00H
SONG4:
    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H

    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H
    DB 00H
SONG5:
    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H

    DB  42H,42H,42H,52H,64H,04H
    DB  62H,62H,62H,72H,84,04H
    DB  92H,92H,82H,72H,64H,04H
    DB  82H,82H,52H,62H,44H,04H

⌨️ 快捷键说明

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