畢業(yè)論文-基于AT89S52單片機(jī)的公交車語音報(bào)站系統(tǒng)設(shè)計(jì).doc
《畢業(yè)論文-基于AT89S52單片機(jī)的公交車語音報(bào)站系統(tǒng)設(shè)計(jì).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《畢業(yè)論文-基于AT89S52單片機(jī)的公交車語音報(bào)站系統(tǒng)設(shè)計(jì).doc(53頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、武漢理工大學(xué)畢業(yè)設(shè)計(jì)(論文)武漢理工大學(xué)畢業(yè)設(shè)計(jì)(論文)基于AT89S52單片機(jī)的公交車語音報(bào)站系統(tǒng)設(shè)計(jì) 學(xué)院(系): 專業(yè)班級(jí): 學(xué)生姓名: 指導(dǎo)教師: 本科生畢業(yè)設(shè)計(jì)(論文)任務(wù)書學(xué)生姓名: 專業(yè)班級(jí): 指導(dǎo)教師: 工作單位: 設(shè)計(jì)(論文)題目: 基于單片機(jī)的公交語音報(bào)站系統(tǒng)設(shè)計(jì) 設(shè)計(jì)(論文)主要內(nèi)容: 設(shè)計(jì)應(yīng)用單片機(jī)作為主控制單元,利用語音芯片預(yù)設(shè)達(dá)到公交車到站電子語音報(bào)站功能。要求設(shè)計(jì)達(dá)到準(zhǔn)確報(bào)站,并有誤報(bào)人工糾錯(cuò)功能,同時(shí)具有簡(jiǎn)單的可操作性及人工預(yù)設(shè)兼容擴(kuò)展性要求完成的主要任務(wù):1、查閱不少于15篇的相關(guān)資料,其中英文文獻(xiàn)不少于2篇,完成開題報(bào)告。2、完成語音報(bào)站器主控控制模塊、語音
2、模塊、顯示模塊等軟硬件部分設(shè)計(jì),使 單片機(jī)與PC機(jī)能進(jìn)行通信,完成人機(jī)交互界面設(shè)計(jì)。3、完成不少于5000字的英文文獻(xiàn)翻譯。4、撰寫完成不少于12000字的畢業(yè)設(shè)計(jì)論文(設(shè)計(jì)說明書、1張圖紙)。必讀參考資料:1單片機(jī)基礎(chǔ)(第三版) 編著:李廣弟、朱月秀2單片機(jī)典型外圍器件及應(yīng)用實(shí)例 編著:求是科技3Digital system design : use of microcontroller 編著:Dawoud, Shenouda Dawoud 指導(dǎo)教師簽名: 系主任簽名: 院長(zhǎng)簽名(章):目 錄摘 要IAbstractII1 緒論11.1 課題研究的背景及意義11.2 公交報(bào)站器的動(dòng)態(tài)發(fā)展趨勢(shì)
3、11.3 設(shè)計(jì)的主要目標(biāo)任務(wù)22.1 基本原理32.2 基本系統(tǒng)框圖32.3 系統(tǒng)主要電路簡(jiǎn)介33 硬件電路的設(shè)計(jì)53.1 主控電路的設(shè)計(jì)53.1.1 關(guān)于AT89C51單片機(jī)53.1.2 振蕩器電路的設(shè)計(jì)83.1.3 復(fù)位電路的設(shè)計(jì)103.1.4 單片機(jī)最小系統(tǒng)123.2 語音模塊電路設(shè)計(jì)133.2.1 ISD4004芯片內(nèi)部結(jié)構(gòu)133.2.2 芯片引腳描述143.2.3 ISD4004芯片使用說明163.2.4 ISD4004與外圍設(shè)備的連接193.3 顯示電路模塊設(shè)計(jì)193.3.1 液晶模組內(nèi)部結(jié)構(gòu)組成213.3.2 引腳功能213.3.3 液晶模組與單片機(jī)的連接223.4 鍵盤接口電路
4、設(shè)計(jì)223.4.1 按鍵的確認(rèn)233.4.2 重鍵與連擊的處理233.4.3 按鍵防抖動(dòng)技術(shù)233.5 供電電路設(shè)計(jì)264 軟件設(shè)計(jì)274.1 主程序流程圖274.2 語音提示應(yīng)用實(shí)現(xiàn)284.1.1 放音程序284.1.2 錄音程序294.2 文字顯示應(yīng)用實(shí)現(xiàn)304.3 鍵盤接口應(yīng)用實(shí)現(xiàn)315 總結(jié)32參考文獻(xiàn)33附錄一 總電路圖34附錄二 語音提示參考程序35附錄三 文字顯示參考程序39致謝44摘 要 公共汽車行駛在現(xiàn)代文明程度高的市區(qū),它是一道流動(dòng)的風(fēng)景線,因而對(duì)整車外形乃至色彩都有更高的要求。作為公交汽車還要有醒目和減少乘務(wù)人員強(qiáng)度的電子報(bào)站器,電子顯示路牌,無人售票裝置,前后電視監(jiān)視系
5、統(tǒng)等新技術(shù)的采用也將越來越普及。本文提出了一種用單片機(jī)控制語音芯片進(jìn)行公交車語音自動(dòng)報(bào)站的方法。整個(gè)系統(tǒng)硬件設(shè)計(jì)包括鍵盤電路、復(fù)位電路、顯示驅(qū)動(dòng)電路、顯示電路、內(nèi)存擴(kuò)展電路模塊。利用AT89C51作為控制器,通過ISD4004語音芯片建立語音信息庫(kù),形成變化多樣的語音信息,利用其功放播放語音信息以及提示語音,同時(shí)運(yùn)用LCD數(shù)碼管進(jìn)行站數(shù)顯示。當(dāng)公交車到達(dá)某站點(diǎn),用鍵盤控制本系統(tǒng)工作,通過語音電路輸出語音信息和提示,同時(shí)站數(shù)信息在數(shù)碼管上顯示。 本系統(tǒng)很大程度上提高公交車報(bào)站的準(zhǔn)確性,可靠性。提高了公交系統(tǒng)的服務(wù)質(zhì)量。促進(jìn)城市經(jīng)濟(jì)發(fā)展和交通變化的和諧發(fā)展。關(guān)鍵詞:AT89S51單片機(jī),ISD40
6、04語音芯片,LCD數(shù)碼管,語音報(bào)站1Abstract Bus driving in urban areas with a high degree of modern civilization, it is a mobile landscape, shape and even the color of the vehicle and thus have higher requirements. As public transport vehicles but also eye-catching and reducing the intensity of the newsletter crew
7、stations, electronic display signs, unmanned devices, such as video surveillance system before and after the adoption of new technologies will also be increasingly popular. This paper presents a single-chip voice control voice chip bus automatic station approach. The entire system hardware design, i
8、ncluding keyboard circuit, reset circuit, display driver circuit, display circuit, memory expansion circuit modules. Use AT89C51 as the controller, through establishing a voice ISD4004 voice chip repository, forming diverse voice messages, playing voice messages using its power amplifier and voice p
9、rompts, while the use of LCD digital tube station number display. When the bus arrived a site, use the keyboard to control the system work through the voice circuit output voice information and tips, and information on the number of stations on the digital display. This system greatly improved bus s
10、tations accuracy, reliability. Improve the quality of service the public transportation system. Promoting urban economic development and the harmonious development of traffic changes.Key Words:AT89S51 microcontroller; ISD4004 voice chip; LCD digital control;voice stations11 緒論隨著科學(xué)技術(shù)的日益發(fā)展和進(jìn)步, 無人售票公交車
11、在街頭多起來了,語音報(bào)站器也被廣泛使用,這在相當(dāng)大的程度上免除了乘務(wù)人員沿途報(bào)站的麻煩,給許多不熟悉公交線路的乘客帶來了方便。1.1 課題研究的背景及意義公共汽車為外出的人們提供了方便快捷的服務(wù),而公共汽車的報(bào)站直接影響服務(wù)的質(zhì)量。傳統(tǒng)由乘務(wù)人員人工報(bào)站,該方式因其果太差和工作強(qiáng)度太大,在很多大城市已經(jīng)被淘汰。近年來,隨著科學(xué)技術(shù)的日益發(fā)展和進(jìn)步,微型計(jì)算機(jī)技術(shù)已經(jīng)在許多領(lǐng)域得到了廣泛的應(yīng)用。在聲學(xué)領(lǐng)域,微機(jī)技術(shù)與各種語音芯片相結(jié)合,即可完成語音的合成技術(shù),使得汽車報(bào)站器的實(shí)現(xiàn)成為可能,從而為市民提供了更加人性化的服務(wù)。鑒于傳統(tǒng)公交車人工報(bào)站的不足之處,結(jié)合公交車輛的使用特點(diǎn)及實(shí)際營(yíng)運(yùn)環(huán)境,設(shè)
12、計(jì)了一種由單片機(jī)控制的公交車語音報(bào)站系統(tǒng)1。1.2 公交報(bào)站器的動(dòng)態(tài)發(fā)展趨勢(shì) 目前,公交車自動(dòng)報(bào)站主要有以下幾種方式:一種是通過全球定位系統(tǒng)(GPS)的用戶終端接收工作衛(wèi)星的導(dǎo)航信息,從而解算出車輛的經(jīng)緯度信息,進(jìn)而計(jì)算出實(shí)時(shí)坐標(biāo),將其與站點(diǎn)坐標(biāo)相比較,當(dāng)車輛駛?cè)胝军c(diǎn)一定距離范圍內(nèi)時(shí),不用人工干預(yù),系統(tǒng)自動(dòng)報(bào)站;另一種是利用無線射頻識(shí)別(Radio Frequency Identification)技術(shù),在每一個(gè)公交站臺(tái)設(shè)置一個(gè)具有唯一ID的射頻發(fā)射器,采用間歇工作方式發(fā)射信號(hào),當(dāng)公交車即將到達(dá)車站時(shí),車載系統(tǒng)接收到站信號(hào)并解碼出站臺(tái)的ID號(hào),由單片機(jī)控制自動(dòng)播放對(duì)應(yīng)站臺(tái)編號(hào)的報(bào)站語音;還有一
13、種是對(duì)車輪軸的轉(zhuǎn)角脈沖進(jìn)行計(jì)數(shù),將計(jì)數(shù)值和預(yù)置值對(duì)比,即可確定報(bào)站時(shí)刻,達(dá)到準(zhǔn)確報(bào)站的目的2。 然而,這三種方式都不太適合鄉(xiāng)鎮(zhèn)的發(fā)展現(xiàn)狀。第一種設(shè)備造價(jià)過高,定位精度也難以達(dá)到要求;第二種站臺(tái)建設(shè)投入較大,站點(diǎn)一旦變更,射頻發(fā)射裝置即須移動(dòng),較為麻煩;第三種需要公交線路嚴(yán)格固定,稍有改變,報(bào)站就難以準(zhǔn)確。為此,本文試圖設(shè)計(jì)一種既方便易行又經(jīng)濟(jì)實(shí)惠的公交車自動(dòng)報(bào)站系統(tǒng)。 本設(shè)計(jì)采用人工按鍵的操作方式,實(shí)現(xiàn)公交車對(duì)站名的語音提示和文字顯示功能。當(dāng)公交車到達(dá)某一站時(shí),司機(jī)或乘務(wù)人員只需按動(dòng)按鍵,就可以使單片機(jī)控制語音模塊對(duì)站名進(jìn)行語音提示,并控制顯示模組在液晶屏上顯示站數(shù)和站名。系統(tǒng)由一片八位單片機(jī)
14、,一個(gè)語音模塊,一個(gè)液晶模組,一塊穩(wěn)壓芯片,若干電阻電容和與非門等組成。經(jīng)過本課題的研究,我們得到了一種公交車自動(dòng)報(bào)站的低成本解決方案。1.3 設(shè)計(jì)的主要目標(biāo)任務(wù) 本課題要求設(shè)計(jì)一公交車語音報(bào)站系統(tǒng),以實(shí)現(xiàn)公交車的語音報(bào)站,即在進(jìn)站、出站時(shí)候司機(jī)按下按鍵自動(dòng)播報(bào)語音提示信息及服務(wù)用語,同時(shí)利用LCD顯示電路進(jìn)行漢字顯示。同時(shí)系統(tǒng)需具有可操作性和兼容系,即在使用過程中,對(duì)不同的公交線路能夠很方便的進(jìn)行設(shè)定。在使用過程中,若出現(xiàn)錯(cuò)報(bào)漏報(bào)或者是超前報(bào)站情況,司機(jī)能夠通過按鍵進(jìn)行更改,從而達(dá)到正確報(bào)站。 本設(shè)計(jì)要求利用AT89C51作為主控芯片完成主控電路的設(shè)計(jì),輔助電路要求包括語音電路、顯示電路、電
15、源電路、按鍵模塊電路等。2 方案設(shè)計(jì)2.1 基本原理本系統(tǒng)使用八位單片機(jī)作為控制器件。當(dāng)系統(tǒng)進(jìn)行語音再生時(shí),單片機(jī)控制語音合成電路中的語音芯片來讀取其外接的存儲(chǔ)器內(nèi)部的語音信息,并合成語音信號(hào),再通過語音輸出電路,進(jìn)行語音報(bào)站和提示。同時(shí),單片機(jī)通過程序讀取文字信息,送入液晶顯示模組來進(jìn)行站數(shù)和站名的顯示。當(dāng)汽車到達(dá)某站時(shí),司機(jī)或乘務(wù)人員通過鍵盤來控制系統(tǒng)進(jìn)行工作。而且,系統(tǒng)具有根據(jù)公交車的行駛方向確定報(bào)站順序的功能(司機(jī)或乘務(wù)人員可以通過按鍵來控制)。當(dāng)系統(tǒng)進(jìn)行語音錄制時(shí),語音信號(hào)通過語音錄入電路送給語音合成電路中的語音芯片,由語音芯片進(jìn)行數(shù)據(jù)處理,并將生成的數(shù)字語音信息存儲(chǔ)到語音存儲(chǔ)芯片中
16、,從而建立語音庫(kù)3。2.2 基本系統(tǒng)框圖 單片機(jī)晶振語音提示模塊復(fù)位文字顯示模塊電源存儲(chǔ)器鍵盤接口模塊圖2.1 系統(tǒng)組成結(jié)構(gòu)2.3 系統(tǒng)主要電路簡(jiǎn)介 微控制器選擇目前市場(chǎng)上常用的Intel生產(chǎn)的AT89C51單片機(jī)作為主控芯片,同時(shí), AT89C51系統(tǒng)還需要外接晶振和復(fù)位電路。語音提示模塊選用ISD4004系列語音芯片,外接話筒和音箱組成語音錄制和播放電路。其中,音箱由音頻功率放大器LM386驅(qū)動(dòng)。文字顯示模組采用12864液晶屏作為顯示單元,其驅(qū)動(dòng)芯片為帶有中文字庫(kù)的ST7920控制器系列。模組使用ST7920作為控制器和行驅(qū)動(dòng)器,同時(shí)使用ST7921作為列驅(qū)動(dòng)器。與單片機(jī)的連接,我們采用
17、并行間接訪問方式。話筒音頻功率放大器語音芯片電源單片機(jī)音箱錄音放音驅(qū)動(dòng)控制圖2.2 語音提示模塊組成結(jié)構(gòu)鍵盤接口電路采用獨(dú)立按鍵設(shè)計(jì),通過觸發(fā)器來消除按鍵抖動(dòng)。電源采用LM2576作為穩(wěn)壓器件,將公交車上的+24V直流電壓轉(zhuǎn)變?yōu)?5V直流電壓。LM2576是NS生產(chǎn)的3A電流輸出降壓開關(guān)型穩(wěn)壓集成芯片,能夠較好地解決LM7805因輸入電壓過高而發(fā)熱量較大的問題。3 硬件電路的設(shè)計(jì) 公交車語音報(bào)站系統(tǒng)主要由四個(gè)部分組成,即主控電路、按鍵模塊、語音電路、漢字顯示電路。各部分電路的設(shè)計(jì)在本章中做了詳細(xì)的說明。3.1 主控電路的設(shè)計(jì)3.1.1 關(guān)于AT89C51單片機(jī)AT89C51單片機(jī)的結(jié)構(gòu)框圖如圖
18、3.1所示。它主要由下面幾個(gè)部分組成:1個(gè)8位中央處理單元(CPU)、片內(nèi)Flash存儲(chǔ)器、片內(nèi)RAM、4個(gè)8位的雙向可尋址I/O口、1個(gè)全雙工UART(通用異步接收發(fā)送器)的串行接口、2個(gè)16位的定時(shí)器/計(jì)數(shù)器、多個(gè)優(yōu)先級(jí)的嵌套中斷結(jié)構(gòu),以及一個(gè)片內(nèi)振蕩器和時(shí)鐘電路。在AT89C單片機(jī)結(jié)構(gòu)中,最顯著的特點(diǎn)是內(nèi)部含有Flash存儲(chǔ)器,而在其他方面的結(jié)構(gòu),則和Inter公司的8051的結(jié)構(gòu)沒有太大的區(qū)別。外部中斷ETC定時(shí)器1定時(shí)器0片內(nèi)Flash存儲(chǔ)器計(jì)數(shù)器輸入片內(nèi)RAM中斷控制CPU串行端口4I/O端口總線控制振蕩器P0 P1 P2 P3RXDTXD圖3.1 AT89C單片機(jī)的結(jié)構(gòu)框圖1)
19、AT89C51芯片主要性能a.與MCS-510b.4K字節(jié)可編程閃爍存儲(chǔ)器, 壽命:1000次寫/擦循環(huán)數(shù)據(jù)保留時(shí)間:10年c.全靜態(tài)工作:0Hz-24Hzd.三級(jí)程序存儲(chǔ)器鎖定e.128*8位內(nèi)部RAMf.32可編程I/O線g.兩個(gè)16位定時(shí)器/計(jì)數(shù)器h.6個(gè)中斷源 i.可編程串行通道j.片內(nèi)振蕩器和時(shí)鐘電路 另外,AT89C51是用靜態(tài)邏輯來設(shè)計(jì)的,其工作頻率可下降到0Hz,并提供兩種可用軟件來選擇的省電方式空閑方式(Idle Mode)和掉電方式(Power Down Mode)。在空閑方式中,CPU停止工作,而RAM、定時(shí)器/計(jì)數(shù)器、串行口和中斷系統(tǒng)都繼續(xù)工作。在掉電方式中,片內(nèi)振蕩器
20、停止工作,由于時(shí)鐘被“凍結(jié)”,使一切功能都暫停,故只保存片內(nèi)RAM中的內(nèi)容,直到下一個(gè)硬件復(fù)位為止4。2)引腳功能說明 AT89C51引腳圖及實(shí)物圖如圖3.2所示:圖3.2 AT89C51單片機(jī)實(shí)物圖級(jí)引腳排列圖VCC:供電電壓。VSS:接地。 P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8個(gè)TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的低八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1
21、口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編
22、程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口,如下表所示:口管腳 備選功能 P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(記時(shí)器0外部輸入) P3.5 T1(記時(shí)器1外部輸入) P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 /R
23、D(外部數(shù)據(jù)存儲(chǔ)器讀選通) P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略
24、微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出3.1.2 振
25、蕩器電路的設(shè)計(jì) 89系列單片機(jī)的內(nèi)部振蕩器電路如圖3.3所示,由一個(gè)單級(jí)反相器組成。XTAL1為反相器的輸入,XTAL2為反相器的輸出。可以利用它內(nèi)部的振蕩器產(chǎn)生時(shí)鐘,只要在XTAL1和XTAL2引腳上外接一個(gè)晶體及電容組成的并聯(lián)諧振電路,便構(gòu)成一個(gè)完整的振蕩信號(hào)發(fā)生器,如圖3.5示,此方法稱為內(nèi)部方式。 另一種使用方法如圖3.4示,由外部時(shí)鐘源提供一個(gè)時(shí)鐘信號(hào)到XTAL1端輸入,而XTAL2端浮空。在組成一個(gè)單片機(jī)應(yīng)用系統(tǒng)時(shí),多數(shù)采用圖3.5所示的方法,這種方式的結(jié)構(gòu)緊湊,成本低廉,可靠性高。振蕩器的等效電路如圖3.5上部所示。在圖中給出了外接元件,即外接晶體及電容C1,C2,并組成并聯(lián)諧振
26、電路。在電路中,對(duì)電容C1和C2的值要求不是很嚴(yán)格,如果用高質(zhì)的晶振,則不管頻率為多少,C1,C2通常都選擇30pF。有時(shí),在某些應(yīng)用場(chǎng)合,為了降低成本,晶體振蕩器可用陶瓷振蕩器代替。如果使用陶瓷振蕩器,則電容C1,C2的值取47pF。XTAL2XTAL1內(nèi)部定時(shí)/PD400D1D2Q1RfQ2VCCQ3Q4圖3.3 AT89C51單片機(jī)內(nèi)部振蕩器電路XTAL2XTAL1GNDNCCMOS門外部振蕩信號(hào)圖3.4 外部時(shí)鐘接法XTAL1XTAL289系列單片機(jī)GND內(nèi)部定時(shí)VCC/PDRf石英晶體或陶瓷振蕩器C1C2圖3.5 片內(nèi)振蕩器等效電路通常,在單片機(jī)中對(duì)所使用的振蕩晶體的參數(shù)要求如下:E
27、SR(等效串聯(lián)電阻):根據(jù)所需頻率按圖3.6選取。C0(并聯(lián)電容):最大7.0pF。CL(負(fù)載電容):30pF+3pF。通常,其誤差及溫度變化的范圍要按系統(tǒng)的要求來確定。在本設(shè)計(jì)中,采用的是內(nèi)部方式,即如圖3.5所示,在XTAL1和XTAL2引腳上外接一個(gè)12MHZ的晶振及兩個(gè)47pF的電容組成6。6005004003002001000 4 8 12 16圖3.6 ESR與頻率的關(guān)系曲線3.1.3 復(fù)位電路的設(shè)計(jì)89系列單片機(jī)與其他微處理器一樣,在啟動(dòng)的時(shí)候都需要復(fù)位,使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初始狀態(tài)開始工作。89系列單片機(jī)的復(fù)位信號(hào)是從RST引腳輸入到芯片內(nèi)的施密特觸發(fā)器
28、中的。當(dāng)系統(tǒng)處于正常工作狀態(tài)時(shí),且振蕩器穩(wěn)定后,如RST引腳上有一個(gè)高電平并維持2個(gè)機(jī)器周期(24個(gè)振蕩周期),則CPU就可以響應(yīng)并將系統(tǒng)復(fù)位。復(fù)位時(shí)序如圖37所示,因外部的復(fù)位信號(hào)是與內(nèi)部時(shí)鐘異步的,所以在每個(gè)機(jī)器周期的S5P2都對(duì)RST引腳上的狀態(tài)采樣。當(dāng)在RST端采樣到“1”信號(hào)且該信號(hào)維持19個(gè)振蕩周期以后,將ALE和/PSEN接成高電平 ,使器件復(fù)位。在RST端電壓變低后,經(jīng)過1-2個(gè)機(jī)器周期后退出復(fù)位狀態(tài),重新啟動(dòng)時(shí)鐘,并恢復(fù)ALE和/PSEN的狀態(tài)。如果在系統(tǒng)復(fù)位期間將ALE和/PSEN引腳拉成低電平,則會(huì)引起芯片進(jìn)入不定狀態(tài)。| S5 | S6 | S1 | S2 | S3 |
29、 S4 | S5 | S6 | S1 | S2 | S3 | S4 | S5 | S6 | S1 | S2 | S3 |RST:INST ADDR INST ADDR INST ADDR INST ADDR INST ADDR INSTALE:/PSEN:P0:11振蕩周期19振蕩周期圖3.7 內(nèi)部復(fù)位定時(shí)時(shí)序1) 手動(dòng)復(fù)位手動(dòng)復(fù)位需要人為在復(fù)位輸入端RST上加入高電平。一般采用的辦法是在RST端和正電源VCC之間接一個(gè)按鈕。當(dāng)人為按下按鈕時(shí),則VCC的+5V電平就會(huì)直接加到RST端。由于人的動(dòng)作很快也會(huì)使按鈕保持接通達(dá)數(shù)十毫秒,所以,保證能滿足復(fù)位的時(shí)間要求。手動(dòng)復(fù)位的電路如圖3.8所示。V
30、cc AT89C51RST GND8.2k10uF+Vcc圖3.8 手動(dòng)復(fù)位電路2) 上電復(fù)位 AT89C51的上電復(fù)位電路如圖3.9所示,只要在RST復(fù)位輸入引腳上接一電容至VCC端,下接一個(gè)電阻到地即可。對(duì)于CMOS型單片機(jī),由于在RST端內(nèi)部有一個(gè)下拉電阻,故可將外部電阻去掉,而將外接電容減至1uF。上電復(fù)位的過程是在加電時(shí),復(fù)位電路通過電容加給RST端一個(gè)短暫的高電平信號(hào),此高電平信號(hào)隨著Vcc對(duì)電容的充電過程而逐漸回落,即RST端的高電平信號(hào)必須維持足夠長(zhǎng)的時(shí)間。 上電時(shí),Vcc的上升時(shí)間約為10ms,而振蕩器的起振時(shí)間取決于振蕩頻率,如晶振頻率為10MHz,起振時(shí)間為1ms;晶振頻
31、率為1MHz,起振時(shí)間則為10ms。在圖3.8的復(fù)位電路中,當(dāng)Vcc掉電時(shí),必然會(huì)使RST端電壓迅速下降到0V以下,但是,由于內(nèi)部電路的限制作用,這個(gè)負(fù)電壓將不會(huì)對(duì)器件產(chǎn)生損害。另外,在復(fù)位期間,端口引腳處于隨機(jī)狀態(tài),復(fù)位后,系統(tǒng)將端口置為全“1”態(tài)。如果系統(tǒng)在上電時(shí)得不到有效的復(fù)位,則在程序計(jì)數(shù)器PC中將得不到一個(gè)合適的初值,因此,CPU可能會(huì)從一個(gè)未被定義的位置開始執(zhí)行程序。VccAT89C51RST8.2k10uF+VccGND圖3.9 上電復(fù)位電路3) 復(fù)位后寄存器的狀態(tài) 當(dāng)系統(tǒng)復(fù)位時(shí),內(nèi)部寄存器的狀態(tài)如表3.1所列,即在SFRS中,除了端口鎖存器、堆棧指針SP和串行口的SBUF外,其
32、余的寄存器全部清0,端口鎖存器的復(fù)位值為0FFH,堆棧指針值為07H,SBUF內(nèi)為不定值。內(nèi)部RAM的狀態(tài)不受復(fù)位的影響,在系統(tǒng)上電時(shí),RAM的內(nèi)容是不定的。表3.1 各特殊功能寄存器的復(fù)位值專用寄存器復(fù)位值專用寄存器復(fù)位值PC0000HTCON00HACC00HB00HPSW00HSP07HDPTR0000HP0-P3FFHIP00000BIE000000BTMOD00HTH000HTL000HTH100HTL100HSCON00HSBUF不定PCON(CHMOS)00000B在本設(shè)計(jì)中復(fù)位電路采用的是上電復(fù)位,即如圖3.9所示3.1.4 單片機(jī)最小系統(tǒng)如圖3.10所示 AT89C51單片機(jī)
33、最小系統(tǒng)復(fù)位和晶振圖圖3.10 單片機(jī)晶振復(fù)位電路圖3.2 語音模塊電路設(shè)計(jì)ISD4004系列語音芯片工作電壓為+3V,單片錄放時(shí)間8到16分鐘,音質(zhì)好,適用于移動(dòng)電話及其他便攜式電子產(chǎn)品中。芯片采用CMOS 技術(shù),內(nèi)含振蕩器、防混淆濾波器、平滑濾波器、音頻放大器、自動(dòng)靜噪及高密度多電平閃爍存儲(chǔ)陳列。芯片設(shè)計(jì)是基于所有操作必須由微控制器控制,操作命令可通過串行通信接口(SPI或Microwire)送入。芯片采用多電平直接模擬量存儲(chǔ)技術(shù), 每個(gè)采樣值直接存儲(chǔ)在片內(nèi)閃爍存儲(chǔ)器中,因此能夠非常真實(shí)、自然地再現(xiàn)語音、音樂、音調(diào)和效果聲,避免了一般固體錄音電路因量化和壓縮造成的量化噪聲和金屬聲。采樣頻率
34、可以是4.0,5.3,6.4或8.0kHz,頻率越低,錄放時(shí)間越長(zhǎng),而音質(zhì)則有所下降,片內(nèi)信息存于閃爍存儲(chǔ)器中,可在斷電情況下保存一百年(典型值),可反復(fù)錄音十萬次。3.2.1 ISD4004芯片內(nèi)部結(jié)構(gòu)ISD4004芯片內(nèi)部邏輯結(jié)構(gòu)構(gòu)成如圖3.11所示圖3.11 ISD4004的內(nèi)部結(jié)構(gòu)3.2.2 芯片引腳描述 1)電源(VCCD,VCCA) 芯片內(nèi)部數(shù)字電路電源正極引腳和模擬電路電源正極引腳。為使噪聲最小,芯片的數(shù)字電路和模擬電路使用不同的電源供電,并且分別引到外封裝的不同管腳上,數(shù)字和模擬電源端最好分別走線,盡可能在靠近供電端處相連,而去耦電容應(yīng)盡量靠近器件。 2)地線(VSSD,VSS
35、A) 芯片內(nèi)部數(shù)字電路電源地線和模擬電路電源地線引腳。芯片的數(shù)字電路和模擬電路也要使用不同的地線。 3)同相模擬輸入(ANA IN+) 錄音信號(hào)的同相輸入端。輸入放大器可用單端或差分驅(qū)動(dòng)。單端輸入時(shí),信號(hào)由耦合電容輸入,最大幅度為峰-峰值32mV,耦合電容和本端的3K電阻輸入阻抗決定了芯片頻帶的低端截止頻率。差分驅(qū)動(dòng)時(shí),信號(hào)最大幅度為峰-峰值16mV。ISD4004芯片實(shí)物圖和引腳圖分別如圖3.12 、圖3.13所示圖3.12 ISD4004實(shí)物圖圖3.13 ISD4004引腳圖 4)反相模擬輸入(ANA IN-) 差分驅(qū)動(dòng)時(shí),這是錄音信號(hào)的反相輸入端。信號(hào)通過耦合電容輸入,最大幅度為峰-峰值
36、16mV。 5)音頻輸出(AUD OUT) 提供音頻輸出,可驅(qū)動(dòng)5K的負(fù)載。 6)片選(SS)此端為低,即向ISD4004芯片發(fā)送指令,兩條指令之間為高電平。 7)串行輸入(MOSI) 此端為串行輸入端,主控制器應(yīng)在串行時(shí)鐘上升沿之前半個(gè)周期將數(shù)據(jù)放到本端,以供輸入。 8)串行輸出(MISO) 此端為串行輸出端,芯片未被選中時(shí),本端呈高阻態(tài)。 9)串行時(shí)鐘(SCLK) 時(shí)鐘輸入端,由主控制器產(chǎn)生,用于同步MOSI 和MISO的數(shù)據(jù)傳輸。數(shù)據(jù)在SCLK上升沿鎖存到芯片,在下降沿移出芯片。 10)中斷() 本端為漏極開路輸出。芯片在任何操作(包括快進(jìn))中檢測(cè)到EOM或OVF時(shí),本端變低并保持。中斷
37、狀態(tài)在下一個(gè)SPI周期開始時(shí)清除。中斷狀態(tài)也可用RINT指令讀?。∣VF標(biāo)志指示芯片的錄/放操作已到達(dá)存儲(chǔ)器的末尾;EOM標(biāo)志只在放音中檢測(cè)到內(nèi)部的EOM標(biāo)志時(shí),此狀態(tài)位才置1)。 11)行地址時(shí)鐘(RAC) 漏極開路輸出。每個(gè)RAC周期表示芯片存儲(chǔ)器的操作進(jìn)行了一行(ISD4004系列中的存儲(chǔ)器共2400行)。該信號(hào)保持高電平175ms,低電平25ms。快進(jìn)模式下,RAC 218.75s是高電平,31.25s為低電平。該端可用于存儲(chǔ)管理技術(shù)。 12)外部時(shí)鐘(XCLK) 本端內(nèi)部有下拉元件。芯片內(nèi)部的采樣時(shí)鐘在出廠前已調(diào)校,誤差在1%以內(nèi)。商業(yè)級(jí)芯片在整個(gè)溫度和電壓范圍內(nèi), 頻率變化在2.2
38、5%以內(nèi)。工業(yè)級(jí)芯片在整個(gè)溫度和電壓范圍內(nèi),頻率變化在4%以內(nèi),此時(shí)建議使用穩(wěn)壓電源。若要求更高精度,可從本端輸入外部時(shí)鐘。由于內(nèi)部的防混淆及平滑濾波器已設(shè)定,故上述推薦的時(shí)鐘頻率不應(yīng)改變。輸入時(shí)鐘的占空比無關(guān)緊要,因內(nèi)部首先進(jìn)行了分頻。在不外接時(shí)鐘時(shí),此端必須接地。13)自動(dòng)靜噪(AM CAP) 當(dāng)錄音信號(hào)電平下降到內(nèi)部設(shè)定的某一閾值以下時(shí),自動(dòng)靜噪功能使信號(hào)衰弱,這樣有助于濾除無信號(hào)(靜音)時(shí)的噪聲。通常本端對(duì)地接1F的電容,構(gòu)成內(nèi)部信號(hào)電平峰值檢測(cè)電路的一部分。檢出的峰值電平與內(nèi)部設(shè)定的閾值作比較,決定自動(dòng)靜噪功能的翻轉(zhuǎn)點(diǎn)。大信號(hào)時(shí),自動(dòng)靜噪電路不衰減,靜音時(shí)衰減6dB7。1F 的電容也
39、影響自動(dòng)靜噪電路對(duì)信號(hào)幅度的響應(yīng)速度。本端接VCCA則禁止自動(dòng)靜噪。3.2.3 ISD4004芯片使用說明 1)串行外設(shè)接口 ISD4000系列語音芯片工作于SPI串行接口。SPI協(xié)議是一個(gè)同步串行數(shù)據(jù)傳輸協(xié)議,設(shè)定微控制器的SPI移位寄存器在SCLK的下降沿將數(shù)據(jù)送至MISO引腳。以ISD4004為例,協(xié)議的具體內(nèi)容如下:所有串行數(shù)據(jù)傳輸開始于下降沿。在傳輸期間必須保持低電平,在兩條指令之間則保持高電平。數(shù)據(jù)在時(shí)鐘上升沿移入,在下降沿移出。變低,輸入指令和地址后,ISD4004才能開始錄/放操作。指令格式是(八位控制碼)加(十六位地址碼)。ISD4004的任何操作如果遇到EOM或OVF,則產(chǎn)
40、生一個(gè)中斷,該中斷狀態(tài)在下一個(gè)SPI周期開始時(shí)被清除。使用“讀”指令使中斷狀態(tài)位移出ISD4004的MISO引腳時(shí),控制及地址數(shù)據(jù)也應(yīng)同步從MOSI端移入。因此,要注意移入的數(shù)據(jù)是否與器件當(dāng)前進(jìn)行的操作兼容。當(dāng)然,也允許在一個(gè)SPI周期里,同時(shí)執(zhí)行讀狀態(tài)和開始新的操作(即新移入的數(shù)據(jù)與器件當(dāng)前的操作可以不兼容)。所有操作在運(yùn)行位(RUN)置1時(shí)開始,置0時(shí)結(jié)束。所有指令都在SS端上升沿開始執(zhí)行。 2)信息快進(jìn) 用戶不必知道信息的確切地址就能快進(jìn)跳過一條信息。信息快進(jìn)只用于放音模式,放音速度是正常的1600倍,遇到EOM后停止,然后內(nèi)部地址計(jì)數(shù)器1,指向下一條信息的開始處。 3)上電順序 器件延
41、時(shí)TPUD(8KHz采樣時(shí),約為25ms)后才能開始操作。因此,用戶發(fā)完上電指令后,必須等待TPUD,才能發(fā)出下一條操作指令。例如,從00處放音,應(yīng)遵循如下時(shí)序:發(fā)POWER UP命令;等待TPUD(上電延時(shí));發(fā)地址值為00的SET PLAY命令;發(fā)PLAY命令。器件會(huì)從00地址開始放音,當(dāng)出現(xiàn)EOM時(shí),立即中斷,停止放音。如果從00處錄音,則按以下時(shí)序:發(fā)POWER UP指令;等待TPUD(上電延時(shí));發(fā)POWER UP命令;等待2倍TPUD;發(fā)地址值為00的 SET REC命令;發(fā)REC命令。器件便從00地址開始錄音,一直到出現(xiàn)OVF(存儲(chǔ)器末尾)時(shí),錄音停止。 4)指令碼表3.2 IS
42、D4004的指令碼指令控制碼操作POWERUP00100 xxx上電:等待TPUD后可以工作SETPLAY11100 xxx從指定地址開始放音PLAY11110 xxx從當(dāng)前地址開始放音SETREC10100 xxx從指定地址開始錄音REC10110 xxx從當(dāng)前地址開始錄音SETMC11101xxx從當(dāng)前地址開始快進(jìn)MC11111xxx執(zhí)行快進(jìn),直到EOMSTOP0 x110 xxx停止當(dāng)前操作STOPWRDN0 x01xxxx停止當(dāng)前操作并掉電RINT0 x110 xxx讀狀態(tài)OVF和EOM 5)SPI端口的控制位MOSIMISOOOC3C4XC0C2OVFEOMP0P15000000C1
43、XX快進(jìn)模式操作是否使用指令地址電源控制錄/放模式允許/禁止操作圖3.14 ISD4004的SPI控制位6) SPI控制寄存器 SPI控制寄存器控制器件的每個(gè)功能,如錄音、放音、信息檢索(快進(jìn))、上電/掉電、開始/停止操作、忽略地址指針等。表3.2 ISD4004的SPI控制寄存器控制位值功能控制位值功能RUN10允許/禁止操作開始停止PU10電源控制上電掉電P/R10錄/放模式放音錄音IAB10是否使用指令地址忽略輸入地址寄存器內(nèi)容使用輸入地址寄存器內(nèi)容MC10快進(jìn)模式允許禁止P15-P0行指針寄存器輸出A15-A0輸入地址寄存器注:IAB置0時(shí),錄/放操作從A9A0地址開始為了能連貫地錄/
44、放到后續(xù)的存儲(chǔ)空間,在操作到達(dá)該行末之前,應(yīng)發(fā)出第二個(gè)SPI指令將IAB置1,否則器件會(huì)在同一地址上反復(fù)循環(huán)。這個(gè)特點(diǎn)對(duì)語音提示功能很有用。RAC引腳和IAB位可用于信息管理。SPI端口簡(jiǎn)單框圖如圖3.15所示:XXX輸入移位寄存器C4C0MOSI選擇邏輯字節(jié)行計(jì)數(shù)器輸出移位寄存器EOMOVFMISOA15A0P15P0圖3.15 ISD4004的SPI端口3.2.4 ISD4004與外圍設(shè)備的連接語音芯片ISD4004主要與三部分外圍設(shè)備連接,即單片機(jī)控制電路、語音錄入電路和語音播放電路。單片機(jī)的P1.0、P1.1和P1.2引腳接獨(dú)立按鍵,控制語音芯片的放音過程;P1.3引腳經(jīng)電阻與控制外部
45、語音錄入和語音播放電路接通與否的三極管的基極相連;P1.4引腳接片選端SS,控制ISD4004選通與否;P1.5引腳接串行輸入MOSI,經(jīng)此讀入放音地址;P1.7引腳接串行時(shí)鐘SCLK;兩芯片中斷口相連,以收發(fā)中斷信號(hào)。同相模擬輸入(ANA IN+)和反相模擬輸入(ANA IN-)與錄音電路相連,通過話筒錄制各站信息存儲(chǔ)于芯片內(nèi)部以供播放時(shí)應(yīng)用。音頻功率放大器LM386驅(qū)動(dòng)音箱組成放音電路,與音頻輸出端(AUD OUT)相連。另外,發(fā)光二極管接于電源通路,可以顯示語音芯片工作情況8。ISD4004與外圍設(shè)備的連接如圖3.16所示:3.3 顯示電路模塊設(shè)計(jì)液晶顯示器LCD(Liquid Crys
46、tal Display)廣泛應(yīng)用于微型計(jì)算機(jī)系統(tǒng)中,與LED相比,具有功率低,抗干擾能力強(qiáng),體積小,價(jià)格低廉等優(yōu)點(diǎn)。另外,LCD在大小和形狀上更加靈活,接口簡(jiǎn)單,不但可以顯示數(shù)字、字符,而且可以顯示文字和圖形。字符和數(shù)字的簡(jiǎn)單顯示,不能滿足圖形曲線和文字顯示的要求。點(diǎn)陣式LCD不僅可以顯示字符、數(shù)字,還可以顯示各種圖形、曲線及文字,并且可以實(shí)現(xiàn)屏幕上下左右滾動(dòng)、動(dòng)畫、分區(qū)開窗口、反轉(zhuǎn)、閃爍等功能,用途十分廣泛?,F(xiàn)在,隨著液晶技術(shù)的突破,液晶顯示器的質(zhì)量有了很大的提高,品種也在不斷推陳出新,不但有各種規(guī)模的黑白液晶顯示器,還有絢麗多彩的彩色液晶顯示器。在點(diǎn)陣式液晶顯示器中,把控制驅(qū)動(dòng)電路與液晶點(diǎn)
47、陣集成在一起,組成一個(gè)顯示模組,可與八位微處理器接口直接連接,不但使用方便,而且價(jià)格也比較便宜。TH12864液晶顯示模組是12864點(diǎn)陣的文字圖形型液晶顯示模組,內(nèi)置國(guó)標(biāo)GB2312碼簡(jiǎn)體中文字庫(kù)(1616點(diǎn)陣)、ASCII碼字符集(816點(diǎn)陣)和64256點(diǎn)陣顯示RAM(GDRAM繪圖區(qū)域);可與CPU直接接口,提供兩種界面來連接微處理機(jī)(八位并行及串行連接方式);具有光標(biāo)顯示、畫面移位和睡眠模式等多種功能。圖3.16 ISD4004與外圍設(shè)備的連接電路圖3.3.1 液晶模組內(nèi)部結(jié)構(gòu)組成圖3.17 液晶模組的組成結(jié)構(gòu)TH12864使用ST7920作為行驅(qū)動(dòng)器,同時(shí)使用ST7921作為列驅(qū)動(dòng)
48、器。液晶顯示中應(yīng)盡量避免一個(gè)字符一半在左半屏顯示,另一半在右半屏顯示的情況。由于TH12864液晶顯示器是一種帶有輸出驅(qū)動(dòng)的完整的液晶顯示器,八位微處理器可直接與其相連,對(duì)液晶屏進(jìn)行行、列驅(qū)動(dòng)12。3.3.2 引腳功能 TH12864液晶顯示器有20個(gè)管腳,分電源線、數(shù)據(jù)線和控制線。其詳細(xì)功能如下: 1)電源部分VDD 電源正極,通常接+5V。VSS 電源負(fù)極,接-5V。為了簡(jiǎn)化電路,可直接接地。V0 電源控制端,用來調(diào)節(jié)顯示屏灰度。調(diào)節(jié)該端的電壓,可以改變顯示屏字符、圖形的顏色深淺。 2)數(shù)據(jù)線DB0DB7 數(shù)據(jù)總線,雙向。 3)控制信號(hào)PSB 并口/串口選擇信號(hào),接高電平時(shí)選擇并口,接低電
49、平時(shí)選擇串口。模塊上一般都有跳線方式將其接高或接低,用戶可以不處理(事先須聲明是用并口還是串口);也可以選擇不在模塊上處理,而由用戶自己選擇并口還是串口。 RS(CS) 寄存器選擇信號(hào),高電平時(shí)為數(shù)據(jù)操作,低電平時(shí)為寫指令或讀狀態(tài)(串行方式下為片選信號(hào),低電平有效)。 R/W(SID) 讀/寫選擇信號(hào),高電平為讀選通,低電平為寫選通(串行方式下作數(shù)據(jù)線使用)。 E(SCLK) 讀/寫使能信號(hào),在E的下降沿,數(shù)據(jù)被鎖存(寫)入ST7921;在E為高電平期間,數(shù)據(jù)被讀出(串行方式下作時(shí)鐘輸入)。 RST 復(fù)位信號(hào),低電平有效。當(dāng)其有效時(shí),關(guān)閉液晶顯示,使顯示起始行為0??膳c單片機(jī)相連,由單片機(jī)控制
50、;也可直接接VDD,使之不起作用。 BLA 背光源正極(LED+5V)。 BLK 背光源負(fù)極(LED0V)。3.3.3 液晶模組與單片機(jī)的連接圖3.18 液晶模組與單片機(jī)的連接電路圖3.4 鍵盤接口電路設(shè)計(jì) 鍵盤是若干按鍵的集合,是向系統(tǒng)提供操作人員干預(yù)命令及數(shù)據(jù)的接口設(shè)備。鍵盤可分為編碼鍵盤和非編碼鍵盤兩種類型。前者能自動(dòng)識(shí)別按下的鍵并產(chǎn)生相應(yīng)代碼,以并行或串行方式發(fā)送給CPU。它使用方便,接口簡(jiǎn)單,響應(yīng)速度快,但需要專用的硬件電路。后者則通過軟件來確定按鍵并計(jì)算鍵值。這種方法雖然沒有編碼鍵盤速度快,但它不需要專用的硬件支持,因此得到了廣泛的應(yīng)用。鍵盤是計(jì)算機(jī)應(yīng)用系統(tǒng)中一個(gè)重要的組成部分,設(shè)
51、計(jì)時(shí)必須解決下述一些問題。3.4.1 按鍵的確認(rèn) 鍵盤實(shí)際上是一組按鍵開關(guān)的集合,其中每一個(gè)按鍵就是一個(gè)開關(guān)量輸入裝置。鍵的閉合與否,取決于機(jī)械彈性開關(guān)的通、斷狀態(tài)。反應(yīng)在電壓上就是呈現(xiàn)出高電平或低電平,例如高電平表示斷開,低電平表示閉合。所以,通過檢測(cè)電平狀態(tài)(高或低),便可確定按鍵是否已被按下。為了縮小整個(gè)系統(tǒng)的規(guī)模,簡(jiǎn)化硬件線路,我們希望設(shè)置最少量的按鍵,獲得更多的操作控制功能。3.4.2 重鍵與連擊的處理 實(shí)際按鍵操作中,若無意中同時(shí)或先后按下兩個(gè)以上的鍵,系統(tǒng)確認(rèn)哪個(gè)鍵操作是有效的,完全由設(shè)計(jì)者的意志決定。如視按下時(shí)間最長(zhǎng)者為有效鍵,或認(rèn)為最先按下的鍵為當(dāng)前按鍵,也可以將最后釋放的鍵
52、看成是輸入鍵。不過微型計(jì)算機(jī)控制系統(tǒng)畢竟資源有限。交互能力不強(qiáng),通??偸遣捎脝捂I按下有效,多鍵同時(shí)按下無效的原則(若系統(tǒng)沒有復(fù)合鍵,當(dāng)然應(yīng)該另當(dāng)別論)。 有時(shí),由于操作人員按鍵動(dòng)作不夠熟練,會(huì)使一次按鍵產(chǎn)生多次擊鍵的效果,即重鍵的情況。為了排除重鍵的影響,編制程序時(shí),可以將鍵的釋放作為按鍵的結(jié)束。等鍵釋放電平后再轉(zhuǎn)去執(zhí)行相應(yīng)的功能程序,以防止一次擊鍵多次執(zhí)行的錯(cuò)誤發(fā)生。3.4.3 按鍵防抖動(dòng)技術(shù) 鍵盤,作為向系統(tǒng)提供操作人員的干預(yù)命令的接口,以其特定的按鍵序列代表著各種確定的操作命令。所以,準(zhǔn)確無誤地辨認(rèn)每個(gè)鍵的動(dòng)作及其所處的狀態(tài),是系統(tǒng)能否正常工作的關(guān)鍵。 多數(shù)鍵盤的按鍵均采用機(jī)械彈性開關(guān)。
53、一個(gè)電信號(hào)通過機(jī)械觸點(diǎn)的斷開、閉合過程,完成高、低電平的切換。由于機(jī)械觸點(diǎn)的彈性作用,一個(gè)按鍵開關(guān)在閉合及斷開的瞬間必然伴隨有一連串的抖動(dòng)。抖動(dòng)過程的長(zhǎng)短由按鍵的機(jī)械特性決定,一般為1020ms。 為了使CPU對(duì)一次按鍵動(dòng)作只確認(rèn)一次,必須排除抖動(dòng)的影響,可以從硬件及軟件兩個(gè)方面著手解決。1)硬件防抖動(dòng)技術(shù) 通過硬件電路消除按鍵過程中抖動(dòng)的影響是一種廣為才用的措施。這種做法,工作可靠,且節(jié)省機(jī)時(shí)。下面介紹兩種硬件防抖動(dòng)電路。濾波防抖動(dòng)電路 利用RC積分電路對(duì)干擾脈沖的吸收作用,選擇好電路的時(shí)間常數(shù),就能在按鍵抖動(dòng)信號(hào)通過此濾波電路時(shí),消除抖動(dòng)的影響。圖3.19 濾波防抖動(dòng)電路 當(dāng)鍵K未按下時(shí),
54、電容C兩端電壓均為0,非門輸出為1。當(dāng)K按下時(shí),由于C兩端電壓不可能產(chǎn)生突變。盡管在觸點(diǎn)接觸過程中可能出現(xiàn)抖動(dòng),只要適當(dāng)選取R1、R2和C的值,即可保證電容C兩端的充電電壓波動(dòng)不超過非門的開啟電壓(TTL為0.8V),非門的輸出將維持高點(diǎn)平。同理,當(dāng)觸點(diǎn)K斷開時(shí),由于電容C經(jīng)過電阻R2放電,C兩端的放電電壓波動(dòng)不會(huì)超過非門的關(guān)閉電壓,因此,非門的輸出也不會(huì)改變??傊?,只要R1、R2和C的時(shí)間常數(shù)選取得當(dāng),確保電容C由穩(wěn)態(tài)電壓充電到開啟電壓,或放電到關(guān)閉電壓的延遲時(shí)間等于或大于10ms,該電路就能消除抖動(dòng)的影響。雙穩(wěn)態(tài)防抖動(dòng)電路 用兩個(gè)與非門構(gòu)成一個(gè)RS觸發(fā)器,即可構(gòu)成雙穩(wěn)態(tài)防抖動(dòng)電路。圖3.2
55、0 雙穩(wěn)態(tài)防抖動(dòng)電路 設(shè)按鍵K未按下時(shí),鍵K與鍵A端(ON)接通。此時(shí),RS觸發(fā)器的Q端為高電平1,致使Q端為低電平0。此信號(hào)引致1#與非門的輸入端,將其鎖住,使其固定輸出為1。每當(dāng)開關(guān)K被按動(dòng)時(shí),由于機(jī)械開關(guān)具有彈性,在A端將形成一連串的抖動(dòng)波形。而Q端在K到達(dá)B端之前始終為0。這時(shí),無論A處出現(xiàn)怎樣的電壓(0或1),Q端恒為1.只有當(dāng)K到達(dá)B端,使B端為0,RS觸發(fā)器產(chǎn)生翻轉(zhuǎn),Q變?yōu)楦唠娖?,?dǎo)致Q降為0,并鎖住門2,使其輸出恒為1。此時(shí),即使B處出現(xiàn)抖動(dòng)波形,也不會(huì)影響Q端的輸出,從而保證Q端恒為0。同理,在釋放鍵的過程中,只要一接通A,Q端就升為1。只要開關(guān)K不再與B端接觸,雙穩(wěn)態(tài)電路的
56、輸出將維持不變。圖3.21 鍵盤接口電路在鍵盤接口中,開關(guān)SW1接P1.0口,控制語音播放和文字顯示;開關(guān)SW2接P1.1口,控制提示順序;開關(guān)SW3接P1.2口,用來跳過某站的提示,以實(shí)現(xiàn)播放過程的微調(diào)。2)軟件防抖動(dòng)方法 若采用硬件防抖動(dòng)電路,則N個(gè)鍵就必須配有N個(gè)防抖動(dòng)電路。因此,當(dāng)鍵的個(gè)數(shù)比較多時(shí),硬件防抖動(dòng)將無法勝任。在這種情況下,可以采用軟件的方法進(jìn)行防抖動(dòng)。當(dāng)?shù)谝淮螜z測(cè)到有鍵按下時(shí),先用軟件延時(shí)(1020ms),而后再確認(rèn)該鍵電平是否仍維持閉合狀態(tài)電平。若保持閉合狀態(tài)電平,則確認(rèn)此鍵確已按下,從而消除了抖動(dòng)的影響。3.5 供電電路設(shè)計(jì)公交車上所使用的電源電壓為24V,而AT89C
57、51芯片的工作電壓為5V,所以需要將24V的電壓轉(zhuǎn)換成5V電壓。設(shè)計(jì)中采用了三端固定正電壓集成穩(wěn)壓器7805,來得到+5V穩(wěn)定電壓。電壓變換電路如圖3.22所示。 集成穩(wěn)壓器是指將不穩(wěn)定的直流電壓變?yōu)榉€(wěn)定的直流電壓的集成電路。由于集成穩(wěn)壓器具有穩(wěn)壓精度高、工作穩(wěn)定可靠、外圍電路簡(jiǎn)單、體積小、重量輕等顯箸優(yōu)點(diǎn),在各種電源電路中得到了普遍的應(yīng)用。常用的集成穩(wěn)壓器有:金屬圓形封裝、金屬菱形封裝、塑料封裝、帶散熱板塑封、扁平式封裝、雙列直插式封裝等。在電子制用中應(yīng)用較多的是三端固定輸出穩(wěn)壓器。 78xx系列集成穩(wěn)壓器是常用的固定正輸出電壓的集成穩(wěn)壓器,輸出電壓有5V、6V、9V、12V、15V、18V
58、、24V等規(guī)格,最大輸出電流為1.5A。它的內(nèi)部含有限流保護(hù)、過熱保護(hù)和過壓保護(hù)電路,采用了噪聲低、溫度漂移小的基準(zhǔn)電壓源,工作穩(wěn)定可靠。根據(jù)輸出電流值的不同,選用不同系列的芯片,當(dāng)電流小于100mA時(shí),可以選用78L00系列;當(dāng)電流在0.5A以內(nèi)時(shí),可選用78M00系列;當(dāng)電流在1.5A以內(nèi),應(yīng)選用7800系列的芯片。7805的最大輸出電流為1.5A。 圖3.22 電壓變換電路4 軟件設(shè)計(jì)4.1 主程序流程圖開始系統(tǒng)初始化開始錄音按鍵值顯示提示語延時(shí)LCD顯示下一站名報(bào)下一站名LCD顯示發(fā)送語音報(bào)站名送地址錄音模式報(bào)站模式Mode=1顯示開機(jī)畫面延時(shí)讀取按鍵值顯示廣告N按鍵按下N Y按鍵按下YYY圖4.1 主程序流程圖4.2 語音提示應(yīng)用實(shí)現(xiàn)4.1.1 放音程序開始執(zhí)行上電操作指令延遲等待(25ms)知道上電結(jié)束N上電延遲時(shí)間到Y(jié)段間延遲執(zhí)行SET PLAY 命令設(shè)置播放地址 執(zhí)行PLAY命令NINT有效YY繼續(xù)播放下一段 N結(jié)束執(zhí)行STOP 命令 圖4.2 語音芯片放音程序流程圖4.1.2 錄音程序開始延遲等待(25ms)直到上電結(jié)束執(zhí)行上電操作命令(POWER UP)執(zhí)行SET REC命令設(shè)置錄音地址延遲二倍上電時(shí)間N上電延遲時(shí)間到Y(jié)執(zhí)行REC命令執(zhí)行上電操作命令(POWER UP) 執(zhí)行STOP WRDN命令
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 植樹問題講課
- 小小圖書館賈世喜
- 小班數(shù)學(xué):變得一樣多
- 蘇教版三年級(jí)數(shù)學(xué)上冊(cè)教學(xué)ppt課件58:解決問題的策略復(fù)習(xí)
- 小學(xué)科學(xué)六下《拓展與應(yīng)用》-公開課一等獎(jiǎng)ppt課件
- 高中英語人教版選修七Unit-2-Robots-ppt課件
- 第九章長(zhǎng)期負(fù)債課件
- 皮膚免疫系統(tǒng)課件
- 辦公樓施工現(xiàn)場(chǎng)消防安全管理要求規(guī)范課件
- freeroi在功能磁共振roi分析中的應(yīng)用
- 《永遇樂·京口北固亭懷古》用典講解課件
- 《秋天的雨》微課課件
- 護(hù)患溝通技巧-課件
- 《高等數(shù)學(xué)B》第十章___微分方程與差分方程__第6節(jié)__差分與差分方程的概念_、……課件
- 英語(人教版)九年級(jí)總復(fù)習(xí)題型訓(xùn)練補(bǔ)全對(duì)話(含最新原創(chuàng)題)課件