網站首頁 個人範例 行業範例 行政範例 職場範例 校園範例 書信範例 生活範例 節日文化範例
當前位置:文學範文吧 > 行業範例 > 工程

電子枱曆製作方案設計

欄目: 工程 / 發佈於: / 人氣:1.59W

隨着當今世界經濟的快速發展和信息化時代的來臨,各種各樣的小型智能家電產品陸續出現在我們的生活當中。日曆是人們不可或缺的日常用品。但一般日曆都為紙製用品,使用不便,壽命不長。電子萬年曆採用智能電子控制和顯示技術,改善了紙製日曆的缺陷。以下是小編整理的電子枱曆製作方案設計,歡迎閲讀!

電子枱曆製作方案設計

本設計以AT89S52單片機為核心,構成單片機控制電路,AT89C52是一種帶8K字節閃速可編程可擦除只讀存儲器(PEROM)的低電壓、高性能CMOS 8位為控制器。該器件採用ATMEL 非易失存儲器製造技術製造,與工業標準的80C51和 80C52指令集和輸出管腳相兼容。結合DS1302時鐘芯片和24C02 FLASH存儲器,完成時間的自動調整和掉電保護,全部信息用液晶顯示。時間、日期調整由三個按鍵來實現,並可對鬧鈴開關進行設置。日曆能顯示陽曆和陰曆年、月、日以及星期、時、分、秒。在顯示陰曆月份時,能標明是否閏月。

關鍵詞:電子萬年曆;單片機;時鐘芯片;FLASH存儲器;液晶顯示

1 引言

隨着科技的不斷進步和發展,單片機的使用已經滲透到我們日常生活當中的各個領域,幾乎很難找到有哪個領域沒有使用單片機的蹤跡。導彈的導航裝置,飛機上各種儀表的控制,計算機的網絡通訊與數據傳輸,工業自動化過程的實時控制和數據處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統,錄像機、攝像機、全自動洗衣機的控制,以及程控玩具、電子寵物等等,這些都離不開單片機。更不用説自動控制領域的機器人、智能儀表、醫療器械了。

本文設計的電子萬年曆屬於小型智能家用電子產品。利用單片機進行控制,實時時鐘芯片進行記時,外加掉電存儲電路和顯示電路,可實現時間的調整和顯示。電子萬年曆既可廣泛應用於家庭,也可應用於銀行、郵電、賓館、飯店、醫院、學校、企業、商店等相關行業的大廳,以及單位會議室、門衞等場所。因而,此設計具有相當重要的現實意義和實用價值。

1.2方案選擇

由於現在市面上的電子萬年曆的種類比較多,因此到底選擇什麼樣的方案在設計中是至關重要的。正確地選擇方案就可以使產品更加人性化,並且可以減小開發的難度,縮短開發的週期,降低產品的成本等等,因此就會被人們普遍接受,並且能夠更快地將產品推向市場實現其自身的價值。下面我們就擬訂了兩種方案,希望能夠選擇一種性價比高的方案。

1.2.1 方案1——基於AT89S52單片機的電子萬年曆設計

不使用時鐘芯片,而直接用AT89S52單片機來實現電子萬年曆設計。AT89S52是一種帶8K字節閃爍可編程可擦除只讀存儲器的低電壓,高性能CMOS 8位微處理器,俗稱單片機。單片機的可擦除只讀存儲器可以反覆擦寫1000餘次。由於將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89S52是一種高效微控制器,為很多嵌入式控制系統提供了一種靈活性高且價廉的方案。

若採用單片機計時,利用它的一個16位定時器/計數器每50ms產生一箇中斷信號,中斷20次後產生一個秒信號,然後根據時間進制關係依次向分、時、日、星期、月、年進位。這樣就實現了直接用單片機來實現電子萬年曆設計。

用單片機來實現電子萬年曆設計,無須外接其他芯片,充分利用了單片機的資源。但是精度不夠高,誤差較大,掉電後丟失所有數據,軟件編程較複雜。

2.2 方案2——基於AT89S52單片機和DS1302的電子萬年曆設計

在以單片機為核心構成的裝置中,經常需要一個實時的時鐘和日曆,以便對一些實時發生事件記錄時給予時標,實時時鐘芯片便可起到這一作用。過去多用並行接口的時鐘芯片,如 MC146818,DS12887 等。它們已能完全滿足單片機系統對實時時鐘的要求,但是這些芯片與單片機接口複雜、佔用地址, 數據總線接線多、芯片體積大佔用空間多、近年來串行接口的各種芯片在單片機系統中應用愈來愈多,串行接口的實時時鐘芯片也出現了不少,DS1302 是一個綜合性能較好且價格便宜的串行接口實時時鐘芯片。採用它作為記錄測控系統中的數據記錄,其軟硬件設計簡單,時間記錄準確,既避免了連續記錄的大工作量,又避免了定時記錄的盲目性,給連續長時間的測量、控制系統的正常運行及檢查都來了很大的方便,可廣泛應用於長時間連續的測控系統中。在測量控制系統中,特別是長時間無人職守的測控系統中,經常需要記錄某些具有特殊意義的數據及其出現的時間。傳統的數據記錄方式是隔時採樣或定時採樣,沒有具體的時間記錄,因此只能記錄數據而無法準確記錄其出現的時間;若採用單片機計時,一方面需要採用計數器,佔用硬件資源,另一方面需要設置中斷、查詢等,同樣耗費單片機的資源,而且某些測控系統可能不允許。而在系統中採用DS1302則能很好地解決這個問題

利用單片機進行控制,採用 DS1302 作為實時時鐘芯片,其三線接口 SCLK、I/O、

RST與單片機進行同步通信,外加掉電存儲電路、顯示電路、鍵盤電路和鬧鈴電路,即構成一個基本的電子萬年曆系統,若還要添加其他功能,在這基礎上外擴電路即可。

由於在系統設計時,需要考慮以下幾點因素:功耗低、精確度高、軟件編程較簡單,製作過程簡便,芯片的體積小、便於攜帶,芯片成本低等,而 DS1302 芯片有上面所述的諸多優點,所以本設計採用方案2——基於 DS1302 的電子萬年曆設計。

2 系統概述

本設計以AT89S52單片機為核心,構成單片機控制電路,結合DS1302時鐘芯片和24C02 FLASH存儲器,顯示陽曆的'年、月、日、星期、時、分、秒和陰曆的年、月、日,在顯示陰曆時間時,能標明是否閏月,同時完成對它們的自動調整和掉電保護,全部信息用液晶顯示出來。輸入接口由三個按鍵來實現,用這三個按鍵可以對日期和時間進行調整,並可以對鬧鈴的開關和鬧鈴的時間進行設置。鬧鈴功能通過蜂鳴器來實現。軟件控制程序實現所有的功能。整機電路使用+5V穩壓電源,可穩定工作。系統框圖如圖2-1所示,其軟硬件設計簡單,時間記錄準確,可廣泛應用於長時間連續顯示的系統中。

3系統硬件電路的設計,按照系統設計功能的要求,初步確定設計系統由主控模塊、時鐘模塊、存儲模塊、鍵盤接口模塊、顯示模塊和鬧鈴模塊,AT24C02存儲電路圖3-1電子萬年曆電路系統構成框圖,AT89S52是一個低功耗,高性能CMOS8位單片機,片內含8kBytesISP,3系統硬件電路的設計按照系統設計功能的要求,初步確定設計系統由主控模塊、時鐘模塊、存儲模塊、鍵盤接口模塊、顯示模塊和鬧鈴模塊。

3 系統硬件電路的設計

按照系統設計功能的要求,初步確定設計系統由主控模塊、時鐘模塊、存儲模塊、鍵盤接口模塊、顯示模塊和鬧鈴模塊共6個模塊組成,電路系統構成框圖如圖3-1所示。主控芯片使用52系列AT89S52單片機,時鐘芯片使用美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘芯片DS1302,存儲模塊採用美國ATMEL公司生產的低功耗CMOS串行EEPROM存儲芯片AT24C02。DS1302作為主要計時芯片,可以做到計時準確。更重要的是,DS1302可以在很小電流的後備 (2.5~5.5V電源,在2.5V時耗電小於300nA)下繼續計時,並可編程選擇多種充電電流來對後備電源進行慢速充電,可以保證後備電源基本不耗電。

3.1 系統核心部分——單片機 AT89S52

AT89S52是一個低功耗,高性能CMOS 8位單片機,片內含8k Bytes ISP(In-system programmable)的可反覆擦寫1000次的Flash只讀程序存儲器,器件採用ATMEL公司的高密度、非易失性存儲技術製造,兼容標準MCS-51指令系統及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S52可為許多嵌入式控制應用系統提供高性價比的解決方案。

3.1.1 AT89S52具有下列主要性能

·8KB可改編程序Flash存儲器(可經受1000次的寫入/擦除週期) ·全靜態工作:0Hz~24MHz ·三級程序存儲器保密 ·128×8字節內部RAM

·32條可編程I/O線 ·2個16位定時器/計數器 ·6箇中斷源 ·可編程串行通道 ·片內時鐘振盪器

3.1.2 AT89S52的引腳及功能

AT89S52單片機的管腳説明如圖3-2所示。

圖3-2 AT89S52的管腳

(1) 主要電源引腳 ①VCC 電源端 ②GND 接地端

(2) 外接晶體引腳XTAL1和XTAL2

①XTAL1 接外部晶體的一個引腳。在單片機內部,它是構成片內振盪器的反相放大器的輸入端。當採用外部振盪器時,該引腳接收振盪器的信號,既把此信號直接接到內部時發生器的輸入端。

②XTAL2 接外部晶體的另一個引腳。在單片機內部,它是上述振盪器的反相放大器的輸出端。採用外部振盪器時,此引腳應懸浮不連接。

(3) EA控制或與其它電源複用引腳RST、ALE/PROG、PSEN和EA/VPP

①RST復位輸入端。當振盪器運行時,在該引腳上出現兩個機器週期的高電平將使單片機復位。

②ALE/PROG當訪問外部存儲器時,ALE(地址鎖存允許)的輸出用於鎖存地址的低位字節。即使不訪問外部存儲器,ALE端仍以不變的頻率(此頻率為振盪器頻率的1/6)週期性地出現正脈衝信號。因此,它可用作對外輸出的時鐘,或用於定時目的。然而要注意的是:每當訪問外部數據存儲器時,將跳過一個ALE脈衝。在對Flash存儲器編程期間,該引腳還用於輸入編程脈衝(PROG)[6]。

③PSEN 程序存儲允許(PSEN)輸出是外部程序存儲器的讀選通信號。當AT89S52/LV52由外部程序存儲器取指令(或常數)時,每個機器週期兩次PSEN有效(既輸出2個脈衝)。但在此期間內,每當訪問外部數據存儲器時,這兩次有效的PSEN信號將不出現。

④EA/VPP 外部訪問允許端。要使CPU只訪問外部程序存儲器(地址為0000H~FFFFH),則EA端必須保持低電平(接到GND端)。當EA端保持高電平(接VSS端)時,CPU則執行內部程序存儲器中的程序。

(4) 輸入/輸出引腳 P0.0~ P0.7、P1.0~P1.7、P2.0~ P2.7 和P3.0~P3.7 ①P0端口(P0.0~ P0.7) P0是一個8位漏極開路型雙向I/O端口。作為輸出口用時,每位能以吸收電流的方式驅動8個TTL輸入,對端口寫1時,又可作高阻抗輸入端用。

②P1端口(P1.0~ P1.7) P1是一個帶有內部上拉電阻的8位雙向I/O端口。P1的輸出緩衝器可驅動(吸收或輸出電流方式)4個TTL輸入。對端口寫1時,通過內部的上拉電阻把端口拉到高電位,這時可用作輸入口。作輸入口時,因為有內部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流。

③P2端口 (P2.0~P2.7) P2是一個帶有內部上拉電阻的8位雙向I/O端口。P2的輸出緩衝器可驅動(吸收或輸出電流方式)4個TTL輸入。對端口寫1時,通過內部的上拉電阻把端口拉到高電位,這時可用作輸入口。P2作輸入口使用時,因為有內部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流。

④P3端口(P3.0~P3.7) P3口管腳是8個帶內部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”後,它們被內部上拉為高電平,並用作輸入。作為輸入,由於外部下拉為低電平,P3口將輸出電流,這是由於上拉的緣故。P3口也可作為AT89S52的一些特殊功能,這些特殊功能見表3-1。