新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 適于學校使用的電子日歷設計

        適于學校使用的電子日歷設計

        作者: 時間:2012-03-28 來源:網絡 收藏

        前市售的品種較多,一般只能顯示時間信息,功能單一。筆者根據特點,了一款,該采用幾種新型芯片,利用單片機技術,做到了功能多、顯示全、成本低,并有掉電保持功能,非常各部門的,是傳統鐘表的升級換代產品。

        本文引用地址:http://www.104case.com/article/171758.htm

        1功能介紹

        電子日歷面板如圖1所示。該電子日歷可顯示年、月、日、星期、時、分的時間信息以及溫度值。另外,還能顯示校歷周數,重大節慶日的倒計時天數。此功能是區別于其他電子日歷的特點所在。為設定初值,電子日歷設有三個按鍵,采用循環設定方式。過程如下:按設定鍵,首先進入校歷周數初值設定,按增/減鍵,可選擇校歷周數的2位十進制初值;再按設定鍵,進入節慶日倒計時時間初值設定,可選擇3位十進制初值;第三、四次按設定鍵,結合增/減鍵,分別用于設定節慶日2個漢字的顯示設定,如“校慶”、“評估”等;再按設定鍵,則調整表的時間顯示。全部設定過程完畢,進入正常走時狀態。由于本系統有掉電保護功能,停電時,無顯示,但能正常走時和計數。來電時,正常顯示,不需重新設定初值,方便。

        32.jpg

        2硬件

        2.1系統電路

        系統電路簡圖如圖2所示。整個系統采用AT89C52作為中央處理芯片,用于數據處理,初值設定,顯示控制等。日歷芯片采用DS12C887,溫度傳感器芯片采用DS18B20。采用可編程接口芯片81C55擴展接口,81C55的PA口用于輸出段碼,利用三態總線驅動器74LS244增加驅動能力,PB口低4位接4-16譯碼器CD4045,作為時間溫度顯示的位控信號,通過三極管控制LED顯示器的共陰極端。PB口的高4位同樣外接譯碼器,作為漢字顯示的位控信號,整個系統采用動態顯示方式。

        2.2時鐘芯片

        DS12C887是跨越2000年的時鐘芯片,他將晶體振蕩電路、充電電路和可充電鋰電池等一起封裝在芯片的上方,組成一個加厚的集成電路模塊。電路通電時其充電電路便自動對可充電電池充電,充足一次電可供芯片運行半年,正常工作時可保證時鐘數據10年內不會丟失。另外,他的114 B的非易失性靜態RAM可供用戶使用,可在主機掉電時保存一些重要的數據[1]。

        在本系統中,將校歷周數、節慶日漢字代碼、天數等信息保存在其中,使本系統有掉電保持功能。使用此芯片首先要對其進行初始化,為芯片內部寄存器設立標志位并賦初值,同時加載時鐘計數初值。初始化完成后,即可以從該芯片中讀取時間。該芯片的口地址為0BF00H~0BF09H,分別是DS12C887的年、月、日、星期以及時間等的時標寄存器。通過相應口地址將實時時間值讀出后,經過處理得到段碼,存入相應顯示緩沖單元,供顯示子程序調用,即實現了時鐘顯示功能。

        2.3溫度轉換

        DS18B20是單總線溫度傳感器,與單片機通信只要一根I/O線,因而使用方便[2]。

        本系統利用P10口作為I/O口線直接讀取溫度值。這種方式比其他溫度傳感器省去了信號調理、標度轉換、A/D轉換等前向通道電路,使電路簡化,編程容易;另外他采用低電壓供電,測溫范圍為-55~+125 ℃,在—10~+85 ℃范圍內誤差為0.5 ℃,這些特點滿足在測量室溫方面的要求。

        2.4漢字顯示原理

        節慶日的每個漢字分別由4個8×8 LED點矩陣顯示器組成[3],以“慶”為例,說明其顯示原理:其點陣如圖3所示,根據點陣圖,每個漢字由16行16列點陣組成,將每列分成2個8位段碼,因而1個漢字由32個段碼組成,“慶”字的段碼如圖所示。顯示時,每列的2個段碼分2次送出,而對應這2次掃描的同一列的位控信號不變,因而完成1個漢字的顯示需要32次掃描過程。編程時,將常用的漢字的段碼以表的形式存于ROM中,設定時用查表指令取出段碼,然后將段碼再存到DS12C887的RAM中,以實現斷電保持。

        33.jpg


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 桑日县| 明星| 龙山县| 靖安县| 安新县| 北宁市| 枣阳市| 长治县| 本溪市| 克山县| 淮安市| 大洼县| 上高县| 鹤岗市| 昭通市| 清新县| 甘南县| 盐津县| 天长市| 哈巴河县| 郓城县| 金平| 巢湖市| 夏津县| 宝兴县| 观塘区| 沈丘县| 江永县| 平果县| 新竹县| 平顺县| 阜南县| 长乐市| 阜阳市| 敦化市| 庄河市| 肇州县| 海兴县| 察雅县| 宁明县| 敦化市|