版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 本科畢業(yè)設(shè)計</b></p><p><b> ?。?012屆)</b></p><p> 題目語音錄放系統(tǒng)的設(shè)計</p><p> 學(xué)院</p><p> 專業(yè)</p><p> 班級</p><p> 學(xué)號</p
2、><p> 學(xué)生姓名</p><p> 指導(dǎo)教師</p><p> 完成日期2012年5月</p><p><b> 摘 要</b></p><p> 本論文主要實現(xiàn)語音錄放系統(tǒng)的設(shè)計。語音錄放系統(tǒng)主要包括單片機控制模塊、語音采集模塊、語音處理模塊、信號放大模塊,其中單片機控制模塊是整個系統(tǒng)設(shè)計的
3、關(guān)鍵。在語音的錄放過程中,單片機通過SPI通信方式與語音模塊進行通訊,來實現(xiàn)語音的錄音與播放。由于每段錄音都對應(yīng)著不同的地址,因此在播放錄音時,需要發(fā)送需要播放的地址即可播放。</p><p> 語音錄放系統(tǒng)的信號處理過程主要包括語音的采集、信號的放大和語音的濾波。語音經(jīng)過駐極體傳感器,即麥克風,把聲波信號轉(zhuǎn)換成電信號。傳感器采集的電信號進過放大電路,放大一定倍數(shù),經(jīng)濾波、耦合之后送至語音模塊。語音模塊對連續(xù)變
4、化的語音信號進行采樣,抽取其中的語音信號電平,直接存儲在語音芯片ISD4004中,因此使得語音自然真實。當語音播放時,需要在語音芯片的輸出段加一個帶通濾波器,以濾除音頻帶寬以外的信號,從而減少雜音的干擾。STC89C52單片機的程序,使用keil編譯程序進行設(shè)計和調(diào)試完成,其主要功能是控制語音模塊,以及液晶顯示模塊。</p><p> 關(guān)鍵詞:微控制器;錄音放音;ISD4004; </p><
5、;p><b> ABSTRACT</b></p><p> The main aim of this paper is to realize the function of voice recording and playback system. The key to the overall system design of the voice recording system w
6、hich includes a single-chip control module, voice acquisition module, voice processing module, signal amplification module, is MCU control module. In the voice playback process, the microcontroller communicates through S
7、PI communication voice module, thus realizing voice recording and playback. Each recording corresponds to a different </p><p> The signal processing of the voice recording system includes speech acquisition
8、, signal amplification and voice filter. Acoustic signal is converted into electrical signals through electrets sensor, which is also called microphone. The sensor signals will be amplified after flow through the amplify
9、ing circuit. Finally it will be send to voice module after filtering, coupling. Continuous acoustic signal is sampled by the voice module, which takes one of the voice signal level, directly stores it </p><p&g
10、t; Key words:Microprocessor; Voice Recording and playing; ISD4004</p><p><b> 目錄</b></p><p><b> 1 引言1</b></p><p><b> 2 概述2</b></p>&
11、lt;p> 2.1 語音錄放系統(tǒng)概述2</p><p> 2.2 本設(shè)計方案的論證3</p><p> 2.2.1 系統(tǒng)的單片機選擇論證3</p><p> 2.2.2 系統(tǒng)的液晶選擇3</p><p> 2.2.3 系統(tǒng)的濾波電路的選擇3</p><p> 2.3 研發(fā)方向和技術(shù)關(guān)鍵
12、3</p><p> 2.4 主要技術(shù)指標3</p><p><b> 3硬件設(shè)計5</b></p><p> 3.1 硬件的總體設(shè)計5</p><p> 3.2駐極體傳聲器5</p><p> 3.3信號放大電路6</p><p> 3.4 語音
13、信號功率放大電路8</p><p> 3.5 ISD4004語音芯片介紹9</p><p> 3.5.1 芯片性能簡述和引腳圖9</p><p> 3.5.2 ISD4004芯片主要引腳描述10</p><p> 3.5.3 SPI協(xié)議11</p><p> 3.6濾波電路的設(shè)計與方案論證13&l
14、t;/p><p> 3.7 基于matlab軟件對濾波前后語音的分析15</p><p><b> 4軟件設(shè)計22</b></p><p> 4.1 總體方案22</p><p> 4.2 程序流圖22</p><p> 4.3 模塊說明24</p><p
15、> 4.3.1 ISD4004驅(qū)動程序24</p><p> 4.3.2 1602液晶底層驅(qū)動26</p><p> 4.3.3菜單選擇程序28</p><p> 4.3.4 錄音函數(shù)29</p><p> 4.3.5放音函數(shù)30</p><p> 4.3.6 播放方式選擇32</p
16、><p><b> 5制作與調(diào)試34</b></p><p> 5.1 硬件電路的布線與焊接34</p><p> 5.1.1 總體特點34</p><p> 5.1.2 Altium designer軟件畫PCB34</p><p> 5.1.3焊接34</p>
17、<p> 5.2 調(diào)試34</p><p> 5.2.1 硬件調(diào)試34</p><p> 5.2.2 軟件調(diào)試35</p><p> 5.3 系統(tǒng)的各個工作狀態(tài)下實物照片圖36</p><p><b> 6 結(jié)論38</b></p><p><b>
18、致謝39</b></p><p><b> 參考文獻40</b></p><p><b> 附錄41</b></p><p><b> 1 引言</b></p><p> 從20世紀30年代初到50年代初,有聲電影主要應(yīng)用光學(xué)錄音方法。雖然在有聲電影初
19、期曾使用過唱片配音的方法,光學(xué)錄音是以感光材料為媒介記錄聲音的方法。但用這種方法錄制的影片為數(shù)不多,時間很短。光學(xué)錄音進入電影領(lǐng)域后,在世界范圍內(nèi)掀起了從無聲電影轉(zhuǎn)入有聲電影的高潮,推動了電影事業(yè)的大發(fā)展。40年代末50年代初磁性錄音也進入了電影領(lǐng)域,但大量拷貝仍以光學(xué)錄音為主;80年代磁性錄音和光學(xué)錄音兩種方法并用。</p><p> 隨著經(jīng)濟快速發(fā)展,人民生活水平的不斷提高,現(xiàn)在的人已近離不開音樂,而且對聽
20、覺要求越來越高。計算機技術(shù)和數(shù)字電子的發(fā)展,現(xiàn)在的語音系統(tǒng)有了重大的飛躍,由以前的體積較大單放機、復(fù)讀機發(fā)展到了音質(zhì)較好、體積小、容量大的MP3、MP4、手機,可以說語音技術(shù)已經(jīng)相當成熟了。</p><p> 傳統(tǒng)的磁帶語音錄放系統(tǒng)因其體積大,使用不便,在電子與信息處理的使用中受到很多限制。體積小巧,功耗低的數(shù)字化語音存儲與回放系統(tǒng)將完全代替它。自80年代以來,美、日等國的數(shù)字語音技術(shù)的研究工作進入了應(yīng)用階段,
21、相繼研制的大規(guī)模集成電路語音芯片已近供應(yīng)市場,并不斷推出新的產(chǎn)品。數(shù)字語音技術(shù)的應(yīng)用領(lǐng)域十分廣泛,首先是數(shù)字通信系統(tǒng)。當通過數(shù)字通信系統(tǒng)傳送語音信號時,語音數(shù)字化技術(shù)就是必不可少了。發(fā)送端實際上即為語音編碼,接受端為語音合成。在我們的日常生活中,數(shù)字化語音存儲于回放技術(shù)得到了廣泛的應(yīng)用,諸如公交車報站器,采訪筆,MP3播放器,手機等,使得產(chǎn)品的功能強大,淘汰了磁帶錄音的傳統(tǒng)方式,方便了人們的生活,推動了社會進步。</p>
22、<p><b> 2 概述</b></p><p> 2.1 語音錄放系統(tǒng)概述</p><p> 語音錄放系統(tǒng)的工作原理是單片機通過SPI通信模式,來控制語音芯片ISD4004的錄音與播放。此系統(tǒng)一般包括單片機控制模塊、語音的采集模塊,語音的放大模塊、語音處理模塊、濾波模塊、功率放大模塊和顯示模塊。如圖2-1所示,駐極式傳感器把自然界的連續(xù)的聲波信
23、號轉(zhuǎn)化成連續(xù)變化的電信號,由于轉(zhuǎn)換的電信號比較弱,故須經(jīng)過放大電路,放大信號。信號傳遞至語音芯片,語音芯片對連續(xù)的電信號進行采樣,沒有經(jīng)過A/D轉(zhuǎn)換,直接存儲在內(nèi)部的flash中[3]。</p><p> 圖2-1 語音信號處理過程</p><p> 語音的存儲可以采用數(shù)字式的,也可以采用模擬式。采用數(shù)字式的,需要把連續(xù)采樣的語音信號轉(zhuǎn)換成數(shù)字信號,即A/D轉(zhuǎn)換,但在此過程需要遵循奈奎
24、斯特采樣定律。還有一種就是把采用的模擬信號直接存儲在帶有flash的存儲器中,本系統(tǒng)采用直接存儲的方式,ISD4004語音芯片是美國ISD公司制造的一種新款的語音芯片,芯片采用多電平直接模擬量存儲技術(shù),每個采樣值直接存儲在片內(nèi)閃存flash中,因此能夠非常真實、自然地再現(xiàn)語音、音樂、音調(diào)和效果音,避免了一般固體錄音電路因量化和壓縮造成的量化噪音和“金屬音”[4]。</p><p> 語音的錄放系統(tǒng)的應(yīng)用十分廣
25、泛,可以應(yīng)用于通訊設(shè)備、智能儀表、治安報亭、語音報站、語音講解、語音記錄、語音復(fù)讀、智能玩具等領(lǐng)域。本課題的研究,是其他語音錄放方面課題研究的基礎(chǔ),因此具有很好實踐意義。</p><p> 2.2 本設(shè)計方案的論證</p><p> 2.2.1 系統(tǒng)的單片機選擇論證</p><p> 一方面在本系統(tǒng)中,單片機與ISD4004是采用SPI的通信模式,即高速同步
26、串行口,是一種標準的四線同步雙向串行總線。占用端口資源少,單片機只需模擬SPI通信協(xié)議即可控制語音芯片的錄放功能,因此占用單片機內(nèi)部資源少。另一方面,在大學(xué)期間學(xué)習51單片機是學(xué)習其他單片機的基礎(chǔ),因此深入地把51單片機十分有必要。</p><p> 2.2.2 系統(tǒng)的液晶選擇</p><p> 為了實現(xiàn)更多的功能,本系統(tǒng)加入其他外圍的硬件設(shè)備,需要以菜單的形式選擇功能。系統(tǒng)擴展有兩個
27、可選擇的液晶顯示LCD1602和LCD12864,最終采用LCD1602液晶顯示器,原因是其體積小,功耗低,具有背光功能,采用通用接口芯片,兼容性高。</p><p> 2.2.3 系統(tǒng)的濾波電路的選擇</p><p> 考慮到實用性,帶負載能力要比較強,要滿足輸入阻抗應(yīng)足夠高,輸出阻抗應(yīng)夠小;要滿足阻帶衰減頻率-40db/10倍頻程,有兩種考慮方案:一種是用一階濾波器進行級聯(lián),另一種
28、直接采用二階濾波器。本系統(tǒng)中采用第二種。考慮到電路的穩(wěn)定性及增益AV=10,應(yīng)采用有源濾波器。集成有源濾波器有如下優(yōu)點:</p><p> 1、在制作截止頻率或中心頻率較低的濾波器時,可以做到體積小、重量輕、成本低;</p><p> 2、由于采用集成電路,所以受環(huán)境條件(如機械振動、溫度、濕度、化學(xué)因素等)的影響??;</p><p> 3、受電磁干擾的影響小
29、;</p><p> 4、由于采用集成電路,可避免各濾波節(jié)之間的負載效應(yīng)而使濾波器的設(shè)計和計算大簡。</p><p> 2.3 研發(fā)方向和技術(shù)關(guān)鍵</p><p> 研發(fā)方向:本系統(tǒng)主要設(shè)計一個語音錄放系統(tǒng),實現(xiàn)播放錄音中任意段語音。在實際生活中,本系統(tǒng)可以應(yīng)用在汽車倒車系統(tǒng)、家庭安防系統(tǒng)、公交車報站以及醫(yī)院的病房室等應(yīng)用之中。</p><
30、;p> 技術(shù)關(guān)鍵:理解ISD4004語音芯片操作功能的時序圖,內(nèi)部地址構(gòu)架,以及與單片機之間的SPI通信模式。</p><p> 2.4 主要技術(shù)指標</p><p> 用51單片機和語音芯片ISD4004來實現(xiàn)一個語音錄放系統(tǒng)。實現(xiàn)錄音,存儲和放音操作,能錄放50以上中文字,并能錄放隨意組合。放音時能夠清晰、穩(wěn)定。</p><p><b>
31、; 3硬件設(shè)計</b></p><p> 3.1 硬件的總體設(shè)計</p><p> 語音錄放系統(tǒng)主要是通過單片機來控制語音芯片ISD4004來實現(xiàn)語音的錄放的功能。在錄音模式下,語音信號,即聲波信號,通過麥克風,將其轉(zhuǎn)換成電信號。但此時的電信號很微弱,需要經(jīng)放大電路,放大語音信號。由于電路中可能存在高頻分量,信號經(jīng)過帶通濾波器,以濾除語音頻帶以外的噪聲。最后,ISD400
32、4采樣得到的語音信號相對“干凈”。在語音播放的模式下,單片機向ISD4004發(fā)送播放的地址和語音播放指令后,便可以播放相應(yīng)段的語音。為了使播放的語音依然“干凈”,本系統(tǒng)依然設(shè)置了一個濾波電路。[2]由于ISD4004不能驅(qū)動一塊喇叭,需要在濾波電路添加一個功率放大電路,在本系統(tǒng)中,采用的是LM386語音驅(qū)動電路[9]。如圖3-1所示,系統(tǒng)的總體結(jié)構(gòu)框圖。</p><p> 圖3-1 系統(tǒng)的總體結(jié)構(gòu)框圖</
33、p><p> 3.2 駐極體傳聲器</p><p> 效應(yīng)晶體管的柵極上,柵極與源極之間接有一個二極管,如圖3-2所示。當駐極體膜片本身帶有電荷,表面電荷地電量為Q,板極間地電容量為C,則在極頭上產(chǎn)生地電壓U=Q/C,當受到振動或受到氣流地摩擦時,由于振動使兩極板間的距離改變,即電容C改變,而電量Q不變,就會引起電壓的變化,電壓變化的大小,反映了外界聲壓的強弱,這種電壓變化頻率反映了外界聲
34、音的頻率,這就是駐極體傳聲器地工作原理。</p><p> 圖3-2駐極體工作動態(tài)原理圖</p><p><b> 3.3信號放大電路</b></p><p> 由于駐極體轉(zhuǎn)換的電信號只有毫伏級的,應(yīng)該需要將其放大。本系統(tǒng)采用基本共射極放大電路。如圖3-3所示,輸入與輸出回路各接了一個電容,稱為耦合電容,起連接作用,C1連接輸入的語音信號
35、與放大電路,C4連接放大電路與負載,如該電路稱為阻容耦合共射極放大電路。</p><p> 圖3-3阻容耦合共射極放大電路</p><p> 該電路可以等效為直流與交流通路:由于電容有隔直流的作用,即對直流相當于開路,因此,MIC產(chǎn)生的信號源及負載對電路的直流狀態(tài)(即Q點)不產(chǎn)生影響。由此可以畫出放大電路的直流通路與交流通路,分別如圖3-4與3-5所示。對一定頻率范圍內(nèi)的交流信號而言,
36、C1和C4呈現(xiàn)的容抗很小,可以近似認為短路。另外,電源VCC內(nèi)阻很小,對交流信號也可視為短路[5]。由電壓增益的定義得式(3-1):</p><p><b> ?。?-1)</b></p><p> 由上公式計算得出,前級放大電路的放大倍數(shù)是4.6倍,麥克風電信號的幅值約為5mV,放大后的信號幅值約為23mV。</p><p><b&g
37、t; 圖3-4直流通路</b></p><p><b> 圖3-5交流通路</b></p><p> 3.4 語音信號功率放大電路</p><p> LM386是一種音頻集成功放,具有自身功耗低、電壓增益可調(diào)整、電源電壓范圍大、外接元件少和總諧波失真小等優(yōu)點,廣泛應(yīng)用于錄音機和收音機之中。它是美國國家半導(dǎo)體公司生產(chǎn)的音頻功率
38、放大器,主要應(yīng)用于低電壓消費類產(chǎn)品。為使外圍元件最少,電壓增益內(nèi)置為20。輸入端以地位參考,同時輸出端被自動偏置到電源電壓的一半,在6V電源電壓下,它的靜態(tài)功耗僅為24mW,使得LM386特別適用于電池供電的場合。LM386的封裝形式有塑封8引線雙列直插式和貼片式。其雙列直插式封裝如圖3-6所示。</p><p> 圖3-6 LM386直插封裝</p><p> 語音芯片ISD4004
39、輸出的電壓只有毫伏級,難以驅(qū)動揚聲器發(fā)聲。本系統(tǒng)采用采用LM386功率放大器,以提高揚聲器的驅(qū)動能力。有時喇叭放音會出現(xiàn)失真現(xiàn)象,這是可能是運放的增益過高所致,需要在1腳和8腳之間加一個10uF電容或串聯(lián)一個10K電位器調(diào)整一下。本系統(tǒng)的功率放大電路圖如圖3-7所示。圖中P2為10K的電位器,總的功率增益為34dB。 </p><p> 圖3-7語音輸出級功率放大電路</p><p>
40、 3.5 ISD4004語音芯片介紹</p><p> 3.5.1 芯片性能簡述和引腳圖</p><p> ISD系列語音芯片是美國ISD公司推出的產(chǎn)品。該系列芯片采用多電平直接模擬存儲(Chip Corder)專利技術(shù),聲音不需要A/D轉(zhuǎn)換和壓縮,每個采樣直接存儲在片內(nèi)的閃爍存儲器中,避免了A/D轉(zhuǎn)換的誤差;能夠真實、自然地還原語音、音樂及效果聲;避免了一般固體錄音電路量化和壓縮造成
41、的量化噪聲和金屬聲[7]。ISD4000系列采用CMOS技術(shù),內(nèi)含晶體振蕩器、防混疊濾波器、平滑濾波器、自動靜噪、音頻功率放大器及高密度多電平閃爍存儲陣列等,只需要很少的外圍器件即可構(gòu)成一個完整的語音錄放系統(tǒng)。它的操作命令通過串行通信接口(SPI)或Microwire送入;采樣頻率可為4.0 Hz、5.3 Hz、6.4 Hz、8.0 Hz,頻率越低,錄放時間越長,但音質(zhì)會有所下降;片內(nèi)信息存于閃爍存儲器中,可在斷電情況下保存100年(典
42、型值),反復(fù)錄音10萬次;器件工作電壓3 V,工作電流25~30 mA,音質(zhì)好,適用于移動電話及其他便攜式電子產(chǎn)品[8]。本設(shè)計使用的芯片型號為ISD4004-08,單片錄放時間為8分鐘。其芯片的引腳圖如圖3-8所示。</p><p> 圖3-8 ISD4004語音芯片引腳圖</p><p> 3.5.2 ISD4004芯片主要引腳描述</p><p> ?。?/p>
43、1)電源:(VCCA,VCCD) 為使噪聲最小,芯片的模擬和數(shù)字電路使用不同的電源總線,并且分別引到外封裝的不同管腳上,模擬和數(shù)字電源端最好分別走線,盡可能在靠近供電端處相連,而去耦電容應(yīng)盡量靠近器件。</p><p> ?。?)地線:(VSSA,VSSD) 芯片內(nèi)部的模擬和數(shù)字電路也使用不同的地線。</p><p> ?。?)同相模擬輸入(ANA IN+) 這是錄音信號的同相輸入端。
44、輸入放大器可用單端或差分驅(qū)動。單端輸入時,信號由耦合電容輸入,最大幅度為峰峰值32mV,耦合電容和本端的3KΩ電阻輸入阻抗決定了芯片頻帶的低端截止頻率。差分驅(qū)動時,信號最大幅度為峰峰值 16mV,為 ISD33000 系列相同。</p><p> ?。?)反相模擬輸入(ANA IN-) 差分驅(qū)動時,這是錄音信號的反相輸入端。信號通過耦合電容輸入,最大幅度為峰峰值16mV音頻輸出(AUDOUT) 提供音頻輸出,可驅(qū)
45、動 5KΩ的負載。</p><p> ?。?)片選(SS)此端為低,即向該 ISD4004 芯片發(fā)送指令,兩條指令之間為高電平。</p><p> ?。?)串行輸入(MOSI),此端為串行輸入端,主控制器應(yīng)在串行時鐘上升沿之前半個周期將數(shù)據(jù)放到本端,供ISD輸入。</p><p> ?。?)串行輸出(MISO) ISD的串行輸出端。ISD未選中時,本端呈高阻態(tài)。&l
46、t;/p><p> (8)串行時鐘(SCLK)ISD的時鐘輸入端,由主控制器產(chǎn)生,用于同步MOSI和MISO的數(shù)據(jù)傳輸。數(shù)據(jù)在 SCLK上升沿鎖存到ISD,在下降沿移出 ISD。</p><p> ?。?)中斷(/INT)本端為漏極開路輸出。ISD 在任何操作(包括快進)中檢測到 EOM 或 OVF 時,本端變低并保持。中斷狀態(tài)在下一個 SPI 周期開始時清除。中斷狀態(tài)也可用 RINT 指令
47、讀取。OVF 標志----指示 ISD 的錄、放操作已到達存儲器的末尾。EOM 標志----只在放音中檢測到內(nèi)部的EOM標志時,此狀態(tài)位才置1。</p><p> ?。?0)行地址時鐘(RAC) 漏極開路輸出。每個 RAC 周期表示 ISD 存儲器的操作進行了一行(ISD4004 系列中的存貯器共 2400 行)。該信號 175ms 保持高電平,低電平為25ms??爝M模式下,RAC 的218.75μs是高電平,3
48、1.25μs 為低電平。</p><p> (11)外部時鐘(XCLK) 本端內(nèi)部有下拉元件。芯片內(nèi)部的采樣時鐘在出廠前已調(diào)校,誤差在+1%內(nèi)。商業(yè)級芯片在整個溫度和電壓范圍內(nèi), 頻率變化在+2.25%內(nèi)。工業(yè)級芯片在整個溫度和電壓范圍內(nèi),頻率變化在-6/+4%內(nèi),此時建議使用穩(wěn)壓電源。若要求更高精度,可從本端輸入外部時鐘(如前表所列)。由于內(nèi)部的防混淆及平滑濾波器已設(shè)定,故上述推薦的時鐘頻率不應(yīng)改變。輸入時鐘
49、的占空比無關(guān)緊要,因內(nèi)部首先進行了分頻。在不外接地時鐘時,此端必須接地。</p><p> ?。?2)自動靜噪(AMCAP) 當錄音信號電平下降到內(nèi)部設(shè)定的某一閾值以下時,自動靜噪功能使信號衰弱,這樣有助于養(yǎng)活無信號(靜音)時的噪聲。通常本端對地接 1uF的電容,構(gòu)成內(nèi)部信號電平峰值檢測電路的一部分。檢出的峰值電平與內(nèi)部設(shè)定的閾值作比較,決定自動靜噪功能的翻轉(zhuǎn)點。大信號時,自動靜噪電路不衰減,靜音時衰減 6dB。
50、1uF的電容也影響自動靜噪電路對信號幅度的響應(yīng)速度。本端接 VCCA 則禁止自動靜噪。[4]</p><p> 3.5.3 SPI協(xié)議</p><p> ISD4004工作于SPI串行接口。SPI協(xié)議是一個同步串行數(shù)據(jù)傳輸協(xié)議,協(xié)議假定微控制器的SPI移位寄存器在SCLK的下降沿動作。對ISD4004而言,在時鐘上升沿鎖存MOSI引腳數(shù)據(jù),而下降沿將數(shù)據(jù)送至MISO引腳,其時序圖如圖3
51、-9所示。協(xié)議具體內(nèi)容如下:</p><p> ?。?)所有串行數(shù)據(jù)傳輸開始于SS下降沿;(2)SS在傳輸期間必須保持為低電平,在兩條指令之間保持為高電平;(3)數(shù)據(jù)在時鐘上升沿移入,在下降沿移出;(4)SS變低,輸入指令和地址之后,ISD才會開始錄放動作;(5)指令格式是10位地址碼加6位控制碼;(6)ISD的任何操作(含快進)如果遇到EOM或OVF則產(chǎn)生一個中斷,該中斷狀態(tài)在下一個SPI周期開始時被
52、清除;(7)使用讀指令會使中斷狀態(tài)為移出ISD的MISO引腳時,控制及地址數(shù)據(jù)也同步從MOSI移入;(8)所有操作在運行位(RUN)置1時開始,置0時結(jié)束;</p><p> (9)所有指令都在SS上升沿開始執(zhí)行。</p><p> 圖3-9 ISD4004-08 SPI通信工作時序圖</p><p> 對于ISD4004而言,器件延時TPUD(8kHz
53、采樣時,約為25 ms)后才能開始操作;因此,用戶發(fā)完上電指令后,必須等待TPUD.才能發(fā)出一條操作指令。下面是典型的操作。其語音的錄放示意如圖3-10所示。(1)發(fā)POWERUP命令;</p><p> ?。?)等待TPUD(上電延時);發(fā)地址值為00的SFTPLAY命令;</p><p> ?。?)發(fā)PLAY命令;(4)器件會從00地址開始放音,當出現(xiàn)EOM時,立即中斷,停止放音;
54、</p><p> ?。?)如果從00處錄音,則按以下時序;</p><p> ?。?)發(fā)POWER UP命令;</p><p> (7)等待TPUD(上電延時);</p><p> (8) 發(fā)POWER UP命令;(9) 等待2倍TPUD;</p><p> ?。?0)發(fā)地址值為00的SETREC命令;(11
55、)發(fā)REC命令;(12)器件便從00地址開始錄音,一直到出現(xiàn)OVF(存儲器末尾)時,錄音停止。</p><p> 圖3-10語音錄放時序圖</p><p> 3.6濾波電路的設(shè)計與方案論證</p><p> 濾波電路是一種能使用頻率信號通過而同時抑制無用頻率信號的電子裝置。工程上常用它來做信號處理、數(shù)據(jù)傳送和抑制干擾等。實際常用是模擬濾波器,這種濾波電路主要
56、采用無源元件R、L和C組成,20世紀60年代以來,集成運放獲得了迅速發(fā)展,由它和R、C組成的有源濾波電路,具有不用電感、體積小、重量輕等優(yōu)點。此外,由于集成運放的開環(huán)增益和輸入阻抗均很高,輸出阻抗又低,構(gòu)成有源濾波電路后還具有一定的電壓放大和緩沖作用。但是,集成運放的帶寬有限,所以目前有源濾波電路的工作頻率難以做得很高,以及難以對功率信號進行濾波,這是它的不足之處[5]。</p><p> 設(shè)計思路:一方面由于
57、本設(shè)計是語音信號,信號的頻率范圍一般為300-3400HZ,帶寬的范圍一定,適合采用有源濾波電路。另一方面,考慮到實用性,帶負載能力要比較強,滿足輸入阻抗足夠高,輸出阻抗應(yīng)足夠小,且滿足阻帶衰減頻率-40db/10倍程。最后采用集成電路,可以避免各濾波之間的負載效應(yīng)而使濾波器的設(shè)計和計算大大簡化。綜上三點原因,本設(shè)計系統(tǒng)中的濾波電路采用二階有源濾波器。</p><p> 濾波器分成四種濾波器,分別是:低通濾波器
58、、帶通濾波器、帶阻濾波器、高通濾波器,它們的頻域示意圖如圖3-11所示。在本系統(tǒng)中,將采用帶通濾波器,</p><p> 圖3-11四種濾波器的示意圖</p><p> 在設(shè)計帶通濾波器時,可以采用有源高通濾波電路和一個有源低通濾波電路串聯(lián)而成,其原理圖如圖3-12所示。</p><p> 圖3-12帶通濾波器的組成</p><p>
59、 二階有源帶通濾波電路的傳遞函數(shù)[5]為式(3-2):</p><p><b> ?。?-2) </b></p><p> 其中AVF為同相比例放大電路的電壓增益。</p><p> 通過查表計算得,設(shè)計低通濾波器的截止頻率為3000Hz,高通濾波器的截止頻率為600Hz。帶通濾波器的原理圖如圖3-13所示。</p><
60、p> 圖3-13 帶通濾波器原理圖</p><p> 3.7 基于matlab軟件對濾波前后語音的分析</p><p> 語音錄放系統(tǒng)如果不加濾波電路,會發(fā)現(xiàn)播放的錄音中雜音很多,即語音的中其他成分很多。通過查資料發(fā)現(xiàn)產(chǎn)生的原因有以下幾點:</p><p> ?。?)麥克風的語音轉(zhuǎn)換特性存在問題,即將聲波信號轉(zhuǎn)換成電信的過程中,產(chǎn)生了高頻聲波的電信號。&
61、lt;/p><p> (2)功率放大電路在大信號下工作,所以不可避免會產(chǎn)生非線性失真,這種非線性失真使得語音中雜波成分增加。</p><p> 為了對語音進行前后分析對比,在本系統(tǒng)中,使用自己筆記本電腦自帶錄音機對播放的語音錄音。然后運用matlab軟件對語音讀取和FFT變換,對濾波前后的語音的時域與頻域分析比較,這樣可以比較直觀的觀察語音濾波前后變化。如圖3-14,濾波前后的語音的波形圖
62、及頻譜圖,由下圖可以看出,語音的中一些高頻成分被濾除。</p><p> 圖3-14 語音濾波前后的波形及頻譜圖</p><p> 3.8單片機與液晶顯示模塊</p><p> 3.8.1 STC89C51單片機</p><p> STC89C52是由深圳宏晶科技公司生產(chǎn)的與工業(yè)標準的MCS-51指令集和輸出管腳相兼容的單片機。STC
63、89C51單片機管腳如圖3-13所示,其主要功能特性表3-1所示。</p><p> 圖3-13單片機管腳</p><p> 表3-1 STC89C52單片機主要功能</p><p> STC89C52引腳具體介紹如下:</p><p> ?、僦麟娫匆_(2根)</p><p> VCC(Pin40):電源輸入
64、,接+5V電源</p><p> GND(Pin20):接地線</p><p> ?、谕饨泳д褚_(2根)</p><p> XTAL1(Pin19):片內(nèi)振蕩電路的輸入端</p><p> XTAL2(Pin20):片內(nèi)振蕩電路的輸出端</p><p><b> ?、劭刂埔_(4根)</b>
65、;</p><p> RST/VPP(Pin9):復(fù)位引腳,引腳上出現(xiàn)2個機器周期的高電平將使單片機復(fù)位。</p><p> ALE/PROG(Pin30):地址鎖存允許信號</p><p> PSEN(Pin29):外部存儲器讀選通信號</p><p> EA/VPP(Pin31):程序存儲器的內(nèi)外部選通,接低電平從外部程序存儲器讀
66、指令,如果接高電平則從內(nèi)部程序存儲器讀指令。</p><p> ?、芸删幊梯斎?輸出引腳(32根)</p><p> STC89C52單片機有4組8位的可編程I/O口,分別位P0、P1、P2、P3口,每個口有8位(8根引腳),共32根。</p><p> P0口(Pin39~Pin32):8位雙向I/O口線,名稱為P0.0~P0.7</p><
67、;p> P1口(Pin1~Pin8):8位準雙向I/O口線,名稱為P1.0~P1.7 </p><p> P2口(Pin21~Pin28):8位準雙向I/O口線,名稱為P2.0~P2.7 </p><p> P3口(Pin10~Pin17):8位準雙向I/O口線,名稱為P3.0~P3.7</p><p> 3.8.2液晶顯示模塊介紹</p>
68、<p> 1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。LCD具有體積小,質(zhì)量輕,功耗低,信息顯示豐富等優(yōu)點,應(yīng)用十分廣泛。字符型LCD是由如干個5*7或5*11等點陣字符位組成。每一個點陣字符位都可以顯示一個字符。點陣字符位之間有一個空點距的間隔起到了字符間距和行距的作用。</p><p> 圖3-14所示是16字*2行的LCD引腳圖,其接口引腳有
69、16只,引腳功能如表3-2所列。</p><p> 圖3-14 1602液晶引腳圖</p><p> 表3-2 字符型LCD顯示模塊接口電路</p><p> 在表3-2中,VSS為電源地,VDD接5V正電源。VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”。使用時,一般在該引腳與地之間接一固定電阻或電位器。RS
70、為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器,低電平時選擇指令寄存器。R/W為讀/寫信號線,高電平時進行讀操作,地電平時進行寫操作。E段位使能端,當E段由高電平變成低電平時,液晶模塊執(zhí)行命令。DB0~DB7為8位雙向數(shù)據(jù)線。BLA、BLK用于帶背光的模塊,不帶背光的模塊這兩個引腳懸空不接。</p><p><b> 3.9 通信方式</b></p><p> 3.9.1單
71、片機與PC機之間的通信</p><p> 單片機與計算機的通信電路有串行通信和并行通信兩種。并行通信的主要特點:一是同時并行傳送的二進制數(shù)就是數(shù)據(jù)寬度;二是在計算機與外設(shè)間采用應(yīng)答式的聯(lián)絡(luò)信號來協(xié)調(diào)雙方的數(shù)據(jù)操作。傳送的數(shù)據(jù)位為1-128位,一般為8位,但是并行通信傳輸距離近,傳送方式單一,每次傳送一個字或一個字節(jié)。串行通信是指一個數(shù)據(jù)的所有位按一定的順序和方式,一位一位地通過串行輸入/輸出口進行傳送,由于串行
72、通信是數(shù)據(jù)的逐位順序傳送,在進行串行通信時,只需一根傳輸線,傳送的數(shù)據(jù)位多且通信距離長。</p><p> 串行通信與并行通信相比,具有傳輸距離遠,接口電路與軟件編程簡單等優(yōu)點,所以本設(shè)計中采用串行通信。</p><p> 單片機與計算機的通信采用簡化三線的串行通信方式,即把單片機的發(fā)送端TXD直接和計算機的接收端RXD相連,單片機的接收端RXD直接和計算機的發(fā)送端TXD連接,但是單片
73、機的+5V TTL信號電平與PC機的±10V信號電平不相容,所以必須進行電平轉(zhuǎn)換[6],本設(shè)計中采用MAXIM公司生產(chǎn)的MAX232芯片。MAX232芯片內(nèi)部有一個電源電壓變壓器,可以把輸入的+5V電源電壓變換為RS-232輸出電平所需的±10V電壓。所以,采用此芯片接口電路的串行通信系統(tǒng)只需要單一的+5V電源就可以了。此外,為了數(shù)據(jù)傳輸和指令下載方便,我們采用的是USB轉(zhuǎn)串口線。MAX232電路也非常方便,只需要外
74、接4個0.1μF電容即可產(chǎn)生所需的電壓,輸出標準的RS232接口信號,而且RS232芯片價格不貴。單片機與計算機的通信接口電路如圖3-15所示:</p><p> 圖3-15串口電路圖</p><p> 3.9.2 單片機與ISD4004之間的通信</p><p> 單片機ISD4004之間的通信采用串行外設(shè)接口(serial peripheral inte
75、rface,SPI)總線系統(tǒng)是一種同步串行外設(shè)接口,它可以使MCU與各種外圍設(shè)備以串行方式通信以交換信息。SPI總線系統(tǒng)可直接與各個廠家生產(chǎn)的多種標準外圍器件直接接口,該接口一般使用4條線:串行時鐘線(SCK)、主機輸入/從機輸出數(shù)據(jù)線MISO、主機輸出/從機輸入數(shù)據(jù)線MOSI和低電平有效的從機選擇。</p><p> 由于SPI系統(tǒng)總線一共只需三四位數(shù)據(jù)線和控制,即可實現(xiàn)與具有SPI總線接口功能的各種I/0器
76、進行接口,因此,采用SPI總線接口可以簡化電路設(shè)計,節(jié)省很多常規(guī)電路中的接口器件和I/O口線,提高設(shè)計的可靠性。由于51單片機不帶SPI串行總線接口,可以使用軟件來模擬SPI的操作,可以用P1口的P1.0~P1.3口模擬包括串行時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出。對于不同的串行接口外圍芯片,它們的時鐘時序是不同的。</p><p> 對于在SCK的上升沿輸入(接收)數(shù)據(jù)和下降沿輸出(發(fā)送)數(shù)據(jù)的器件,一般應(yīng)將其串行時鐘輸
77、出口P1.1的初始狀態(tài)設(shè)置為1,而在允許接口后再置P1.1為0。這樣,MCU在輸出1位SCK時鐘的同時,將使接口芯片串行左移,從而輸出1位數(shù)據(jù)至單片機的P1.3口,此后再置P1.1為1,使單片機從P1.0口,此后再置P1.1為1,是單片機從P1.0口輸出1位數(shù)據(jù)(先為高位)至串行接口芯片。至此,模擬1位數(shù)據(jù)輸入輸出便完成。此后再置P1.1為0,模擬下一位數(shù)據(jù)的輸入輸出,以此循環(huán)8次,即可完成一次通過SPI總線傳輸8位數(shù)據(jù)的操作。對于在S
78、CK的下降沿輸入數(shù)據(jù)和上升沿輸出數(shù)據(jù)的器件,則應(yīng)該串行時鐘輸出的初始狀態(tài)為0,即在接口芯片允許時,先置P1.1,為1,以便外圍接口芯片輸出1位數(shù)據(jù),之后再置時鐘為0,使外圍接口芯片接收1位數(shù)據(jù),從而完成1位數(shù)據(jù)的傳送[1]。如圖3-16所示,51單片機與ISD4004接口電路。</p><p> 圖3-16單片機與ISD4004接口電路示意圖</p><p><b> 4軟件
79、設(shè)計</b></p><p><b> 4.1 總體方案</b></p><p> 該系統(tǒng)的軟件部分包括語音程序,1602液晶顯示和按鍵控制三部分程序。語音程序主要包括驅(qū)動程序,1602液晶顯示部分包括顯示驅(qū)動程序,按鍵控制部分包括菜單的選擇,可以選擇錄音模式和放音模式。</p><p> 軟件設(shè)計采用的是Keil uvis
80、ion2,C51編程。Keil C51是51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)上、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易懂。Keil C51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解,在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。因此本系統(tǒng)采用C51編程語言。</p><p><b> 4.2 程序流圖</b></p>
81、<p> 單片機上電后,系統(tǒng)默認進入放音模式。在放音模式下,可以選擇相應(yīng)段的語音,按下播放按鍵就可以播放語音。當按下菜單選擇按鍵時,系統(tǒng)就會切換成錄音模式。在錄音模式下,可以通過按鍵來選擇,任意斷的語音進行錄音。再次按下菜單選擇的按鍵時,就會切換成放音模式。如圖4-1所示,系統(tǒng)的流程圖,圖4-2所示,錄放放音子程序。</p><p> 圖4-1 系統(tǒng)的軟件流程圖</p><p&g
82、t; 圖4-2 錄放音子程序</p><p><b> 4.3 模塊說明</b></p><p> 4.3.1 ISD4004驅(qū)動程序</p><p> ?。?)SPI串行發(fā)送函數(shù)</p><p> /********以下是SPI串行發(fā)送函數(shù)********/</p><p> voi
83、d spi_send(uchar isdx)</p><p><b> {</b></p><p> uchar isd_count;</p><p> SS=0; //當ss=0時,選中IS4004芯片,打開SPI通信端</p><p><b> SCLK=0;</b><
84、;/p><p> for(isd_count=0;isd_count<8;isd_count++) //先發(fā)低位再發(fā)高位,依次發(fā)送</p><p><b> {</b></p><p> if ((isdx&0x01)==1)</p><p> MOSI=1; //主機輸出,從機輸入</p>
85、;<p><b> else</b></p><p><b> MOSI=0;</b></p><p> isdx=isdx>>1;//8位數(shù)據(jù)右移一位</p><p><b> SCLK=1; </b></p><p><b>
86、delay(2);</b></p><p><b> SCLK=0;</b></p><p><b> delay(2);</b></p><p><b> }</b></p><p><b> }</b></p><
87、;p> 單片機通過MOSI接口,通過串行的方式來發(fā)送八位數(shù)據(jù),數(shù)據(jù)在是時鐘的上升沿移入,下降沿移出。在判斷數(shù)據(jù)0或1的采用相與的方式,如果相與條件符合,則MOSI輸出1,,否則輸出0。</p><p> ?。?)向ISD4004語音芯片發(fā)送上電和掉電指令</p><p> /********以下是發(fā)送上電指令********/</p><p> void
88、 isd_powerup(void)</p><p><b> {</b></p><p> delay(10);</p><p><b> SS=0;</b></p><p> spi_send(0x20);</p><p><b> SS=1;<
89、/b></p><p> Delay_ms(50);</p><p><b> }</b></p><p> /********以下是發(fā)送掉電指令函數(shù)********/</p><p> void isd_poweroff(void)</p><p> { delay(10);&l
90、t;/p><p> spi_send(0x10);</p><p><b> SS=1;</b></p><p> Delay_ms(50);</p><p><b> }</b></p><p> 閱讀ISD4004芯片手冊知,向語音芯片發(fā)送8位的指令,就能控制其上電
91、與掉電,這應(yīng)用在錄放音的時序控制中。</p><p><b> (3)錄放音函數(shù)</b></p><p> /********以下是發(fā)送setplay(放音起始地址)指令函數(shù)********/</p><p> void isd_setplay(uchar adl,uchar adh)</p><p><b&
92、gt; {</b></p><p> Delay_ms(1);</p><p> spi_send(adl); //發(fā)送放音起始地址低位</p><p><b> delay(2);</b></p><p> spi_send(adh); //發(fā)送放音起始地址高位</p>
93、<p><b> delay(2);</b></p><p> spi_send(0xe0); //發(fā)送setplay指令字節(jié)</p><p><b> SS=1;</b></p><p><b> }</b></p><p> /********以
94、下是發(fā)送setrec(錄音起始地址)指令函數(shù)********/</p><p> void isd_setrec(uchar adl,uchar adh)</p><p><b> {</b></p><p> Delay_ms(1);</p><p> spi_send(adl); //發(fā)送放音起始地址
95、低位</p><p><b> delay(2);</b></p><p> spi_send(adh); //發(fā)送放音起始地址高位</p><p><b> delay(2);</b></p><p> spi_send(0xa0); //發(fā)送setplay指令字節(jié)</p
96、><p><b> SS=1;</b></p><p><b> }</b></p><p> 與ISD4002不同的是,ISD4004內(nèi)部地址是16位的,分為高位和地位兩部分,在發(fā)送地址時,要先發(fā)送地位地址,然后再發(fā)送高位地址。</p><p> 4.3.2 1602液晶底層驅(qū)動</p&
97、gt;<p> ?。?)LCD判忙程序</p><p> /********以下是LCD忙碌檢查函數(shù)********/</p><p> bit lcd_busy() </p><p> {
98、 </p><p> bit result; </p><p> LCD_RS = 0;
99、 </p><p> LCD_RW = 1; </p><p> LCD_EN = 1; </p>
100、;<p> _nop_(); </p><p> _nop_(); </p><p> _nop_();
101、 </p><p> _nop_(); </p><p> result = (bit)(P2&0x80);
102、 </p><p> LCD_EN = 0; </p><p> return result; </p&g
103、t;<p><b> } </b></p><p> 當模塊在接受指令前,單片機必須先確認模塊內(nèi)部是否處于忙綠狀態(tài),即讀取lcd_busy()標志時result需為0,方可接受新的指令;如果在送出一個指令前不檢查result標志位,或者延遲時間不夠長,會導(dǎo)致接收出錯。</p><p> ?。?)寫指令、寫數(shù)據(jù)程序</p><p&
104、gt; /********以下是寫指令寄存器IR函數(shù)********/</p><p> void lcd_wcmd(uchar cmd) </p><p> {
105、 </p><p> while(lcd_busy()); </p><p> LCD_RS = 0; </p><p&g
106、t; LCD_RW = 0; </p><p> LCD_EN = 0; </p><p> _nop_();
107、 </p><p> _nop_(); </p><p> P2 = cmd;
108、 </p><p> _nop_(); </p><p> _nop_(); </p><p>
109、 _nop_(); </p><p> _nop_(); </p><p> LCD_EN = 1;
110、 </p><p> _nop_(); </p><p> _nop_();
111、 </p><p> _nop_(); </p><p> _nop_(); </p><p>
112、LCD_EN = 0; </p><p><b> } </b></p><p> /********以下是寫寄存器DR函數(shù)********/</p><p> void lcd_wdat(uchar dat)
113、 </p><p> { </p><p> while(lcd_busy());
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 語音錄放系統(tǒng)的設(shè)計畢業(yè)論文
- 語音錄放系統(tǒng)的設(shè)計畢業(yè)論文
- 基于isd4004的語音錄放系統(tǒng)畢業(yè)論文
- 基于isd4004的語音錄放系統(tǒng)畢業(yè)論文
- 畢業(yè)設(shè)計語音錄放系統(tǒng)設(shè)計
- 畢業(yè)論文---單片機控制語音芯片的錄放音系統(tǒng)的設(shè)計
- isd語音錄放系統(tǒng)大學(xué)課題論文
- 基于arm的語音錄放系統(tǒng)設(shè)計
- 語音錄放系統(tǒng)的設(shè)計[文獻綜述]
- 語音報站系統(tǒng)的設(shè)計【畢業(yè)論文】
- 課程設(shè)計---語音錄放系統(tǒng)的設(shè)計
- 基于arm的語音錄放系統(tǒng)的設(shè)計
- 語音控制小車系統(tǒng)的設(shè)計【畢業(yè)論文】
- 通信工程畢業(yè)論文_簡易數(shù)碼錄放系統(tǒng)的設(shè)計與實現(xiàn)
- 語音通信系統(tǒng)畢業(yè)論文
- 語音通信系統(tǒng)畢業(yè)論文
- 基于單片機的語音錄放系統(tǒng)設(shè)計
- 課程設(shè)計--語音錄放器
- 畢業(yè)設(shè)計論文-語音復(fù)讀機--單片機在語音錄放技術(shù)中的應(yīng)用
- 語音錄放專用芯片的設(shè)計.pdf
評論
0/150
提交評論