機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
用AT89S51單片機(jī)來制作的手動(dòng)計(jì)數(shù)器-課程設(shè)計(jì)
用AT89S51單片機(jī)來制作的手動(dòng)計(jì)數(shù)器-課程設(shè)計(jì)
 更新時(shí)間:2008-7-27 13:54:26  點(diǎn)擊數(shù):4
【字體: 字體顏色

1 實(shí)驗(yàn)任務(wù)

利用AT89S51單片機(jī)來制作一個(gè)手動(dòng)計(jì)數(shù)器,在AT89S51單片機(jī)的P3.7管腳接一個(gè)輕觸開關(guān),作為手動(dòng)計(jì)數(shù)的按鈕,用單片機(jī)的P2.0P2.7接一個(gè)共陰數(shù)碼管,作為0099計(jì)數(shù)的個(gè)位數(shù)顯示,用單片機(jī)的P0.0P0.7接一個(gè)共陰數(shù)碼管,作為0099計(jì)數(shù)的十位數(shù)顯示;硬件電路圖如圖19所示。 

2 電路原理圖

 

3 系統(tǒng)板上硬件連線

1.把“單片機(jī)系統(tǒng)”區(qū)域中的P0.0/AD0P0.7/AD7端口用8芯排線連接到“四路靜態(tài)數(shù)碼顯示模塊”區(qū)域中的任一個(gè)ah端口上;要求:P0.0/AD0對(duì)應(yīng)著a,P0.1/AD1對(duì)應(yīng)著b,……P0.7/AD7對(duì)應(yīng)著h。

2把“單片機(jī)系統(tǒng)”區(qū)域中的P2.0/A8P2.7/A15端口用8芯排線連接到“四路靜態(tài)數(shù)碼顯示模塊”區(qū)域中的任一個(gè)數(shù)碼管的ah端口上; 

3把“單片機(jī)系統(tǒng)”區(qū)域中的P3.7/RD端口用導(dǎo)線連接到“獨(dú)立式鍵盤”區(qū)域中的SP1端口上; 

4 程序設(shè)計(jì)內(nèi)容

1.單片機(jī)對(duì)按鍵的識(shí)別的過程處理

2單片機(jī)對(duì)正確識(shí)別的按鍵進(jìn)行計(jì)數(shù),計(jì)數(shù)滿時(shí),又從零開始計(jì)數(shù); 

3單片機(jī)對(duì)計(jì)的數(shù)值要進(jìn)行數(shù)碼顯示,計(jì)得的數(shù)是十進(jìn)數(shù),含有十位和個(gè)位,我們要把十位和個(gè)位拆開分別送出這樣的十位和個(gè)位數(shù)值到對(duì)應(yīng)的數(shù)碼管上顯示。如何拆開十位和個(gè)位我們可以把所計(jì)得的數(shù)值對(duì)10求余,即可個(gè)位數(shù)字,對(duì)10整除,即可得到十位數(shù)字了。 

4.通過查表方式,分別顯示出個(gè)位和十位數(shù)字。

5 程序框圖

 

6 匯編源程序

Count         EQU 30H

SP1           BIT P3.7

              ORG 0

START:        MOV Count,#00H

NEXT:         MOV A,Count

              MOV B,#10

     DIV AB

              MOV DPTR,#TABLE

     MOVC A,@A+DPTR

              MOV P0,A

              MOV A,B

     MOVC A,@A+DPTR

              MOV P2,A

WT:           JNB SP1,WT

WAIT:         JB SP1,WAIT

              LCALL DELY10MS

     JB SP1,WAIT

              INC Count

              MOV A,Count

     CJNE A,#100,NEXT

              LJMP START

DELY10MS: MOV R6,#20

D1:           MOV R7,#248

              DJNZ R7,$

     DJNZ R6,D1

              RET

TABLE:        DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH

              END

7 C語言源程序

#include <AT89X51.H>

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,

                            0x6d,0x7d,0x07,0x7f,0x6f};

unsigned char Count;

 

void delay10ms(void)

{

  unsigned char i,j;

  for(i=20;i>0;i--)

  for(j=248;j>0;j--);

}

 

void main(void)

{

  Count=0;

  P0=table[Count/10];

  P2=table[Count%10];

  while(1)

    {

      if(P3_7==0)

        {

          delay10ms();

          if(P3_7==0)

            {

              Count++;

              if(Count==100)

                {

                  Count=0;

                }

              P0=table[Count/10];

              P2=table[Count%10];

              while(P3_7==0);

            }

        }

    }

}

 

  • 上一篇: 報(bào)警產(chǎn)生器-課程設(shè)計(jì)
  • 下一篇: 51單片機(jī)并行I/O口直接驅(qū)動(dòng)LED顯示-課程設(shè)計(jì)
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

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

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

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