18luck网站

18luck网站電子設計 | 18luck网站Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 18luck网站 >> 18luck平台 >> 單片機 >> 正文

單片機製作“ 叮咚”門鈴電路圖

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2016-9-23

關(guan) 鍵字:AT89S51,門鈴電路

1.實驗任務
當按下開關(guan) SP1,AT89S51單片機產(chan) 生“叮咚”聲從(cong) P1.0端口輸出到LM386,經過放大之後送入喇叭。
2.電路原理圖

單片機門路電路圖詳解 

3.係統板上硬件連線
(1.       把“單片機係統”區域中的P1.0端口用導線連接到“音頻放大模塊”區域中的SPK IN端口上;
(2.       在“音頻放大模塊”區域中的SPK OUT端口上接上一個(ge) 8歐或者是16歐的喇叭;
(3.       把“單片機係統”區域中的P3.7/RD端口用導線連接到“獨立式鍵盤”區域中的SP1端口上;
4.程序設計方法
(1.       我們(men) 用單片機實定時/計數器T0來產(chan) 生700HZ和500HZ的頻率,根據定時/計數器T0,我們(men) 取定時250us,因此,700HZ的頻率要經過3次250us的定時,而500HZ的頻率要經過4次250us的定時。
(2.       在設計過程,隻有當按下SP1之後,才啟動T0開始工作,當T0工作完畢,回到最初狀態。
(3.       “叮”和“咚”聲音各占用0.5秒,因此定時/計數器T0要完成0.5秒的定時,對於(yu) 以250us為(wei) 基準定時2000次才可以。
6.匯編源程序
T5HZ                  EQU 30H
T7HZ                  EQU 31H
T05SA                EQU 32H
T05SB                 EQU 33H
FLAG                 BIT 00H
STOP                  BIT 01H
SP1                      BIT P3.7
                            ORG 00H
                            LJMP START
                            ORG 0BH
                            LJMP INT_T0
START:               MOV TMOD,#02H
                            MOV TH0,#06H
                            MOV TL0,#06H
                            SETB ET0
                            SETB EA
NSP:                   JB SP1,NSP
                            LCALL DELY10MS
                            JB SP1,NSP
                            SETB TR0
                            MOV T5HZ,#00H
                            MOV T7HZ,#00H
                            MOV T05SA,#00H
                            MOV T05SB,#00H
                            CLR FLAG
                            CLR STOP                 
                            JNB STOP,$
                            LJMP NSP
DELY10MS:       MOV R6,#20
D1:                      MOV R7,#248
                            DJNZ R7,$
                            DJNZ R6,D1
                            RET
INT_T0:             INC T05SA
                            MOV A,T05SA
                            CJNE A,#100,NEXT
                            MOV T05SA,#00H
                            INC T05SB
                            MOV A,T05SB
                            CJNE A,#20,NEXT
                            MOV T05SB,#00H
                            JB FLAG,STP
                            CPL FLAG
                            LJMP NEXT
STP:                    SETB STOP
                            CLR TR0
                            LJMP DONE
NEXT:                JB FLAG,S5HZ
                            INC T7HZ
                            MOV A,T7HZ
                            CJNE A,#03H,DONE
                            MOV T7HZ,#00H
                            CPL P1.0
                            LJMP DONE
S5HZ:                 INC T5HZ
                            MOV A,T5HZ
                            CJNE A,#04H,DONE
                            MOV T5HZ,#00H
                            CPL P1.0
                            LJMP DONE
DONE:                RETI
                            END

7.C語言源程序
#include
unsigned char t5hz;
unsigned char t7hz;
unsigned int tcnt;
bit stop;
bit flag;
void main(void)
{
  unsigned char i,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);
            }
        }
    }
}
void t0(void) interrupt 1 using 0
{
  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;
          }
      }
}

Tags:單片機,門鈴電路圖,AT89S51  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關於我們 - 聯係我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁麵
下到頁底
晶體管查詢