<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > AT89C2051組成的時(shí)鐘電路原理圖

AT89C2051組成的時(shí)鐘電路原理圖

作者: 時(shí)間:2010-03-15 來(lái)源:網(wǎng)絡(luò ) 收藏

我們以一個(gè)實(shí)際的來(lái)說(shuō)明定時(shí)器的軟件編程方法,就是我們最為常見(jiàn)的顯示時(shí)、分、秒為單位的計時(shí)工具,它是典型的應用代表。

的最小計時(shí)單位是秒,但使用單片機定時(shí)器來(lái)進(jìn)行計時(shí),若使用6.0MHz的晶振,即使按工作方式1工作,最大的計時(shí)時(shí)間也只能到131ms,所以我們可把每個(gè)定時(shí)時(shí)間取125ms,這樣定時(shí)器溢出8次(125msw8=1000ms)就得到最小的計時(shí)單位秒。而要實(shí)現8次計數用軟件方法實(shí)現是輕而易舉的。

我們使用定時(shí)器1,以工作方式1工作,定時(shí)器進(jìn)行125ms定時(shí)。采用中斷方法進(jìn)行溢出次數的累計,當計滿(mǎn)8次即得到1秒的計時(shí)。

一個(gè)時(shí)鐘的計時(shí)累加,要實(shí)現分、時(shí)的進(jìn)位,要用到多種進(jìn)制,秒、分、時(shí)中的進(jìn)位是十進(jìn)制,秒向分進(jìn)位和分想時(shí)進(jìn)位卻是六十進(jìn)制,而每天又有十二小時(shí)制或二十四小時(shí)制,它們分別又是十二進(jìn)制和二十四進(jìn)制。從秒到分和從分到小時(shí)可以通過(guò)軟件累加和數值比較方法實(shí)現。

在單片機的內部RAM中,需要設置顯示緩沖區,顯示的時(shí)、分、秒值是從顯示緩沖區中取出的,在RAM中設置四個(gè)單元作為顯示緩沖區,分別是7AH、7BH、7CH。為使敘述方便,我們這里不顯示秒值,秒的進(jìn)位我們通過(guò)閃爍分值實(shí)現。這樣我們一共有四位LED分別顯示時(shí)和分值。同時(shí)時(shí)鐘都需要校準的。在程序中還需設置顯示碼表,要顯示的數值通過(guò)查表指令將顯示用的真正碼值送到LED上。我們用單片機的PP3.4和P3.5兩個(gè)I/O口外接微動(dòng)開(kāi)關(guān)來(lái)實(shí)現時(shí)和分的校正,每按一次小時(shí)或分值加1,連續按下數值累計下去,實(shí)現時(shí)鐘的校準。

中我們還設置了一個(gè)蜂鳴器,用作簡(jiǎn)單報時(shí)用,如可設早上7:30分起床,中午1點(diǎn)30分再有起床報時(shí),每次響時(shí)1分鐘,響1秒,停2秒的方式,而不是連續響鈴。這個(gè)程序我們采用12小時(shí)制,為此,要在程序中設置相應的標志,以利于主程序識別。同樣計時(shí)程序中還會(huì )有幾個(gè)相關(guān)的標志,主要是控制程序流的轉向。程序中我們都作了較詳細的注釋?zhuān)@里不再贅述。

硬件電路,我們還是以低價(jià)的單片機為微處理單元,這個(gè)芯片兼容C51指令系統,在C51上編寫(xiě)的程序,無(wú)需任何修改即可方便地移植到這個(gè)芯片上來(lái)。我們以P0口作為L(cháng)ED的字段位驅動(dòng)輸出,秒的“進(jìn)位”采用分值閃爍提示,亮0.5秒,熄0.5秒。,P3.1―P3.3用于位驅動(dòng),使用動(dòng)態(tài)掃描方式顯示,每位LED的顯示時(shí)間10―25ms之間均可,掃描頻率不能太高,否則每位LED顯示的時(shí)間過(guò)短,亮度太低,不易于觀(guān)看,以肉眼不感覺(jué)到LED閃爍為宜。為了直觀(guān),我們的驅動(dòng)輸出沒(méi)有采用集成電路,而是使用了分立元件―三極管,但工作卻是一致的。

本文引用地址:http://dyxdggzs.com/article/173432.htm
電路原理圖
這個(gè)電路結構決定LED采用共陽(yáng)極的數碼管,可以采用LQ5101BS普通的發(fā)光二極管,驅動(dòng)三極管可采用易得的2SA1015和2SC1815等型號,當然也可使用象S9012,S9013,S9014,2N5401,2N5555等小功率三極管,其它器件沒(méi)有特殊要求。為便于實(shí)驗,單片機可采用DIP20P插座,程序編制好后,調試無(wú)錯,即可燒寫(xiě)到AT89C2051中,值得一提的是,AT89C2051是Flash程序存儲器,程序可反復擦寫(xiě),對于做實(shí)驗是非常方便的。

DIY機械鍵盤(pán)相關(guān)社區:機械鍵盤(pán)DIY




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>