機電之家資源網(wǎng)
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
單片機課程設計--閃光燈
單片機課程設計--閃光燈
 更新時間:2008-7-27 13:54:55  點擊數(shù):4
【字體: 字體顏色

1.     實驗任務
如圖4.1.1所示:在P1.0端口上接一個發(fā)光二極管L1,使L1在不停地一亮一滅,一亮一滅的時間間隔為0.2秒。
2.     電路原理


3.     系統(tǒng)板上硬件連線
把“單片機系統(tǒng)”區(qū)域中的P1.0端口用導線連接到“八路發(fā)光二極管指示模塊”區(qū)域中的L1端口上。
4.     程序設計內容
(1).    延時程序的設計方法
作為單片機的指令的執(zhí)行的時間是很短,數(shù)量大微秒級,因此,我們要求的閃爍時間間隔為0.2秒,相對于微秒來說,相差太大,所以我們在執(zhí)行某一指令時,插入延時程序,來達到我們的要求,但這樣的延時程序是如何設計呢?下面具體介紹其原理:

如圖4.1.1所示的石英晶體為12MHz,因此,1個機器周期為1微秒

因此,上面的延時程序時間為10.002ms。
由以上可知,當R6=10、R7=248時,延時5ms,R6=20、R7=248時,延時10ms,以此為基本的計時單位。如本實驗要求0.2秒=200ms,10ms×R5=200ms,則R5=20,延時子程序如下:
DELAY:            MOV R5,#20
D1:                MOV R6,#20
D2:                MOV R7,#248
                DJNZ R7,$
                DJNZ R6,D2
                DJNZ R5,D1
                RET
(2).    輸出控制
如圖1所示,當P1.0端口輸出高電平,即P1.0=1時,根據(jù)發(fā)光二極管的單向導電性可知,這時發(fā)光二極管L1熄滅;當P1.0端口輸出低電平,即P1.0=0時,發(fā)光二極管L1亮;我們可以使用SETB P1.0指令使P1.0端口輸出高電平,使用CLR P1.0指令使P1.0端口輸出低電平。
5.    程序框圖
      如圖4.1.2所示

6.    匯編源程序
            ORG 0
START:        CLR P1.0
            LCALL DELAY
            SETB P1.0
            LCALL DELAY
            LJMP START
DELAY:        MOV R5,#20            ;延時子程序,延時0.2秒
D1:            MOV R6,#20
D2:            MOV R7,#248
            DJNZ R7,$
            DJNZ R6,D2
            DJNZ R5,D1
            RET
            END

7.    C語言源程序
#include <AT89X51.H>
sbit L1=P1^0;

void delay02s(void)        //延時0.2秒子程序
{
  unsigned char i,j,k;
  for(i=20;i>0;i--)
  for(j=20;j>0;j--)
  for(k=248;k>0;k--);
}


void main(void)
{
  while(1)
    {
      L1=0;
      delay02s();
      L1=1;
      delay02s();
    }



 

  • 上一篇: 水位控制系統(tǒng)畢業(yè)設計
  • 下一篇: 單片機課程設計--按鍵開關程序
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網(wǎng)友評論:(只顯示最新5條。)
    關于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1