基于VRS51L3074的多點(diǎn)定鬧電子日歷鐘的設(shè)計(jì)
4 軟件系統(tǒng)的設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)包括單片機(jī)計(jì)算機(jī)兩部分的編程。計(jì)算機(jī)軟件編程主要實(shí)現(xiàn)參數(shù)設(shè)置、串行口數(shù)據(jù)接收、指令發(fā)送以及數(shù)據(jù)的顯示和存儲(chǔ)。單片機(jī)軟件編程主要實(shí)現(xiàn)鍵盤(pán)、液晶顯示、鬧鐘等各模塊的功能,采用C語(yǔ)言編程。該系統(tǒng)通過(guò)串行口與鍵盤(pán)通信,鍵盤(pán)給單片機(jī)發(fā)指令實(shí)現(xiàn)數(shù)據(jù)采集及系統(tǒng)控制,并將數(shù)據(jù)實(shí)時(shí)傳回液晶顯示器顯示結(jié)果。整個(gè)軟件系統(tǒng)采用模塊化的程序設(shè)計(jì)方法,共分為時(shí)間日期設(shè)定、鬧鈴
設(shè)定、LCD顯示模塊和鍵盤(pán)掃描模塊4個(gè)部分。其中主要是鬧點(diǎn)的設(shè)定與提取。軟件系統(tǒng)的主要特點(diǎn)是整個(gè)過(guò)程完全在鍵盤(pán)的控制之下,實(shí)現(xiàn)了友好的人機(jī)交互功能。主程序通過(guò)判斷鍵盤(pán)的輸入情況調(diào)用不同的子程序,子程序的功能實(shí)現(xiàn)也是在鍵盤(pán)的配合之下完成的。主程序流程圖,如圖6所示。
首先對(duì)單片機(jī)的串行口及定時(shí)器進(jìn)行初始化,然后進(jìn)行鍵盤(pán)掃描,如果有鍵按下,則根據(jù)掃描到的鍵值跳轉(zhuǎn)到相應(yīng)的入口并執(zhí)行相應(yīng)的程序,并根據(jù)外部的輸入進(jìn)行相應(yīng)的操作。如果沒(méi)有鍵按下,則回到初始化狀態(tài)。在并行運(yùn)行的程序中,本設(shè)計(jì)將調(diào)用另外兩位合作者編寫(xiě)的日歷時(shí)鐘和溫度程序,送入液晶顯示器中進(jìn)行顯示。
4.1 多點(diǎn)定鬧模塊
鬧鐘的的起鬧止鬧基本步驟:(1)電子設(shè)備的中央處理器CPU從硬件時(shí)鐘芯片中讀取當(dāng)前時(shí)間,從鬧鐘信息中提取一個(gè)與當(dāng)前時(shí)間最接近的然后啟動(dòng)鬧鐘,將該鬧鐘的啟動(dòng)時(shí)間設(shè)置到硬件時(shí)鐘芯片中。(2)硬件時(shí)鐘芯片在當(dāng)前時(shí)間與該需啟動(dòng)鬧鐘的啟動(dòng)時(shí)間進(jìn)行比較,一致時(shí)通知CPU鬧鐘啟動(dòng)時(shí)間已經(jīng)到達(dá),蜂鳴器控制標(biāo)志為“1”,鬧鐘打開(kāi),開(kāi)始起鬧,并顯示在顯示器上,要止鬧只需按下啟停鍵便可止鬧,沒(méi)有按鍵的情況下系統(tǒng)根據(jù)預(yù)設(shè)的鬧響時(shí)間1 min后停止鬧鈴,鬧時(shí)功能關(guān)停。硬件時(shí)鐘芯片在當(dāng)前時(shí)間與該需啟動(dòng)鬧鐘的啟動(dòng)時(shí)間進(jìn)行比較不同時(shí)指向下一時(shí)間。(3)通過(guò)不停的進(jìn)行比較,第一個(gè)鬧點(diǎn)響停后,時(shí)鐘正常行走,系統(tǒng)又再返回步驟(1)。
4.2 OSl2887時(shí)鐘芯片與VRS51L3074的接口程序
系統(tǒng)通過(guò)中斷和軟件計(jì)數(shù)器可產(chǎn)生秒信號(hào)。每到1 s,系統(tǒng)將會(huì)調(diào)整時(shí)間存儲(chǔ)單元的內(nèi)容,從而實(shí)現(xiàn)計(jì)時(shí)功能。下面為DSl2887時(shí)鐘芯片和VRS51L3074單片機(jī)的接口軟件,假定采用每天24 h制,時(shí)間數(shù)據(jù)格式為BCD碼,初始化時(shí)間為2000年1月1日9時(shí)00分00秒,1 kHz方波輸出。時(shí)鐘芯片每1 s向單片機(jī)申請(qǐng)中斷一次,一方面讓單片機(jī)修改一次時(shí)鐘顯示,另一方面也給單片微機(jī)系統(tǒng)提供時(shí)間基準(zhǔn)。
5 結(jié)束語(yǔ)
系統(tǒng)利用VRS51L3074作為控制核心,外加專(zhuān)用的時(shí)鐘芯片DSl2887的應(yīng)用,實(shí)現(xiàn)時(shí)間、日歷及鬧鐘信息顯示功能。該電子鐘操作方便,通過(guò)鍵盤(pán)和漢顯液晶提示可方便地校對(duì)時(shí)鐘和對(duì)鬧鐘進(jìn)行設(shè)置。
評(píng)論