欧美午夜欧美,台湾成人av,久久av一区,最近看过的日韩成人

電子開發(fā)網

電子開發(fā)網電子設計 | 電子開發(fā)網Rss 2.0 會員中心 會員注冊
搜索: 您現(xiàn)在的位置: 電子開發(fā)網 >> 電子開發(fā) >> 單片機 >> 正文

51單片機00-59秒計時器 0-59s Timer

作者:佚名    文章來源:本站原創(chuàng)    點擊數(shù):    更新時間:2016-9-30

51單片機00-59秒計時器 0-59s Timer

1.  實驗任務
如下圖所示,在AT89S51單片機的P0和P2端口分別接有兩個共陰數(shù)碼管,P0口驅動顯示秒時間的十位,而P2口驅動顯示秒時間的個位。
2.  電路原理圖
 51單片機計時器電路原理圖
00-59秒計時器0-59s Timer
 
 
3.  系統(tǒng)板上硬件連線
(1.       把“單片機系統(tǒng)”區(qū)域中的P0.0/AD0-P0.7/AD7端口用8芯排線連接到“四路靜態(tài)數(shù)碼顯示模塊”區(qū)域中的任一個a-h(huán)端口上;要求:P0.0/AD0對應著a,P0.1/AD1對應著b,……,P0.7/AD7對應著h。
(2.       把“單片機系統(tǒng)”區(qū)域中的P2.0/A8-P2.7/A15端口用8芯排線連接到“四路靜態(tài)數(shù)碼顯示模塊”區(qū)域中的任一個a-h(huán)端口上;要求:P2.0/A8對應著a,P2.1/A9對應著b,……,P2.7/A15對應著h。
4.  程序設計內容
(1.       在設計過程中我們用一個存儲單元作為秒計數(shù)單元,當一秒鐘到來時,就讓秒計數(shù)單元加1,當秒計數(shù)達到60時,就自動返回到0,從新秒計數(shù)。
(2.       對于秒計數(shù)單元中的數(shù)據(jù)要把它十位數(shù)和個數(shù)分開,方法仍采用對10整除和對10求余。
(3.       在數(shù)碼上顯示,仍通過查表的方式完成。
(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.  程序框圖
 單片機計時器程序框圖 
 00-59秒計時器0-59s Timer
 
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
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%10];
  while(1)
    {
      delay1s();
      Second++;
      if(Second==60)
        {
          Second=0;
        }
      P0=table[Second/10];
      P2=table[Second%10];
    }
}

Tags:51單片機,計時器,程序  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關于我們 - 聯(lián)系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 天气| 莒南县| 绵阳市| 石楼县| 措勤县| 淮滨县| 阿拉善右旗| 萍乡市| 怀柔区| 文山县| 临城县| 商水县| 积石山| 青海省| 临安市| 太原市| 镇赉县| 武邑县| 平昌县| 绥滨县| 宜阳县| 内乡县| 古田县| 耿马| 安新县| 缙云县| 会同县| 水富县| 上饶县| 青川县| 海晏县| 舞阳县| 勃利县| 云安县| 铁岭市| 常山县| 宜城市| 苏尼特右旗| 阜新市| 长岛县| 同江市|