湯宇 孫慧
摘要:由于目前大部分企業(yè)、學(xué)校等單位所使用的打鈴裝置多由單片機和定時芯片構(gòu)成,每天計時誤差達(dá)0.5S,日積月累走時誤差會達(dá)數(shù)分鐘,甚至十多分鐘,給科學(xué)管理造成不便。本文提出了基于GPS授時和AVR單片機構(gòu)成的智能音樂打鈴系統(tǒng),利用12864液晶模塊以中文方式顯示當(dāng)前年、月、日、時、分、星期、溫度等生活信息及打鈴設(shè)置時的時間信息。本設(shè)計以GPS中時間信號為基準(zhǔn),精度極高,用戶界面友好,操作方便,只要將響鈴時間設(shè)置相同,便可實現(xiàn)多廠區(qū)、多校區(qū)的響鈴保持同步。
關(guān)鍵詞:GPS ATmega16 打鈴系統(tǒng)
中圖分類號:G04R20/04 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2016)09-0027-02
1 系統(tǒng)結(jié)構(gòu)
主要由電源電路、AVR單片機、GPS授時模塊、按鍵電路、LCD12864液晶顯示模塊、溫度檢測、聲光電路、音樂打鈴輸出電路構(gòu)成,如圖1所示。
1.1 GPS模塊
本系統(tǒng)選用U-BLOX NEO-6M GPS模塊接收解調(diào)GPS信號,如下圖2所示。GPS信號中的時間是由銫原子鐘產(chǎn)生的,時間精度極高,因此從中提取時間信號作為打鈴系統(tǒng)的時間基準(zhǔn),可使打鈴系統(tǒng)的計時精度大大提高。
1.2 微處理器
以ATmega16單片機為控制核心,利用其串口接收GPS模塊的數(shù)據(jù)信息,并通過程序解析出需要的時間信號,用作打鈴系統(tǒng)的時間基準(zhǔn)。同時采集DS18B20溫度傳感器的溫度信息,將GPS時間和DS18B20溫度信息顯示在LCD12864屏幕上。
1.3 音樂播放模塊
打鈴輸出使用MP3播放模塊,如圖3所示。當(dāng)設(shè)置的響鈴時間與GPS的基準(zhǔn)時間相同時,利用單片機控制MP3播放模塊以響起語音播報和短暫的音樂作為上、下課的鈴聲。
1.4 按鍵設(shè)置
用于對響鈴時間的設(shè)置,分別為設(shè)置、左移、右移、加數(shù)、減數(shù)和確認(rèn)共6個按鍵。按下“設(shè)置”鍵系統(tǒng)進(jìn)入時間設(shè)置界面,調(diào)整時間利用“左移、右移、加數(shù)、減數(shù)”鍵,設(shè)置完畢按“確認(rèn)”鍵,系統(tǒng)將保存好設(shè)定的時間。
2 軟件設(shè)計
2.1 GPS與單片機串行通訊數(shù)據(jù)協(xié)議
U-BLOX NEO-6M GPS接收模塊的串行輸出數(shù)據(jù)格式采用了NMEA所指定的標(biāo)準(zhǔn)格式,包含傳輸資料的格式以及傳輸資料的通信協(xié)議。本設(shè)計中選用了NMEA-0183協(xié)議數(shù)據(jù)格式,如下表1。
2.2 GPS時間數(shù)據(jù)提取
U-BLOX NEO-6M模塊的TXD腳為RS232的通信接口,其邏輯電平為TTL電平,可直接與單片機的RXD腳相連接,程序中利用單片機串口中斷方式接收GPRMC語句中的時間信息。NMEA-0183協(xié)議每一語句前均以字符“$”開始,可以通過判斷是否接收到字符“$”,判斷是否接收到完整的GPS信號,其流程如圖4所示。
2.3 主程序設(shè)計
打鈴系統(tǒng)主程序采用了模塊化結(jié)構(gòu),主要包含了GPS信息提取函數(shù)、12864液晶顯示函數(shù)、DS18B20溫度測量函數(shù)、萬年歷顯示函數(shù)、打鈴時間設(shè)置函數(shù)和ATmega16單片機EEPROM數(shù)據(jù)斷電保持函數(shù),程序設(shè)計流程如圖5所示。
3 系統(tǒng)運行及操作
3.1 系統(tǒng)初始化
系統(tǒng)上電后,GPS進(jìn)入初始化過程,LCD12864顯示初始化界面,如圖6所示。GPS模塊接收并解調(diào)到穩(wěn)定可靠的GPS數(shù)據(jù)信息后,系統(tǒng)進(jìn)入萬年歷顯示界面,如圖7所示。
3.2 響鈴時間設(shè)置
根據(jù)作息時間表,共可設(shè)置50組打鈴時間,如圖8所示。當(dāng)響鈴時間到,單片機控制音樂播放模塊響起語音播報和短暫的音樂作為上、下課的鈴聲。
3.3 斷電數(shù)據(jù)存儲
本系統(tǒng)在實際使用過程中考慮到系統(tǒng)斷電后,之前所設(shè)置的打鈴時間數(shù)據(jù)將會因單片機復(fù)位而隨之清零,使用了ATMEGA16單片機內(nèi)部自帶的EEROM數(shù)據(jù)存儲區(qū)來單獨存儲通過按鍵設(shè)置的打鈴時間數(shù)據(jù)。每次單片機斷電重新啟動后,會自動讀取之前設(shè)置的打鈴時間數(shù)據(jù),使用起來更方便。
4 結(jié)語
采用GPS時間為基準(zhǔn)的打鈴系統(tǒng)走時精確、使用方便、人機界面交互友好,目前該打鈴系統(tǒng)已成功實現(xiàn)了試運行。因GPS信號易受到高樓及密集高層建筑物而信號減弱,在室內(nèi)收不到GPS信號的場合,系統(tǒng)無法正常工作。若本系統(tǒng)的數(shù)據(jù)傳輸采用無線透明模塊進(jìn)行傳輸,即將GPS信號模塊和單片機控制模塊進(jìn)行分離,則可方便地實現(xiàn)只使用一個GPS模塊對多機同步打鈴的控制要求??梢姡驹O(shè)計具有一定的推廣價值。
參考文獻(xiàn)
[1]謝維成.單片機原理與應(yīng)用及C51程序設(shè)計[M].北京:清華大學(xué)出版社,2005.4.100-112.
[2]沈紅衛(wèi).基于單片機的智能系統(tǒng)設(shè)計與實現(xiàn)[M].北京:電子工業(yè)出版社,2009.6.12-23.
[3]邱致和.GPS原理與與應(yīng)用[M].北京:電子工業(yè)出版社,2001.2.125-133.
[4]李明峰.GPS定位技術(shù)及其應(yīng)用[M].北京:國防工業(yè)出版社,2007.7.156-198.