新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機音樂程序設計(含源程序)

        單片機音樂程序設計(含源程序)

        作者: 時間:2011-05-31 來源:網絡 收藏

        MOVC A,@A+DPTR ;查表取代碼
        JZ END0 ;是00H,則結束
        CJNE A,#0FFH,MUSIC5
        LJMP MUSIC3
        MUSIC5:
        NOP
        MOV R6,A
        INC DPTR
        MOV A,B
        MOVC A,@A+DPTR ;取節拍代碼送R7
        MOV R7,A
        SETB TR0 ;啟動計數
        MUSIC2:
        NOP
        CPL P1.0
        MOV A,R6
        MOV R3,A
        LCALL DEL
        MOV A,R7
        CJNE A,20H,MUSIC2 ;中斷計數器(20H)=R7否?
        ;不等,則繼續循環
        MOV 20H,#00H ;等于,則取下一代碼
        INC DPTR
        ; INC B
        LJMP MUSIC1
        MUSIC3:
        NOP
        CLR TR0 ;休止100毫秒
        MOV R2,#0DH
        MUSIC4:
        NOP
        MOV R3,#0FFH
        LCALL DEL
        DJNZ R2,MUSIC4
        INC DPTR
        LJMP MUSIC1
        END0:
        NOP
        MOV R2,#64H ;歌曲結束,延時1秒后繼續
        MUSIC6:
        MOV R3,#00H
        LCALL DEL
        DJNZ R2,MUSIC6
        LJMP MUSIC0
        DEL:
        NOP
        DEL3:
        MOV R4,#02H
        DEL4:
        NOP
        DJNZ R4,DEL4
        NOP
        DJNZ R3,DEL3
        RET
        NOP
        DAT:
        DB 18H, 30H, 1CH, 10H
        DB 20H, 40H, 1CH, 10H
        DB 18H, 10H, 20H, 10H
        DB 1CH, 10H, 18H, 40H
        DB 1CH, 20H, 20H, 20H
        DB 1CH, 20H, 18H, 20H
        DB 20H, 80H, 0FFH, 20H
        DB 30H, 1CH, 10H , 18H
        DB 20H, 15H, 20H , 1CH
        DB 20H, 20H, 20H , 26H
        DB 40H, 20H , 20H , 2BH
        DB 20H, 26H, 20H , 20H
        DB 20H, 30H , 80H , 0FFH
        DB 20H, 20H, 1CH , 10H
        DB 18H, 10H, 20H , 20H
        DB 26H, 20H , 2BH , 20H
        DB 30H, 20H , 2BH , 40H
        DB 20H, 20H , 1CH , 10H
        DB 18H, 10H, 20H, 20H
        DB 26H, 20H , 2BH, 20H
        DB 30H, 20H, 2BH , 40H
        DB 20H, 30H, 1CH , 10H
        DB 18H, 20H , 15H , 20H
        DB 1CH, 20H , 20H , 20H
        DB 26H, 40H, 20H , 20H
        DB 2BH, 20H, 26H , 20H
        DB 20H, 20H, 30H , 80H
        DB 20H, 30H, 1CH , 10H
        DB 20H, 10H, 1CH , 10H
        DB 20H, 20H, 26H , 20H
        DB 2BH, 20H, 30H , 20H
        DB 2BH, 40H, 20H , 15H
        DB 1FH, 05H, 20H , 10H
        DB 1CH, 10H, 20H , 20H
        DB 26H, 20H, 2BH , 20H
        DB 30H, 20H, 2BH , 40H
        DB 20H, 30H, 1CH , 10H
        DB 18H, 20H , 15H , 20H
        DB 1CH, 20H , 20H , 20H
        DB 26H, 40H, 20H , 20H
        DB 2BH, 20H, 26H , 20H
        DB 20H, 20H, 30H, 30H
        DB 20H, 30H, 1CH, 10H
        DB 18H, 40H, 1CH, 20H
        DB 20H, 20H, 26H, 40H
        DB 13H, 60H, 18H , 20H
        DB 15H, 40H, 13H , 40H
        DB 18H, 80H, 00H
        end

        本文引用地址:http://www.104case.com/article/172719.htm

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 通渭县| 察雅县| 赞皇县| 竹北市| 平邑县| 罗田县| 龙江县| 布拖县| 南靖县| 聂拉木县| 台江县| 克什克腾旗| 长武县| 呼伦贝尔市| 内乡县| 桃源县| 西安市| 哈巴河县| 娄烦县| 顺平县| 杭锦后旗| 大洼县| 乐东| 商南县| 玉林市| 商城县| 依安县| 左云县| 象州县| 广德县| 汪清县| 班玛县| 江永县| 石楼县| 安陆市| 太谷县| 胶南市| 临夏县| 马公市| 温州市| 弥勒县|