崔巍 周宇
摘要:基于STC89C52設(shè)計一種應(yīng)用于高校音樂類專業(yè)學(xué)生琴房管理的語音提醒儀。使用STC89C52控制語音芯片、液晶顯示模塊和計時器模塊,通過RS232電平轉(zhuǎn)換,485芯片ADM2483組成總線連接每個琴房內(nèi)的語音提醒儀,利用上位機(jī)琴房管理軟件與串口通信控件在總線上傳輸數(shù)據(jù)。該方案可以解決在琴房管理中人為地去提醒學(xué)生練琴時間已到。
關(guān)鍵詞:語音提醒儀;ADM2483;ISDl760
0引言
隨著人工智能的高速研發(fā)與應(yīng)用,高等院校藝術(shù)專業(yè)對學(xué)生琴房的管理也隨即引入可行智能化改進(jìn)即已成為順應(yīng)現(xiàn)實潮流發(fā)展的必然趨勢。市面上現(xiàn)有的琴房管理系統(tǒng)可以對學(xué)生練琴時間進(jìn)行統(tǒng)計,但超出規(guī)定練琴時間后無法自動提醒學(xué)生練琴時間已到,需要人為地去主動提醒。針對這一狀況,設(shè)計研發(fā)了一款基于單片機(jī)控制的語音提醒儀。
1系統(tǒng)總體方案設(shè)計
本系統(tǒng)是在琴房管理系統(tǒng)的基礎(chǔ)上拓展設(shè)計并實現(xiàn)運行的。學(xué)生在琴房管理室刷卡上琴,琴房管理軟件自動分配一間空閑琴房給學(xué)生,同時上位機(jī)琴房管理軟件傳遞給相應(yīng)琴房單片機(jī)剩余時間信號,當(dāng)學(xué)生走去該琴房刷卡進(jìn)門后,門禁系統(tǒng)檢測到開門信號后將信號傳遞給MCU。這時本次研發(fā)設(shè)計的語音提醒儀即會開始工作。
當(dāng)MCU接收到上位機(jī)提供的該學(xué)生練琴剩余時間的信號后,MCU就會循環(huán)檢測開門信號的到來,當(dāng)實際偵獲開門信號后,MCU一方面將計時器啟動以及在LCD顯示屏上顯示“歡迎練琴,練琴倒計時:XX:XX”,另一方面控制語音芯片播放“歡迎練琴,請愛護(hù)公物”提示音。此時即表征學(xué)生練琴開始,而后當(dāng)練琴剩余時間到零后,計時器給單片機(jī)發(fā)送信號,而后有效控制LCD顯示器顯示練琴時間已到,并觸發(fā)語音芯片播放語音提示音“練琴時間已到,請整理好鋼琴并到琴房管理室刷卡下琴”。如學(xué)生在練琴剩余時間還未到時需要下琴,設(shè)計中該學(xué)生則只需到琴房管理室刷卡下琴即可,當(dāng)琴房管理室中琴房管理軟件接收到下琴信號以后,將會給相應(yīng)琴房單片機(jī)提交一個停止計時信號,相應(yīng)琴房單片機(jī)就會停止計時并恢復(fù)初始默認(rèn)狀態(tài)。
系統(tǒng)的主要設(shè)計構(gòu)成有:上位機(jī)琴房管理軟件、總線通信模塊、單片機(jī)微控制器、文字顯示模塊、語音播報模塊、計時器。系統(tǒng)整體框架如圖1所示。
2系統(tǒng)硬件設(shè)計
2.1上位機(jī)琴房管理軟件、總線通信模塊、單片機(jī)微控制器
通過上位機(jī)琴房管理軟件可以到得學(xué)生練琴剩余時間數(shù)據(jù)和琴房分配房間號碼,利用VB軟件編程而與琴房管理軟件高效建立數(shù)據(jù)的讀取對接,進(jìn)一步用MSCOMM控件來設(shè)計支持串口通信。總線通信模塊使用PC機(jī)的RS 232串口輸出,借助MAX232電平轉(zhuǎn)換后接到485總線上,單片機(jī)通過ADM2483接到485總線上,從而研發(fā)可得PC機(jī)與多單片機(jī)的串口通信,單片機(jī)使用STC89C52,利用單片機(jī)內(nèi)自帶的串口通信接口與ADM2483相接,實現(xiàn)異步串行通信。本設(shè)計是針對延安大學(xué)魯藝學(xué)院學(xué)生琴房練琴倒計時設(shè)計提出的解決方案,魯藝學(xué)院現(xiàn)共有50間學(xué)生琴房,均使用485總線進(jìn)行連接。ADM2483芯片可提供256個總線節(jié)點,完全可以滿足需求及日后的擴(kuò)展??偩€連接架構(gòu)示意即如圖2所示。
2.2語音提醒模塊設(shè)計
利用STC89C52單片機(jī)作為微控制器,一方面接收來自總線上ADM2483數(shù)據(jù)信號,另一方面則是調(diào)度控制整個語音提醒模塊。顯示模塊使用LCDl2864帶中文字庫的液晶顯示器,采用串口模式傳送數(shù)據(jù),LCDl2864的RS、WR、E引腳分別與單片機(jī)的P0.1~P0.2連接。語音存儲模塊使用ISDl760語音芯片,采用自帶串口通信接口MISO、MOIS、SCLK、SS分別與單片機(jī)的PO.4-P0.7連接。計時模塊使用DSl337芯片,采用自帶串口通信接口I/O、SCLK、RST分別與單片機(jī)的P2.0~P2.2連接。由于本裝置檢測開門需求簡單,待相應(yīng)琴房語音提醒儀接收到上位機(jī)發(fā)送的練琴剩余時間信號后,即轉(zhuǎn)入開門信號檢測,當(dāng)檢測第一次開門信號后提醒儀就設(shè)置為工作狀態(tài),期間任何時候不再檢測。直到上位機(jī)發(fā)送來相應(yīng)的停止計時信號后,轉(zhuǎn)入初始狀態(tài)。研發(fā)過程中,設(shè)計選用了單片機(jī)的I/O口P0.3來展開高低電平檢測以甄別判斷是否開門。研究可得,整體運行電路即如圖3所示。
3系統(tǒng)軟件設(shè)計
當(dāng)學(xué)生刷卡上琴時,琴房管理軟件會自動為該生分配一間空閑琴房,這時可以通過上位機(jī)琴房管理軟件運行得到學(xué)生練琴剩余時間數(shù)據(jù)和分配琴房序號,進(jìn)一步可以得到相應(yīng)琴房房間號以及該學(xué)生練琴剩余時間。上位機(jī)通過串口總線廣播地址,從機(jī)判斷接收到的地址是否與本機(jī)地址相等,如果相等則接收轉(zhuǎn)發(fā)的剩余時間信號,與之關(guān)聯(lián)的提醒儀也隨即轉(zhuǎn)入檢測等待開門信號。當(dāng)檢測到開門信號后,就自行開始工作。單片機(jī)接收到上述指定的剩余時間信號,啟動DS1337計時器開始倒計時,啟動LCD12864進(jìn)行數(shù)字顯示,并且啟動語音芯片ISD1760。然后,單片機(jī)將持續(xù)檢測總線結(jié)束信號(優(yōu)先級高)及計時器到時信號。當(dāng)總線停止信號進(jìn)來,系統(tǒng)直接轉(zhuǎn)到系統(tǒng)復(fù)位;當(dāng)計時器到時信號進(jìn)來,啟動LCD顯示,啟動語音芯片,而后系統(tǒng)復(fù)位。綜上可得,系統(tǒng)智能研發(fā)流程具體可如圖4所示。
4結(jié)束語
本設(shè)計采用了ADM2483芯片組成總線系統(tǒng),單片機(jī)通過RxD和TxD通信接口與總線相連。單片機(jī)通過I/O口與語音芯片的SPI接口、LCD12864顯示以及計時器DSl337相連,使用串口通信方式進(jìn)行通信,可以節(jié)省單片機(jī)的I/O,方便日后的功能擴(kuò)展。該方案可以改進(jìn)在琴房管理中人工提醒學(xué)生練琴時間已到這一基礎(chǔ)現(xiàn)狀所呈現(xiàn)的問題與不足。實驗測試證明,設(shè)計的提醒儀功能穩(wěn)定性較高,并可在經(jīng)由進(jìn)一步的優(yōu)化和接口擴(kuò)展后即運行應(yīng)用于延安大學(xué)魯藝學(xué)院的學(xué)生琴房管理實踐中。