|
|||||||||||
P87LPC761 |
P87LPC761 的PDF資料下載,306790K |
其他型號 |
| P87LPC761的供應商: |
聯(lián)系人:朱小姐/銷售部 電話:0755-83263902/0755-83263921 |
聯(lián)系人:陳小姐/彭小姐/蔡小姐 電話:0755-23915567/0755-83290053/0755-23995323 |
聯(lián)系人:蔡先生/彭小姐 電話:0755-82770785/0755-82770785 |
聯(lián)系人:林小姐/陳小姐 電話:0755-82727234/0755-82722282 |
|
| >>更多供應商 | |||||
基于P87LPC761單片機控制的時間控制器系統(tǒng)簡介
1.系統(tǒng)簡介
該時間控制器是以P87LPC761單片機為核心,擴展一片74HCl64組成的小系統(tǒng),控制一路繼電器,可以設(shè)定一天中的時間,設(shè)定繼電器的開啟時間和關(guān)閉時間,一共可以設(shè)定6組定時,可以消除不需要的定時,能夠緊急啟動;所有的設(shè)定均通過鍵盤實現(xiàn),按鍵具有連擊功能,每個狀態(tài)都有指示燈。該時間控制器采用外部100kHz晶振,同時采用交流電供電,配以充電電池,在交流電去掉以后,進入休閑模式,時鐘繼續(xù)運行。
2 硬件電路設(shè)計與分析
系統(tǒng)功能框圖如圖1所示。本系統(tǒng)設(shè)計的難點不在硬而在低頻晶振下的軟件設(shè)計。
整個硬件電路可分為3部分:電源、鍵盤顯示和CPU部分,分別分析如下。
2.1 電源部分
把交流電轉(zhuǎn)換成單片機所需的直流電。這是一個很常見的電源電路。為了確保去掉交流電之后,時鐘能繼續(xù)運行,配以充電電池,在電源部分加上了充電電路。在有交流電的時候,直接利用外部電源,同時給充電電池充電,去掉交流電以后,利用充電電池做電源,進入休閑模式。
2.2 鍵盤和顯示電路
為了節(jié)省元件,采用動態(tài)掃描的方式來顯示時鐘,在這部分擴展了一片74HCl64。單片機通過串行口向74HCl64發(fā)送數(shù)據(jù),在七段數(shù)碼管上顯示,每個數(shù)碼管公共端都加上了三極管,是作掃描信號的電流放大以驅(qū)動各數(shù)碼管。
2.3 CPU部分
CPU部分是時間繼電器的核心。這主要由P87LPC761來控制。作為Philips小型封裝系列中的一員,P87LPC761是20腳封裝的單片機,適合于許多要求高集成度、低成本的場合,可以滿足許多方面的性能要求。P87LPC761提供高速和低速的晶振以及RC振蕩方式,可編程選擇,具有較寬的操作電壓范圍,可編程I/O口線輸出模式選擇,可選擇施密特觸發(fā)輸入,LED驅(qū)動輸出,有內(nèi)部看門狗定時器。P87LPC761采用80C51加速處理器,結(jié)構(gòu)指令執(zhí)行速度是標隘80C51 MCU的2倍。CPU部分電路原理圖如圖3所示。
3 軟件設(shè)計
P87LPC761單片機每個機器周期為6個時鐘周期,采用100kHz晶振,每個機器周期為60/Is。根據(jù)實驗,為了保證LED看起來不閃爍,點亮數(shù)碼管的時間間隔不能大于24ms,一共有4個數(shù)碼管,則每兩個數(shù)碼管點亮的時間間隔不能大于6ms。程序設(shè)計應注意這一點,在每兩次中斷之間一共有100個機器周期,很有限,據(jù)此在編程時應遵循以下原則:
(1)程序盡量簡潔主程序盡量短。
(2)中斷程序盡量短,把盡可能多的時間給其他程序。
(3)分支程序盡量多盡量短不做無用功。
鑒于篇幅,這里只介紹程序整體流程圖,如圖4所示。相關(guān)問題處理
4.1 計時補償
定時器。工作在方式1,而方式1的計數(shù)受到軟件的影響。為了減少計時誤差,在給定時器1恢復初值(3CBOH)的時候,要把軟件所占用的時間補回來。在中斷中重新賦初值采取如下方式:
通過軟件補償后,在晶振準確的情況下,能夠給計時帶來誤差的就僅僅只有中斷的響應時間了。
4.2 低功耗處理
低功耗是這個設(shè)計所必須處理好的問題。通過交流電檢測電路檢測交流電的存在與否。在程序中是這樣處理的:查詢P1.3口的電平,當P1.3口是高電平時,就進入正常狀態(tài)即顯示、鍵盤、所有中斷、串行口都正常工作,一旦P1.3口為低電平,則關(guān)掉顯示、鍵盤、串行口以及T1中斷,即只開放刷新時鐘的TO中斷(這是為了保證在休閑模式下,時鐘仍能運行,數(shù)據(jù)不丟失)進人體閑模式。為了降低系統(tǒng)功耗,還需要關(guān)閉掉電檢測、比較器等,這部分工作在初始化部分完成。
4.3 狀態(tài)指示燈
為了充分利用系統(tǒng)硬件資源.利用七段數(shù)碼管的小數(shù)點來做狀態(tài)指示燈。因為在時鐘顯示里面沒有小數(shù)。我們在程序中是這樣控制小數(shù)點的,在七段代碼表里面把有小數(shù)點的代碼放在無小數(shù)點代碼的后面,相同的數(shù)字有無小數(shù)點的代碼位置相距10,在需要小數(shù)點的時候,把取代碼的指針加上10就可以了。安排了2個指示燈,D10(綠)是開啟時間指示燈,D11(黃)是關(guān)閉時間指示燈。若綠黃兩燈都亮,則表示當前這組定時已經(jīng)被禁止了。
|
|||
|
|
|
© 2026 維庫電子市場網(wǎng)(www.hbjingang.com) 版權(quán)所有 經(jīng)營許可證編號:浙B2-20050339 版權(quán)聲明
二十一年專注打造優(yōu)質(zhì)電子元器件采購網(wǎng)、IC交易平臺。 |