簡訊
(武漢貝斯特通信集團股份有限公司,湖北 武漢 430024)
黃金平
(長江大學(xué)電子信息學(xué)院,湖北 荊州 434023)
?
基于STC12C5A60S2的電子鐘硬件設(shè)計
簡訊
(武漢貝斯特通信集團股份有限公司,湖北 武漢 430024)
黃金平
(長江大學(xué)電子信息學(xué)院,湖北 荊州 434023)
[摘要]提出了一種基于單片機的電子鐘硬件設(shè)計方法。硬件電路以STC12C5A60S2單片機為主控電路,輔之以DS1302時鐘電路、DS18b20溫度采集電路、LCD12864顯示電路、按鍵設(shè)置電路。該電子鐘能實時顯示星期、時間、日期、溫度以及周數(shù)、學(xué)期、季節(jié)、通知和鬧鈴等信息,且具有時間和日期的校準(zhǔn)功能,通過按鍵設(shè)置的鬧鈴會在指定的時間響起。系統(tǒng)采用LCD12864顯示數(shù)據(jù),使得操作人性化、顯示效果直觀化。
[關(guān)鍵詞]STC12C5A60S2單片機; LCD12864;Proteus;電子鐘;硬件設(shè)計
數(shù)字集成技術(shù)的發(fā)展和石英晶體振蕩器的應(yīng)用,使得數(shù)字電子鐘的精度遠遠超過普通鐘表, 且大大地擴展了普通鐘表功能。諸如定時自動報警、準(zhǔn)時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關(guān)烘箱、通斷動力設(shè)備、甚至各種定時電氣的自動啟用等,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,數(shù)字電子鐘設(shè)計及功能擴展實踐研究有著極高的實際應(yīng)用前景[1]。下面,筆者提出了一種能實時顯示星期、時間、日期、溫度以及周數(shù)、學(xué)期、季節(jié)、通知和鬧鈴等信息,且具有時間和日期的校準(zhǔn)功能的電子鐘的硬件設(shè)計方法。
1電子鐘硬件設(shè)計框圖
電子鐘硬件設(shè)計以單片機STC12C5A60S2為控制核心,以DS1302作為時鐘芯片,通過串口通信進行時間信息的校準(zhǔn),以DS18b20作為溫度采集芯片,通過P2口中的一些端口控制LCD12864進行時間和溫度等相關(guān)信息的顯示。通過按鍵設(shè)置鬧鈴信息,到時蜂鳴器響起,同時通過按鍵還可進行不同顯示界面的相互轉(zhuǎn)換。其重點在于時間顯示、溫度采集電路、控制電路以及鬧鈴模塊的設(shè)計。
時間顯示與控制電路主要實現(xiàn)年、月、日、時、分、秒、星期、周數(shù)、學(xué)期和季節(jié)的顯示與控制,并具有校準(zhǔn)功能。
控制電路部分須考慮具體設(shè)計實際,采用多個(至少5個)獨立按鍵。其中一個專用按鍵來進行不同顯示界面的相互轉(zhuǎn)換;一個專用按鍵來進行不同鬧鈴信息的選擇;一個按鍵來進行移位選擇,并在設(shè)計程序時使其移位到需要調(diào)節(jié)的數(shù)據(jù)時數(shù)據(jù)進行閃爍;其余的按鍵用以實現(xiàn)數(shù)據(jù)的加減功能等。
溫度采集電路可用DS18b20來進行溫度采集,單片機讀取溫度數(shù)據(jù),由LCD12864進行顯示。
鬧鈴模塊設(shè)置時間或日期,到點后蜂鳴器會響起來進行提醒,直至復(fù)位。
這4個部分電路須相互配合,構(gòu)成一個整體,以實現(xiàn)年、月、日、時、分、秒、星期、周數(shù)等的顯示以及按鍵調(diào)節(jié)和報時功能等合為一體的電子鐘。其硬件設(shè)計基本框圖見圖1。
2各單元電路設(shè)計
2.1STC12C5A60S2單片機最小系統(tǒng)
圖1 基于單片機STC12C5A60S2的電子鐘硬件設(shè)計基本框圖
圖2 最小系統(tǒng)電路圖
圖3 LED顯示器
圖2為STC12C5A60S2單片機的最小系統(tǒng)電路圖,包括晶振電路、復(fù)位開關(guān)和電源部分,單片機腳說明如下:VCC 40電源端,GND 20接地端,工作電壓為5V,外接晶體引腳XTAL1 19、 XTAL2 18,復(fù)位RST 9。輸入輸出引腳:①P0口(P0.0~P0.7)為8位雙向I/O端口,置1時作高阻輸入端;置0時作低阻輸出端,驅(qū)動8個TTL。此外, 當(dāng)P0口對內(nèi)部Flash程序存儲器編程時收指令字節(jié),而當(dāng)校驗程序時發(fā)指令字節(jié),故外接上拉電阻;當(dāng)P0口訪問外部程序和外部數(shù)據(jù)存儲器時,作分時數(shù)據(jù)總線,轉(zhuǎn)換低8位地址。②P1口(P1.0~P1.7)為帶內(nèi)部上拉電阻的8位雙向I/0端口。輸出驅(qū)動4個TTL。置1時,內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對內(nèi)部Flash程序存儲器編程時,接收低8位地址。③P2口(P2.0~P2.7)為帶內(nèi)部上拉電阻的8位雙向I/0端口。輸出驅(qū)動4個TTL。置1時,內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對內(nèi)部Flash程序存儲器編程時,接收高8位地址和控制信息。在訪問外部程序和16位外部數(shù)據(jù)存儲器時,P2口送出高8位地址。而在訪問8位地址的外部數(shù)據(jù)存儲器時其引腳上的內(nèi)容在此期間不會改變。④P3口(P3.0~P3.7)為帶有內(nèi)部上拉電阻的8位雙向I/0端口。輸出驅(qū)動4個TTL。置1時,內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對內(nèi)部Flash程序存儲器編程時接控制信息。
2.2LCD顯示電路
圖4 串口通訊硬件連接電路圖
顯示器常用于直觀地顯示數(shù)字系統(tǒng)的運行狀態(tài)和工作數(shù)據(jù)。單片機應(yīng)用系統(tǒng)中常用的顯示器有發(fā)光二極管LED顯示器、液晶LCD顯示器、CRT顯示器等,其中LCD顯示器因特別適于使用環(huán)境相對固定的場合而成為最常用的顯示器。LCD顯示電路連接如圖3所示。
2.3串口通訊校時電路
串口通信(Serial Communication), 指外設(shè)和計算機間通過數(shù)據(jù)線與控制線按位進行傳輸數(shù)據(jù)的通訊方式。該通信方式需用的數(shù)據(jù)線少、傳輸質(zhì)量高、通信成本低,但傳輸速度比并行傳輸?shù)汀TO(shè)計是將單片機與計算機之間進行連接,將計算機的時鐘信息通過數(shù)據(jù)線傳送到單片機,特別適合選用該方式。圖4和圖5分別為串口通信硬件連接電路圖和串口調(diào)試軟件的界面圖。
2.4按鍵設(shè)置電路
圖6是按鍵硬件連接電路圖。共用到了5個按鍵,其中S1用于不同顯示界面的切換,S2用于不同鬧鐘信息的轉(zhuǎn)換,另外3個S3、S4、S5分別用于鬧鈴時間、日期及其他設(shè)定。
圖5 串口調(diào)試軟件界面
按鍵電路使用時,通常會出現(xiàn)“抖動”,即當(dāng)按下某個鍵或釋放該按鍵時,會出現(xiàn)按鍵在閉合和斷開狀態(tài)之間的來回跳變[3]。用軟件方法可有效地解決抖動問題,解決抖動問題的C語言程序如下:
if(key==0) /*key鍵按下*/
{delay(); /*按鍵消抖,延遲一下 */
if(key==0) /* key鍵確實按下*/
{
while(!key);/*key鍵釋放*/
…
}
}
2.5蜂鳴器響鈴電路
開始給蜂鳴器端口給初值為低電平,當(dāng)?shù)竭_響鈴時刻時,給蜂鳴器端口以高電平,調(diào)節(jié)其頻率,蜂鳴器開始正常工作,其模塊電路圖見圖7。
圖6 按鍵連接電路圖
圖7 蜂鳴器連接電路圖
3仿真測試
完整的電子鐘的硬件原理圖如圖8所示。
圖8 電子鐘的硬件原理圖
圖9 程序運行顯示結(jié)果
根據(jù)電子鐘的硬件原理圖, 用PROTEUS軟件,得到仿真連接圖如圖9所示,KEIL軟件調(diào)試程序如圖10所示。
用PROTEUS進行單片機仿真,不僅能仿真單片機CPU 的工作情況,也能仿真單片機外圍電路或沒有單片機參與的其他電路的工作情況[5]。測試結(jié)果表明,由該方案設(shè)計的系統(tǒng)很好的完成了顯示功能、校時功能、響鈴功能。通過控制P1.0、P1.1、P1.2來調(diào)節(jié)當(dāng)前時間的顯示,很好的完成了校時功能。設(shè)置鬧鈴時間后,蜂鳴器也能到時提醒,很好的體現(xiàn)了響鈴功能。
4結(jié)語
用STC12C5A60S2作為系統(tǒng)的主控模塊,將DS1302讀來的時鐘數(shù)據(jù)和DS18b20采集的溫度數(shù)據(jù)等進行處理,再把數(shù)據(jù)傳輸?shù)絃CD12846顯示模塊,實現(xiàn)溫度、日歷等的實時顯示。通過按鍵進行不同界面的轉(zhuǎn)換和各種顯示要求的選擇與切換以及鬧鈴時間的設(shè)置等。
測試的過程中,筆者發(fā)現(xiàn)了幾個需要思考與改進的問題:一是按鍵調(diào)節(jié)的部分,雖然能夠?qū)崿F(xiàn)調(diào)節(jié)功能,但所須的程序相對繁瑣;二是盡管5個獨立按鍵比較簡潔,但在調(diào)節(jié)相應(yīng)功能時,仍顯麻煩;三是對于所選擇LCD12864的顯示模塊,在較強的光線下使用可能會出現(xiàn)亮度不夠。這些問題都有待進一步研究。
圖10 KEIL軟件調(diào)試程序
[1]譚浩強.微型計算機原理及應(yīng)用[M].第3版.北京:清華大學(xué)出版社,2008.
[2] 童詩白,華成英.模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2001.
[3] 閻石.數(shù)字電路技術(shù)基礎(chǔ)[M].北京:高等教育出版社,1998.
[4] 王東鋒,王會良,董冠強.單片機C語言應(yīng)用100例[M].北京:電子工業(yè)出版社,2009.
[5] 張欣,孫宏昌,尹霞.單片機原理與C51程序設(shè)計基礎(chǔ)[M].北京:清華大學(xué)出版社,2010.
[編輯]張濤
[收稿日期]2016-02-12
[作者簡介]簡訊(1987-),男,現(xiàn)主要從事通信工程管理方面的研究工作;通信作者:黃金平,1103934907@qq.com。
[中圖分類號]TN873;TH714
[文獻標(biāo)志碼]A
[文章編號]1673-1409(2016)16-0051-06
[引著格式]基于STC12C5A60S2的電子鐘硬件設(shè)計[J].長江大學(xué)學(xué)報(自科版),2016,13(16):51~56.