新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 19. “叮咚”門鈴

        19. “叮咚”門鈴

        作者: 時間:2016-11-18 來源:網絡 收藏
        1.實驗任務
        當按下開關SP1,AT89S51單片機產生“叮咚”聲從P1.0端口輸出到LM386,經過放大之后送入喇叭。
        2.電路原理

        圖4.19.1
        3.系統板上硬件連線
        (1.把“單片機系統”區域中的P1.0端口用導線連接到“音頻放大模塊”區域中的SPKIN端口上;
        (2.在“音頻放大模塊”區域中的SPKOUT端口上接上一個8歐或者是16歐的喇叭;
        (3.把“單片機系統”區域中的P3.7/RD端口用導線連接到“獨立式鍵盤”區域中的SP1端口上;
        4.程序設計方法
        (1.我們用單片機實定時/計數器T0來產生700HZ和500HZ的頻率,根據定時/計數器T0,我們取定時250us,因此,700HZ的頻率要經過3次250us的定時,而500HZ的頻率要經過4次250us的定時。
        (2.在設計過程,只有當按下SP1之后,才啟動T0開始工作,當T0工作完畢,回到最初狀態。
        (3.“叮”和“咚”聲音各占用0.5秒,因此定時/計數器T0要完成0.5秒的定時,對于以250us為基準定時2000次才可以。
        6.匯編源程序
        T5HZEQU30H
        T7HZEQU31H
        T05SAEQU32H
        T05SBEQU33H
        FLAGBIT00H
        STOPBIT01H
        SP1BITP3.7
        ORG00H
        LJMPSTART
        ORG0BH
        LJMPINT_T0
        START:MOVTMOD,#02H
        MOVTH0,#06H
        MOVTL0,#06H
        SETBET0
        SETBEA
        NSP:JBSP1,NSP
        LCALLDELY10MS
        JBSP1,NSP
        SETBTR0
        MOVT5HZ,#00H
        MOVT7HZ,#00H
        MOVT05SA,#00H
        MOVT05SB,#00H
        CLRFLAG
        CLRSTOP
        JNBSTOP,$
        LJMPNSP
        DELY10MS:MOVR6,#20
        D1:MOVR7,#248
        DJNZR7,$
        DJNZR6,D1
        RET
        INT_T0:INCT05SA
        MOVA,T05SA
        CJNEA,#100,NEXT
        MOVT05SA,#00H
        INCT05SB
        MOVA,T05SB
        CJNEA,#20,NEXT
        MOVT05SB,#00H
        JBFLAG,STP
        CPLFLAG
        LJMPNEXT
        STP:SETBSTOP
        CLRTR0
        LJMPDONE
        NEXT:JBFLAG,S5HZ
        INCT7HZ
        MOVA,T7HZ
        CJNEA,#03H,DONE
        MOVT7HZ,#00H
        CPLP1.0
        LJMPDONE
        S5HZ:INCT5HZ
        MOVA,T5HZ
        CJNEA,#04H,DONE
        MOVT5HZ,#00H
        CPLP1.0
        LJMPDONE
        DONE:RETI
        END

        7.C語言源程序
        #include
        unsignedchart5hz;
        unsignedchart7hz;
        unsignedinttcnt;
        bitstop;
        bitflag;
        voidmain(void)
        {
        unsignedchari,j;
        TMOD=0x02;
        TH0=0x06;
        TL0=0x06;
        ET0=1;
        EA=1;
        while(1)
        {
        if(P3_7==0)
        {
        for(i=10;i>0;i--)
        for(j=248;j>0;j--);
        if(P3_7==0)
        {
        t5hz=0;
        t7hz=0;
        tcnt=0;
        flag=0;
        stop=0;
        TR0=1;
        while(stop==0);
        }
        }
        }
        }
        voidt0(void)interrupt1using0
        {
        tcnt++;
        if(tcnt==2000)
        {
        tcnt=0;
        if(flag==0)
        {
        flag=~flag;
        }
        else
        {
        stop=1;
        TR0=0;
        }
        }
        if(flag==0)
        {
        t7hz++;
        if(t7hz==3)
        {
        t7hz=0;
        P1_0=~P1_0;
        }
        }
        else
        {
        t5hz++;
        if(t5hz==4)
        {
        t5hz=0;
        P1_0=~P1_0;
        }
        }
        }


        關鍵詞: 門鈴單片機系

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 郴州市| 郧西县| 水富县| 红桥区| 玉龙| 陆丰市| 辽阳市| 手机| 乌兰察布市| 南江县| 和顺县| 常德市| 姚安县| 鲁甸县| 大方县| 陇南市| 南和县| 塔城市| 鄯善县| 海淀区| 桓台县| 铁岭市| 和田县| 凤凰县| 祁门县| 普兰店市| 桃园市| 聊城市| 容城县| 万盛区| 灯塔市| 石棉县| 台中市| 仙居县| 上林县| 博乐市| 南宫市| 汾阳市| 栖霞市| 招远市| 偃师市|