萬(wàn)年歷系統(tǒng)設(shè)計(jì)論文
時(shí)間:2022-04-02 10:53:11
導(dǎo)語(yǔ):萬(wàn)年歷系統(tǒng)設(shè)計(jì)論文一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢(xún)客服老師,歡迎參考。
1總體設(shè)計(jì)及原理圖
萬(wàn)年歷的基本功能一是要提供年月日等基本時(shí)間項(xiàng)的授時(shí);二是可以修改時(shí)間項(xiàng)。基于以上兩個(gè)功能,我們?nèi)f年歷總體設(shè)計(jì)方案。萬(wàn)年歷有時(shí)鐘計(jì)時(shí)模塊,顯示模塊,調(diào)整時(shí)鐘模塊和控制器4部分組成。接下來(lái)的任務(wù)就是對(duì)以上模塊進(jìn)行選型。低成本,可操作是選型的標(biāo)準(zhǔn)。對(duì)于控制器,選擇最常用的C51系列單片機(jī)STC89C52。STC89C52是由宏晶科技生產(chǎn)的是一種低功耗8位基于經(jīng)典C51內(nèi)核的微處理器,具有8KbyteFLASH存儲(chǔ)器,512byteRAM,4KByteEEPROM,32位通用IO接口,可以直接用串口下載程序。時(shí)鐘模塊選擇由dallas公司生產(chǎn)的時(shí)鐘芯片DS1302,DS1302是一款支持年月日,小時(shí)分秒,星期,閏年補(bǔ)償?shù)膶?shí)時(shí)時(shí)鐘芯片;其簡(jiǎn)單三線(xiàn)結(jié)構(gòu)可以很方便地與單片機(jī)通用IO相連,進(jìn)行串行總線(xiàn)讀寫(xiě)傳輸。
2軟件設(shè)計(jì)
通過(guò)STC89C52讀取DS1302各個(gè)時(shí)間項(xiàng)的值,然后顯示到LCD1602,4個(gè)輕觸開(kāi)關(guān),S1用于選擇年月日等時(shí)間修改項(xiàng),S2和S3用于在修改時(shí)間項(xiàng),增加和減少某個(gè)時(shí)間項(xiàng)的數(shù)值,S4鍵用于確認(rèn)時(shí)間項(xiàng)的修改。7個(gè)時(shí)間項(xiàng)寄存器分別可以讀寫(xiě)秒,分,小時(shí),日期,月,星期和年。控制寄存器control,其第7位WP用于對(duì)時(shí)間項(xiàng)寄存器的寫(xiě)保護(hù),該位為0,允許對(duì)年月日等時(shí)間項(xiàng)寄存器寫(xiě),該位為1,禁止對(duì)其他寄存器寫(xiě)。所有的時(shí)間項(xiàng)寄存器值均采用BCD碼格式存放。DS1302時(shí)間項(xiàng)寄存器是讀還是寫(xiě)由該寄存器號(hào)的最后一位決定,最后一位為0就是寫(xiě)入,為1就是讀出。秒寄存器最高位CH用于控制DS1302計(jì)時(shí)的啟停。CH為1計(jì)時(shí)會(huì)中止,DS1302進(jìn)入待機(jī)模式。CH為0啟動(dòng)計(jì)時(shí)。在按鍵設(shè)定DS1302時(shí)間項(xiàng)值的時(shí)候該位需置1。小時(shí)寄存器可以設(shè)置12或24小時(shí)制,第7位為1選擇12小時(shí)制,在這種制式下,第5位為1表示PM,為0表示AM。第7為為0選擇24小時(shí)制。
3結(jié)束語(yǔ)
從設(shè)定目標(biāo)任務(wù),完成總體設(shè)計(jì)方案,基于低成本、通用原則選擇相應(yīng)的元器件,設(shè)計(jì)原理圖,到整體軟件設(shè)計(jì),各個(gè)模塊的軟件設(shè)計(jì),本文完成了萬(wàn)年歷系統(tǒng)的設(shè)計(jì),并完成了實(shí)物設(shè)計(jì)。從應(yīng)用的角度看,該系統(tǒng)既可以滿(mǎn)足學(xué)習(xí)者很好地學(xué)習(xí)單片機(jī)知識(shí),又可以為學(xué)習(xí)者設(shè)計(jì)、完成其他系統(tǒng)提供借鑒。
作者:任志敏單位:常州紡織服裝職業(yè)技術(shù)學(xué)院機(jī)電工程系