久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

用軟件延時實現00-59秒單片機計時器

作者:89s51   來源:不詳   點擊數:  更新時間:2007年05月16日   【字體:

1.  實驗任務

  如下圖所示,在AT89S51單片機的P0和P2端口分別接有兩個共陰數碼管,P0口驅動顯示秒時間的十位,而P2口驅動顯示秒時間的個位。

2.  電路原理圖

圖4.11.1

3.  系統板上硬件連線

(1.       把“單片機系統”區域中的P0.0/AD0-P0.7/AD7端口用8芯排線連接到“四路靜態數碼顯示模塊”區域中的任一個a-h端口上;要求:P0.0/AD0對應著a,P0.1/AD1對應著b,……,P0.7/AD7對應著h。

(2.       把“單片機系統”區域中的P2.0/A8-P2.7/A15端口用8芯排線連接到“四路靜態數碼顯示模塊”區域中的任一個a-h端口上;要求:P2.0/A8對應著a,P2.1/A9對應著b,……,P2.7/A15對應著h。

4.  程序設計內容

(1.       在設計過程中我們用一個存儲單元作為秒計數單元,當一秒鐘到來時,就讓秒計數單元加1,當秒計數達到60時,就自動返回到0,從新秒計數。

(2.       對于秒計數單元中的數據要把它十位數和個數分開,方法仍采用對10整除和對10求余。

(3.       在數碼上顯示,仍通過查表的方式完成。

(4.       一秒時間的產生在這里我們采用軟件精確延時的方法來完成,經過精確計算得到1秒時間為1.002秒。

DELY1S:        MOV R5,#100

D2:                MOV R6,#20

D1:                MOV R7,#248

                     DJNZ R7,$

                     DJNZ R6,D1

                     DJNZ R5,D2

                     RET

5.  程序框圖

 

 

 

 

 

 

 

 

 

 

 

 

圖4.11.2

6.  匯編源程序

Second                 EQU 30H

                            ORG 0

START:               MOV Second,#00H

NEXT:                MOV A,Second

                           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

                            LCALL DELY1S

                           INC Second

                            MOV A,Second

                            CJNE A,#60,NEXT

                           LJMP START

DELY1S:             MOV R5,#100

D2:                      MOV R6,#20

D1:                     MOV R7,#248

                            DJNZ R7,$

                            DJNZ R6,D1

                           DJNZ R5,D2

                            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 Second;

void delay1s(void)

{

  unsigned char i,j,k;

  for(k=100;k>0;k--)

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

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

}

void main(void)

{

  Second=0;

  P0=table[Second/10];

  P2=table[Second];

  while(1)

    {

      delay1s();

      Second++;

      if(Second==60)

        {

          Second=0;

        }

      P0=table[Second/10];

      P2=table[Second];

    }

}

用軟件延時實現00-59秒單片機計時器程序全部完畢,轉載請保留版權http://www.zg4o1577.cn

關閉窗口
主站蜘蛛池模板: 免费观看一级毛片 | 四虎永久免费在线 | www.精品一区| 日韩欧美一区二区三区免费观看 | 中日韩欧美一级片 | 久久99国产精品 | 精品国产乱码久久久久久1区2区 | 在线欧美激情 | 日韩久久精品 | 国产高清免费视频 | 亚洲一区二区在线电影 | 亚洲二区视频 | 亚洲成人激情在线观看 | 久久新视频 | 中文字幕在线第一页 | 激情国产 | 日韩欧美在线免费观看视频 | 国产精品久久久久久一区二区三区 | 日韩小视频在线 | 一区二区三区免费 | 久久岛国 | 成人av在线播放 | 日操操| 亚洲在线视频 | 日一区二区 | 夜夜夜久久久 | 亚洲一区二区三区在线 | 国产成人精品一区二区三区网站观看 | 国产亚洲一区二区三区 | 日韩视频免费在线 | 中文字幕在线观看 | 亚洲国产精品99久久久久久久久 | 懂色av一区二区三区在线播放 | 草久久免费视频 | 欧美精品在欧美一区二区少妇 | 欧美 日韩 国产 在线 | 少妇黄色 | 国产中的精品av涩差av | 特a毛片| 亚洲精品字幕 | 精品日韩在线 |