課程設計基于單片機的語音存儲及回放系統課程設設計_第1頁
課程設計基于單片機的語音存儲及回放系統課程設設計_第2頁
課程設計基于單片機的語音存儲及回放系統課程設設計_第3頁
課程設計基于單片機的語音存儲及回放系統課程設設計_第4頁
課程設計基于單片機的語音存儲及回放系統課程設設計_第5頁
已閱讀5頁,還剩32頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、電子與信息工程學院綜合實驗課程報告課題名稱 基于單片機的語音采集及回放系統設計 專 業(yè) 電子信息工程 班 級 07電子2班 學生姓名 學 號 指導教師 宋楊 1 總體設計方案介紹:1.1語音編碼方案:人耳能聽到的聲音是一種頻率范圍為20 Hz20000 Hz ,而一般語音頻率最高為3400 Hz。語音的采集是指語音聲波信號經麥克風和高頻放大器轉換成有一定幅度的模擬量電信號,然后再轉換成數字量的全過程。根據“奈奎斯特采樣定理, 采樣頻率必須大于模擬信號最高頻率的兩倍, 由于語音信號頻率為3003 400 Hz ,所以把語音采集的采樣頻率定為8 kHz。從語音的存儲與壓縮率來考慮,模型參數表示法明

2、顯優(yōu)于信號波形表示法4。但要將之運用于單片機,顯然信號波形表示法相對簡單易實現?;谶@種思路的算法,除了傳統的一些脈沖編碼調制外,目前已使用的有VQ技術及一些變換編碼和神經網絡技術,但是算法復雜,目前的單片機速度底,難以實現。結合實際情況,提出以下幾種可實現的方案。1短時平均跨零記數法 該方案通過確定信號跨零數,將語音信號編碼為數字信號,常用于語音識別中。但對于單片機,由于處理數據能力底,該方法不易實現。2實時副值采樣法 采樣過程如圖2.1所示。抽樣量化存儲圖2.1 采樣過程 具體實現包括直存取法、欠抽樣采樣法、自相似增量調制法等三種根本方法。其中第三種實現方法最具特色,該方法可使數據壓1:4

3、.5,既有調制的優(yōu)點,又同時兼有PCM編碼誤差較小的優(yōu)點,編碼誤差不向后擴散。1.2 A/D、D/A及存儲芯片的選擇單片機語音生成過程,可以看成是語音采集過程的逆過程,但又不是原封不動地恢復原來的語音,而是對原來語音的可控制、可重組的實時恢復。在放音時,只要依原先的采樣直經D/ A 接口處理,便可使原音重現。1A/D轉換芯片的選擇 根據題目要求采樣頻率fs=8KHZ,字長=8位,可選擇轉換時間不超過125s的八位A/D轉換芯片。目前常用的A/D轉換實現的方法有多種,鑒于轉換速度的要求,我們采用A/D轉換芯片AD574。該芯片是高速12位逐次比擬型A/D轉換器,內置雙極性電路構成的混合集成轉換顯

4、片,具有外接元件少,功耗低,精度高等特點,并且具有自動校零和自動極性轉換功能,只需外接少量的阻容件即可構成一個完整的A/D轉換5。2D/A轉換芯片的選擇 D/A轉換芯片的作用是將存儲的數字語音信號轉換為模擬語音信號,由于一般的模擬轉換器都能到達1s的轉換速率,足夠滿足題目的要求,故我們在此選用了通用D/A轉換器DAC0832。3數據存儲器的選擇 當采樣頻率s=8KHZ,字長為8位時,一秒鐘的語音需要8K字節(jié)的存儲空間,那么存儲器至少需要有80k容量。在這里我們選用閃速存儲器AT29C040作為存儲器,一片該芯片可存儲60秒鐘的語言。系統總體結構數字化語音存儲與回放系統的根本思想是通過拾音器將聲

5、音信號轉化成電信號,再經過放大器放大,然后通過帶通濾波器濾波,模擬語音信號通過模數轉換A/D轉換成數字信號,再通過單片機控制將數據從存儲器中讀出,然后通過數模轉換D/A轉換成模擬信號,經放大再揚聲器或耳機上輸出。整個系統框架圖如圖3.1所示:A/D轉換電路帶通濾波器D/A轉換電路帶通濾波器輸出放大器耳機電源電路89C51單片機鍵盤設定存儲器數據顯示增益放大器拾音器圖3.1 整體框圖 系統組成如下圖,由輸入通道、AT89C51單片機和輸出通道三局部組成。輸入通道局部由拾音器、前置放大電路和帶通濾波器組成;輸出通道由帶通濾波器、后級放大電路組成9。拾音器輸出的毫伏信號實測其范圍約為2025mV,此

6、電信號太小不能夠進行采樣,后級A/D轉換輸入信號的動態(tài)范圍為05V,語音信號的范圍與采樣范圍的比擬得出放大器的放大倍數應為200倍左右,此處將信號通過一增益為46dB的放大器,將其放大到伏特量級,輸出級放大電路亦采用這種電路,兩級放大電路都采用增益可調的典型電路??紤]到語音信號的固有特點,將低于300Hz和高于3.4kHz的分量濾掉后語音質量仍然良好。此處將其通過一增益為46dB的放大器,因此,將帶通濾波器設計為典型的300Hz3.4kHz,輸出級帶通濾波器亦為300Hz3.4kHz,這樣既可濾掉低頻分量又可濾掉D/A轉換帶來的高頻分量,很好的濾除掉噪聲。根據奈奎斯特抽樣定理知欲使采樣信號無失

7、真,抽樣頻率最低為6.8kHZ,考慮到留有一定的余地,這樣就足夠保證語音質量。經量化后,微處理器將數據存到處理器,需要時再將其回放,存入與放出由開關通過微處理器來控制實現。存儲器的容量選擇視所存語音信號的時間長短而定。為了使A/D的輸入信號穩(wěn)定在其動態(tài)范圍內,在輸入級加上了自動增益控制電路,同時也使音量穩(wěn)定。2硬件電路設計:拾音器是一種聲傳感器,聲傳感器是把外界聲場中的聲信號轉換成電信號的傳感器。它在通訊、噪聲控制、環(huán)境檢測、音質評價、文化娛樂、超聲檢測、水下探測和生物醫(yī)學工程及醫(yī)學方面有廣泛的應用10。它的種類很多,按其特點和頻率等,將它劃分為超聲傳感器、聲壓傳感器和聲外表波傳感器等。單純的

8、磁性拾音器工作的電學原理為當聲音在銅絲繞制的線圈內震動切割被該線圈所纏繞的磁芯產生的磁感線時,線圈內感應出電信號并流出。感應電流的強弱取決于切割磁感線的多寡振幅、切割頻率震動頻率和磁感線自身的強弱。 拾音器包括拾音頭換能裝置、唱針和音臂等附件。其換能裝置主要有壓電式、電磁式、電容式以及半導體等11。電磁式拾音頭,用電磁感應原理,將機械振動變換成電信號的幅度響應拾音頭。主要由線圈和磁鋼等組成。唱針耦合在線圈上的稱動圈式,耦合在磁鋼上的稱動磁式。此外,也有將唱針耦合在銜鐵上的稱為動鐵式,也稱可變磁阻式。在本設計中決定采用動圈式拾音器() 增益放大器拾音器輸出的毫伏信號實測其范圍約為2025Mv此電

9、信號太小不能夠進行采樣,后級A/D轉換輸入信號的動態(tài)范圍為05V,語音信號的范圍與采樣范圍的比擬得出放大器的放大倍數應為200倍左右,此處將信號通過一增益為46dB的放大器,將其放大到伏特量級,輸出級放大電路亦采用這種電路,兩級放大電路都采用增益可調的典型電路12。為了將從拾音器獲得的微弱語音信號放大,采用兩極高輸入阻抗的同向放大器,電路圖如下圖,每級放大器的放大倍數按下式計算:圖4.1 增益放大器輸出放大器經帶通濾波器輸出的聲音回放信號,其幅度為05V,足以用耳機來接收聽,可不接任何放大器。但考慮到實際中經?;赜玫嚼韧夥?,故在本系統中增加外放功能,前端放大器采用通用型音頻功率放大器LM38

10、6來完成13。電路如圖4.1。該電路增益為50200,連續(xù)可調,最大不失真功率為325mW。輸出端接C4、R9串聯電路,以校正喇叭的頻率特性,防止高頻自激腳7接220uF去偶電容,以消除低頻自激為便于該功放在高增益情況下工作,這里將不使用輸入端腳2對地短路圖4.2 輸出放大器濾波器是一種能使有用頻率信號通過同時抑制(或大為衰減)無用頻率信號的電子裝置。工程上常用它來作信號處理、數據傳輸和抑制干擾等。這里主要討論模擬濾波器。以往這種濾波電路主要采用無源元件R、L和C組成,60年代以來,集成運放獲得了迅速開展,由它和R、C組成的有源濾波電路,具有不用電感、體積小、重量輕等優(yōu)點14。此外,由于集成運

11、放的開環(huán)電壓增益和輸入阻抗都很高,輸出阻抗又底,構成有源濾波電路后還具有一定的電壓放大和緩沖作用。但是,集成運放的帶寬有限,所以目前有源濾波電路的工作頻率難以作的很高,這是它的缺乏之處。對于幅頻響應,通常把能夠通過的信號頻率范圍定義為通帶,而把受阻和衰減的信號頻率范圍定義為阻帶,理想濾波電路在通帶內應具有零衰減的幅頻響應和線形的相位響應,而在阻帶內應具有無限大的幅度衰減。按照通帶和阻帶的相互位置不同,濾波器可分為低通濾波器、高通濾波器、帶通濾波器、帶阻濾波器。通常用幅頻響應來表征一個濾波器的特征,欲使信號通過濾波器的失真很小,那么相位和延時響應亦須考慮。當相位響應作線性變化,即時延響應為常數時

12、,輸出信號才可能防止失真。濾波電路 , (s=)這里為傳遞函數的模,為其相位角。延時向量: 聲音信號經動圈拾音器轉有源濾波器換成電壓信號,通過前級放大,在對其進行數據采集之前,有必要經過帶通濾波器除帶外雜波,選定該濾波器的通帶范圍為300Hz3.4KHz.其作用是: 保證3003400Hz的語音信號不失真的通過濾波器; 濾除帶外的低頻信號,以減少帶外功頻等分量的干擾,大大減少噪聲影響,該下限頻率可下延到270Hz左右; 便于濾除帶外的高次諧波,以減少因8kHz采樣率而引起的混疊失真,根據實際情況,該上限頻率可在2700Hz左右,帶通濾波器按品質因數Q的大小為窄帶濾波器10和帶通濾波器10兩種,

13、此題中,上限頻率fh=3400Hz,通帶濾波器中心頻率f0與品質因數分別為f0=1010Hz Q=顯然,Q10,故該帶通濾波器為寬帶帶通濾波器帶寬帶通濾波器由高通和低通濾波器級聯構成,鑒于Butterworth濾波器帶內平坦的響應特性,我們選用二階Butterworth帶通濾波器,電路如圖4.3所示實驗證明,該濾波器能有效的濾除低頻分量,大大減少噪聲干擾,與之同時也綠除了多余的高頻分量,消除了高頻失真,性能足以滿足要求15。圖4.4 帶通濾波器16。電路如圖4.4所示:220V交流電經變壓器T降壓,得到24V交流電,再經VD1VD4組成的全橋整流,由C1濾波后得到33V左右的直流電壓17。該電

14、壓經集成電路LM317后得穩(wěn)壓輸出,調節(jié)電位器RP,即可連續(xù)調節(jié)輸出電壓。圖中C2用以消除寄生振蕩,C3的作用是抑制紋波,C4是用以改善穩(wěn)壓電源的的暫態(tài)響應,VD6、VD7在輸出端電容漏電或調整端短路時起保護作用。VD5為本電源的工作指示燈,電阻R1是限流電阻。輸出端接微型電壓表PV,可以直觀的指示輸出電壓值。各元件具體參數如圖所標。圖4.5 可調直流穩(wěn)壓電源2.5 MCS51系列單片機單片微型計算機Sing-Chip Microcomputer簡稱單片機。它是在一塊芯片上集成中央微處理器Central Processing Unit, CPU、隨機存取存儲器Random Access Mem

15、ory, RAM、只讀存儲器Read Only Memory, ROM、定時/計數器及I/OInput/Output接口電路等部件,構成一個完整的微型計算機。它的特點是:高性能,高速度,體積小,價格低廉,穩(wěn)定可靠,應用廣泛18。正是由于單片機具有上述顯著的特點,使單片機的應用范圍日益擴大。單片機的應用打破了人們傳統設計思想,原來很多用模擬電路、脈沖數字電路和邏輯部件來實現的功能,現在均可以使用單片機,使用軟件來實現。使用單片機具有體積小、可靠性高、性能價格比高和容易產品化的優(yōu)點。 89C51簡介89C51是一種帶4K字節(jié)片內程序存儲器,且是高性能CMOS8位微處理器,俗稱單片機19。該器件采用

16、ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的89C51是一種高效微控制器,為很多嵌入式控制系統提供了一種靈活性高且價廉的方案。 圖4.6 89C51引腳圖89C51有40個引腳,4個8位并行輸入/輸出I/O端口:P0、P1、P2、P3,其中,P1是完整的8位準雙向I/O口,兩個外中斷,2個16位可編程定時/計數器,兩個全雙向串行通信口,一個模擬比擬放大器。此外,89C51的時鐘頻率可為零,即具備可用軟件設置的睡眠省電功能,系統的喚醒方式有RAM、定時/計數器、串行口和外中斷口,系統喚醒

17、后即進入工作狀態(tài),省電模式中,片內RAM將被凍結,時鐘停止震蕩,所有功能停止工作,直至系統被硬件系統復位方可繼續(xù)工作2. 引腳介紹Vcc:接+5V電源正端GND:接地。P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數據存儲器,它可以被定義為數據/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1口:P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內部上拉為高,可用作輸入,

18、P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。P2口:P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數據存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1時,它利用內部上拉優(yōu)勢,當對外部八位地址數據存儲器進行讀寫時,P2口輸出其特殊功能存放器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信

19、號。P3口:P3口管腳是8個帶內部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流ILL這是由于上拉的緣故。P3口也可作為89C51的一些特殊功能口,如下表所示:表4.1 P3口管腳的特殊功能引腳第 二 功 能RXD (串行輸入口)TXD (串行輸出口)INTO (外部中斷0請求輸入端)INT1 (外部中斷1請求輸入端)T0 (定時器/計數器0記數脈沖輸入端)T1 (定時器/計數器1記數脈沖輸入端)WR (片外數據存儲器寫選通信號輸出端)RD (片外數據存儲器讀選通信號輸出端)RST:復

20、位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數據存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。PSEN:外部程序存儲器的選通信號

21、。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數據存儲器時,這兩次有效的/PSEN信號將不出現。EA/VPP:當/EA保持低電平時,那么在此期間外部程序存儲器0000H-FFFFH,不管是否有內部程序存儲器。注意加密方式1時,/EA將內部鎖定為RESET;當/EA端保持高電平時,此間內部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源VPP。XTAL1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。3. 主要性能指標a.與MCS-51兼容b.4K字節(jié)可編程閃爍存儲器c.壽命:1000寫/擦循環(huán)數據保存時間:10年d.

22、全靜態(tài)工作:0Hz-24Hze.三級程序存儲器鎖定f.128*8位內部RAMg.32可編程I/O線h.兩個16位可編成定時器/計數器i.5個中斷源j.可編程串行通道k.低功耗的閑置和掉電模式l.片內振蕩器和時鐘電路,12MHz;可有時鐘輸出m.有強的位尋址位處理能力4. 89C51單片機的主要組成局部(1) CPUCPU是單片機的核心局部,他的作用是讀入和分析每條指令,根據每條指令的功能要求,控制各個部件執(zhí)行相應的操作。89C51單片機內部有一個8位的CPU,它是由運算器和控制器組成。運算器 運算器主要包括算術、邏輯運算部件ALU、累加器ACC、存放器B、暫存器YMP1、YMP2、程序狀態(tài)存放

23、器PSW、布爾處理器及十進制調整電路等。運算器主要用來實現數據的傳送、數據的算術運算、邏輯運算和位變量處理等??刂破?控制器包括時鐘發(fā)生器、定時控制邏輯、指令存放器指令譯碼器、程序計數器PC、程序地址存放器、數據指針存放器DPTR和堆棧指針SP等。控制器是用來統一指揮和控制計算機進行工作的部件。它的功能是從程序存儲器中提取指令,送到指令存放器,再進入指令譯碼器進行譯碼,并通過定時和控制電路,在規(guī)定的時刻發(fā)出各種操作所需要的全部內部控制信息及CPU外部所需要的控制信號,如ALE、PSEN、RD、WR等,使各局部協調工作,完成指令所規(guī)定的各種操作。(2)存儲器程序存儲器 程序存儲器用于存放編好的程

24、序、表格和常數。程序存儲器的尋址范圍可以有64KB與此相應, 程序存儲器的編址自0000H開始,最大可至FFFFH。程序存儲器的編址規(guī)律為;先片內、后片外,片內、片外連續(xù),兩者一般不作重疊。對于片內有程序存儲器的芯片,CPU的控制器專門提供一個控制信號EA來區(qū)分,當EA為無高電平時,復位后單片機先執(zhí)行片內有程序存儲器中程序,當程序計數器的內容超過OFFFH時,將自動轉去執(zhí)行片外程序存儲器的程序而當指令,當EA為低電平時,將強行執(zhí)行片外程序存儲器中的程序。此時多在片外程序存儲器中存放調試程序,使計算機工作在調試狀態(tài)。這里應該注意的是,片外程序存儲器存放調試程序的局部,其編址與片內程序存儲器的編址

25、是可以重疊的,就借EA的換接可實現分別訪問。在程序存儲器中,有7個單元具有特殊用途。0000H0002H:是所有執(zhí)行程序的入口地址,89C51單片機復位后,CPU總是從0000H單元開始執(zhí)行程序。0003H:外部中斷0入口。000BH:定時/計數器0溢出中斷入口。0013H:外部中斷1入口。001BH:定時/計數器1溢出中斷入口。0023H:串行口中斷入口。002BH:定時器/計數器2溢出或T2EX端負跳變。使用時,通常在這些入口地址處存放一條絕對跳轉指令,使程序跳轉到用戶安排的中斷程序起始地址,或者從0000H起始地址跳轉到用戶設計的初始程序上。數據存儲器 片內數據存儲器有16位,尋址范圍也

26、可達64KB。故片外數據存儲器的容量可大到與程序存儲器一樣,其編址自0000H開始,最大可至FFFFH。89C51單片機數據存儲器有片內數據存儲器RAM和特殊功能存放器SFR:前者有128個字節(jié),其編址為00HFFH,可以讀、寫任何數據;后者也占128個字節(jié),其編址位80HFFH;兩者連續(xù)而不重疊。片內數據存儲器的容量很小,常需擴展片外數據存儲器。如擴展少量片外數據存儲器,容量不超過256個單元,那么也可按8位二進制數編址,自00H開始,最大可至FFH。表4.2 不同存儲器與所用指令及其尋址方式的對應關系存儲器訪問性質所用指令及尋址方式ROM依次取指執(zhí)行程序根據PC值自動訪問程序轉移程序轉移類

27、指令用戶訪問MOVC指令片內RAM訪問整個字節(jié)主要為MOV指令,借工作存放器間接尋址訪問20H2FH單元中的某位位操作類指令,借位地址尋址SFR訪問整個字節(jié)主要為MOV類指令,直能借直接尋址字節(jié)尋址訪問SFR中的可尋址位位操作類指令,借位地址尋址片外RAM如容量不大于256單元MONX指令,借工作存放器間接尋址如容量大于256單元MONX指令,借數據指針存放器間接尋址片內數據存儲器又可分為工作存放區(qū)、位尋址區(qū)、數據緩沖器區(qū)等三個區(qū)域。工作存放器區(qū)在低128B的內部RAM中,前32個單元地址為00H1FH為通用工作存放器區(qū),共分為四組存放器0組、1組、2組、3組,每組8個工作存放器由R0R7組成

28、,共占32個 單元。選用哪一組由程序狀態(tài)字PSW中的RS1、RS0這兩位的設置決定,假設程序并不需要四個4組工作存放器,那么剩下的工作存放器可作一般的存儲器來使用。位尋址區(qū)20H2FH的16個單元為位尋址區(qū),該區(qū)的每個單元都被賦予了一個位地址,每個單元8位,共128位。其位尋址范圍為00H7FH。位尋址區(qū)的每一位都可當作軟件觸發(fā)器,由程序直接進行處理。程序中通常把各種程序狀態(tài)標志、位控變量設在位尋址區(qū)。同樣,位尋址區(qū)的RAM單元也可作為一般的數據存儲器按字節(jié)單元使用。數據緩沖區(qū)30H7FH是數據緩沖區(qū),用戶RAM區(qū),共80個單元。(3)特殊功能存放器累加器A 累加器A是一個最常用的8位特殊功能

29、存放器,它既可用于存放操作數,也可用于存放運算的中間結果。大局部單操作數指令的操作數就取自累加器。用ACC表示A的符號地址。存放器B 存放器B是一個8位存放器,主要用于乘法和除法的運算。乘法運算時,B中存放乘法,乘法操作后,乘積的高8位又存于B中;除法運算時,B中存放除數,出發(fā)操作后,B中又存放余數。在其他指令中,存放器B可作為一般的存放器使用,用于暫存數據。5. 定時器/計數器主要特性定時器/計數器0與定時器/計數器1,可有程序選擇作為定時器用或作為計數器用,定時時間或記數值也可由程序設定。b.每一個定時器/計數器具有4種工作方式,可用程序選擇。c.任一定時器/計數器在定時時間到或記數值到時

30、,可有程序安排產生中斷請求信號或不產生中斷請求信號。定時/計數器0和1的控制和狀態(tài)存放器特殊功能存放器TMOD和TCON分別是定時/計數器0和1的控制和狀態(tài)存放器,用于控制和確定各定時/計數器的功能和工作模式。模式控制存放器TMODTMOD用于控制T0和T1的工作方式和4種工作模式。其中低4位用于控制T0,高4位用于控制T1。其值可用程序決定,其格式如下:GATE M1 M0GATE M1 M0GATE位:門控位。當GATE=1時,只有或引腳為高電平且TR0或TR1置1時,相應的定時/計數器才被選通工作;當GATE=0,那么只要TR0和TR1置1,定時/計數器就被選通,而不管或的電平是高還是低

31、位:計數/定時功能選擇位。=0,設置為定時器方式,計數器的輸入是內部時鐘脈沖,其周期等于機器周期。=1,設置為計數器方式,計數器的輸入來自T0P3.4或T1P3.5端的外部脈沖。M1、M0位:工作模式選擇位。2位可形成4中編碼,對應4種工作模式,見下表:表4.3 M1、M0工作模式M1 M0功 能 描 述00方式0:13位定時器/計數器01方式1:16位定時器/計數器10方式2:具有自動重裝初值的8位定時器/計數器11方式3:定時/計數器0分為兩個8位定時/計數器,定時/計數器1在此方式無實用意義控制存放器TCONTCON用來控制T0和T1的啟、停,并給出相應的控制狀態(tài),高4位用于控制定時器0

32、、1的運行;低4位用于控制外部中斷。格式如下:TF1 TR1 TF0 TR0 IE1IT1IE0 IT0TF1:定時器1溢出標志。當定時器1溢出時,由硬件置1。使用查詢方式時,此位做狀態(tài)位供查詢,查詢有效后需由軟件清零;使用中斷方式時,此位做中斷申請標志,進入中斷效勞后被硬件自動清零。TR1位:定時器1運行控制位。該位靠軟件置位或清零,置位時,定時/計數器接通工作,清零時,停止工作。TF0位:定時器溢出標志位,其功能和操作情況類同于TF1。TR0位:定時器0運行控制位,其功能和操作類同于TR1。IE位:外部中斷請求標志位。當CPU采樣到INT0非或INT1非端出現有效中斷請求時,IE0或IE1

33、由硬件置1,中斷響應完成后轉向中斷效勞時,再由硬件自動清零。IT位:外部中斷請求出發(fā)方式位。IT0IT1=1為脈沖觸發(fā)方式,后負跳有效。IT0IT1=0為電平觸發(fā)方式,低電平有效。89C51單片機的定時/計數器是可編程的,因此,在進行定時或計數之前也要用程序進行初始化。初始化一般應包括以下幾個步驟:a.對TMOD存放器賦值,以確定定時器的工作模式;b.置定時/計數器初值,直接將初值寫入存放器的TH0,TL0或TH1,TL1;c.根據需要,對存放器IE置初值,開放定時器中斷;d.對TCON存放器中的TR0或TR1置位,啟動定時/計數器,置位以后,定時/計數器即按規(guī)定的工作模式和初值進行計數或開始

34、定時。在初始化過程中,要置入定時/計數器的初值,這時要做一些計算。由于計數器是加法計數,并在溢出時申請中斷,因此不能直接輸入所需的計數值,而是要從計數最大值倒退回去一個計數值才是應置入的初值。設計數器的最大值為M在不同的工作模式中,M可以為8192,65536,256,那么置入的初值可以這樣來計算。計數方式時 X=M記數值定時方式時 MXT=定時值所以 X=M定時值/T式中,T為計數周期,是單片機的機器周期。6. T0和T1的4種工作方式方式0:13位定時/計數器,TL1或TL0的低5位和TH1或TH0的8位構成,TL中的高3位棄之未用。當TL的低5位記數溢出時,向TH進位,而全部13位計數器

35、溢出時使計數器回零,并使溢出標志TF置1,向CPU發(fā)出中斷請求。方式1:16位定時/計數器,其邏輯電路和工作情況與方式0幾乎完全相同,唯一的差異就是方式1中TL的高3位也參與了計數。方式2:把TL配置成一個可以自動重裝載的8位定時/計數器方式3:僅對T0有意義,將16位定時/計數器分成兩個互相獨立的8位定時/計數器TL和TH,7. CPU時鐘電路 時鐘電路用于產生單片機工作所需要的時鐘信號。時鐘信號可以有兩種方式產生:內部時鐘方式和外部時鐘方式。內部時鐘方式12MHz。為了減少寄生電容,更好的保證振蕩器穩(wěn)定可靠的工作,諧振器和電容應盡可能安裝的與單片機芯片靠近。內部時鐘發(fā)生器實質上是一個二分頻

36、的觸發(fā)器,其輸出信號是單片機工作所需的時鐘信號。外部時鐘方式 外部時鐘方式是采用外部振蕩器,外部振蕩信號由XTAL2端接入后直接送至內部時鐘發(fā)生器。輸入端XTAL1應接地,由于XTAL2端的邏輯電平不是TTL的,故建議外接一個上拉電阻。 一般情況下,單片機時鐘輸入均采用內部時鐘方式,外接一個震蕩電路,本系統采用內部時鐘方式,晶振采用12MHz,其電路如下列圖4.7所示。8. 復位電路復位狀態(tài) 計算機在啟動時,系統進入復位狀態(tài)。在復位狀態(tài),CPU和系統都處于一個確定的初始狀態(tài)或成為原始狀態(tài),在這種狀態(tài)下,所有的專用存放器都賦予默認值。其復位狀態(tài)見下表。表4.5 計算機復位狀態(tài)表專用存放器復位狀態(tài)

37、專用存放器復位狀態(tài)PCACCBPSWSPDPTRP0P3IPIE0000H00H00H00H07H0000HFFHXXX0 0000B0XX0 0000BTMODTCONTH0TL0TH1TL1SCONSBUFPCON00H00H00H00H00H00H00HXXXX XXXXB0XXX 0000B 復位電路 單片機復位電路包括片內、片外兩局部,片外復位電路通過引腳加到內部復位電路上,內部復位電路在每個機器周期S5P2對片外信號采樣一次,當RST引腳上出現連續(xù)兩個機器周期的高電平時,單片機就完成一次復位。外部復位電路就是為內部復位電路提供兩個機器周期以上的高電平而設計的,AT89C2051通常

38、采用上電自動復位和按鍵手動復位兩種方式。上電復位電路在通電瞬間,在RC電路充電過程中,RST端出現正脈沖,從而使單片機復位。按鍵手動復位又分為按鍵電平復位和按鍵脈沖復位,按鍵電平復位是將復位端通過電阻與Vcc相連,按鍵脈沖復位是利用RC微分電路產生正脈沖來到達復位的目的。本系統設計時采用的是上電復位方式。2.6 D/A、A/D轉換器 D/A轉換器DAC0832的介紹1、D/ A轉換器DAC0832的主要性能指標分辨率 通常將輸入數字量的最低有效位LSB變化1時所引起的輸入電壓的變化V稱為分辨率,即V=Vm/2,式中,Vm為輸出電壓的滿度值;n為D/A轉換器的二進制數的位數20。建立時間 當DA

39、C輸入數字量發(fā)生變換時,輸出模擬電壓也隨之改變,但輸出電壓變化到穩(wěn)定值時相對于輸入數字量的變化有一段延遲時間,這段延遲時間就稱為建立時間,用ts表示。建立時間越短,DAC的轉換速度越塊。通常用轉換時間來反映建立時間,如DAC0832的轉換速度為100ns,DAC0832的轉換速度為0.1ms。轉換誤差 轉換誤差可以用絕對誤差或相對誤差r來表示。絕對誤差是指DAC的輸入端加有固定的數字代碼時,實際測得模擬輸出值理論值之間的差。相對誤差r是指絕對誤差與滿度值之比,常用百分數表示。電源抑制比 DAC的輸出電壓的變化量與相對應的電源電壓變化量之比定義為電源抑制比。要求電源電壓發(fā)生變化時,對輸出電壓的影

40、響越小越好。表4.6 DAC0832的引腳符號 引腳 功能 符號 引腳 功能D07 74,1613 數據輸入線ILE 19 數據允許信號,高電平有效 1 輸入存放器選擇信號,低電平有效 2 輸入存放器寫選通信號,低電平有效 18 DAC 存放器寫選通信號, 低電平有效 17數據傳送信號, 低電平有效VCC 20電源輸入線IOUT1,IOUT2 11,12電流輸出線AGND 3模擬信號地DGND 10數字地RFB 9反響信號輸入線VREF 8基準電源輸入線2. DAC0832的引腳介紹DAC0832有20個引腳:ID7ID0是8位數據輸入端;ILE是輸入數據允許鎖存信號,CS與WR是第一級緩沖器

41、選通信號,這三個信號決定了LE1的電平,LE1位為高電平時,鎖存器的輸出隨輸入變化,LE1的負跳變使數據鎖存進鎖存器,LE1為低點電平時,鎖存器的輸出不在隨輸入端數據變化;XFER與WR2是第二級緩沖器選通信號,它們決定了LE2的電平,LE2在不同電平時對鎖存器的控制作用與LE2一致;VREF是基準電壓源輸入端;IOUT1、IOUT2分別是電流輸出端1和電流輸出端2;RFB是反響信號輸入端;AGND與DGND是模擬地與數字地,兩者分開是一項常用的抗干擾措施。DAC0832的兩級緩沖器都是8位鎖存器,它具有二級鎖存控制功能,當多片同用時可實現多參數的同時輸出:此時每片DAC0832承當一種參數的

42、D/A轉換,各片第一級緩沖器的翻開是有先后的,但各片的XFER與WR2信號如分別互連在一起,那么多片DAC0832開始D/A轉換和有模擬量輸出的時間將根本一。2.6.2 A/D轉換器AD574介紹1. AD574 的特點及功能AD574 是AD 公司生產的12 位逐次逼近型ADC , 它的轉換速度為25s , 轉換精度為0. 05 % , 可廣泛應用在數據采集系統中21。由于AD574 芯片內有三態(tài)輸出緩沖電路, 因而可直接與單片機的數據總線相連, 而無須附加邏輯接口電路。另外, 由于AD574 與CMOS 和TTL 兼容, 因而可構成簡單的數據采集最小系統。本文細講述了AD574 的工作原理

43、和硬件與軟件設計方法。AD574 為28 腳雙列直插式封裝, 其引腳分布如圖1 所示。各主要引腳功能如下:圖4.8 AD574的引腳圖CS:片送。CE:片啟動。R / C :讀出/轉換控制。12 / 8 :數據輸出格式選擇腳。當12 / 8 為1( +5V) 時, 12 條數據線將同時行輸出; 當12 / 8 為0(0V) 時,為8 位雙字節(jié)輸出。A0 : 字節(jié)選擇線。在轉換期間, 當A0 為0 時,AD574 進行全12 位轉換,轉換間為25s ;當A0 為1 時,進行8 位轉換,轉換時間為16s。在讀出期間,當A0 為0 時, 輸出高8 位; 當A0 為1 時, 輸出低4位,并以4 個0

44、作為尾隨的4 位以補足8 位,即當兩次讀出12 位數據時,應遵循左對齊原那么。STS:輸出狀態(tài)指示引腳。轉換開始時,STS 為高電平,并在轉換過程中保持高電平。轉換完成后,STS返回到低電平。STS 可以作為狀態(tài)信息被CPU查詢;也可以在它的下降沿向CPU發(fā)出中斷請求, 以通知A /D 轉換已完成,同時CPU可以讀出轉換結果。2 單片機AT89C51和AD574 的接口原理AD574 和單片機系統的根本組成主要有單片機、A / D 轉換器和計算機接口。其中單片機是系統的核心局部, 主機通過接口啟動單片機工作, 以使CPU資源向其它請求開放。單片機發(fā)出控制信號以啟動A /D 轉換器進行采樣, 然

45、后將轉換結果存入雙端口SRAM22。當RAM中的數據到達一定數量時, 單片機向計算機發(fā)出中斷請求。主機接到請求后進入中斷效勞程序,并向單片機發(fā)出命令,以決定是否繼續(xù)采樣,同時將SRAM內的數據讀入內存。系統的硬件設計在連接上應主要考慮三總線(控制總線、地址總線、數據總線) 的連接。圖2 所示是一個A/ D 轉換器與單片機的AT89C51接口電路。其中,AD574 是1 個完全的單片式12位逐次比擬型A /D 轉換器, 它帶有可以直接與8 位或16 位總線接口的三態(tài)緩沖器,因而不需要再加鎖存器。由于AD574 片內自帶高精度參考電壓和時鐘, 因此不需要外部電路和時鐘就可全速工作, 是一種比擬常用

46、的中速A / D 轉換芯片。AD574 完成1 次全12 位轉換最多需要35s ,適合于轉換速率低于30kb /s 的應用領域。AT89C51 單片機是MCS - 51的典型代表。由于該接口系統要求各路信號測量同步, 即同時啟動各A / D 轉換器進行轉換23。因此, 8031必須完成同時啟動、分別讀出轉換結果的任務。現將AT89C51 的主要任務分述如下:(1) 接收主機的采樣命令。即利用P1. 7 口并采用查詢方式等待主機發(fā)出采樣命令, 當其為低電平時,啟動采樣過程。(2) 啟動采樣。AT89C51 利用P2. 7 經過反相后控制AD574 的讀出和啟動轉換控制線R / C , 并再經過與

47、非門和反相器來控制片選線CS(低電平有效) 。當P2.7 為高電平時,所有AD574 都處于待啟動狀態(tài), 即設定各AD 的啟動地址均#FFFFH。AT89C51 的WR、RD 經過與非門接到AD574 的使能端,任意有效信號都會使能AD。(3) 讀取并存儲轉換結果。所有AD 轉換結束與否的判斷均由P1 口的低4 位來進行,當低4 位均為低電平時, 表示所有轉換都已結束。需要對轉換器分配地址,以逐一讀出轉換結果。進行讀取操作時,地址應為對應存儲器單元的操作地址, 因為存儲器單元地址的末尾2 位數依次為00、01、10、11 , 因此,對單元操作也就是表示對相應編號的A / D 轉換器進行了讀操作

48、。這種方式可以使系統所能操作的A /D 數達10 片之多。(4) 向主機發(fā)出中斷申請。在當前存儲區(qū)滿后,要向主機發(fā)出中斷請求, 以向主機傳送數據。因為每一存儲區(qū)為1kB , 所以, 利用存儲數據時, P2.2 的狀態(tài)可以判斷是否已被完全占用。在圖2 中,由于AD574 片內有時鐘,故無需外加時鐘信號。該電路采用單極性輸入方式, 可對010V或020V模擬信號進行轉換。轉換結果的高8位從D11D4 輸出,低4 位從D3D0 輸出,并且直接和單片機的數總線相連。轉換遵循左對齊原那么,D3D0 應接單片機數據總線的高半字節(jié)。為了實現啟動A /D 轉換和轉換結果的讀出, AD574 的片選信號CS 由

49、地址總線的次低位A1( P0. 1) 提供, 在讀寫時,A1 應設置為低電平。AD574 的CE 信號由單片機的WR 和A7( P0. 7) 經一級或非門產生。R /C 那么由RD 和A7 經一級或非門提供??梢娫谧x寫時,A7亦應為低電平。輸出狀態(tài)信號STS 接到P3. 2 端可供單片機查詢判斷A / D 轉換是否結束。AD574 的A0由地址總線的最低位A0( P0. 0) 控制,可用于實現全12 位轉換,并將12 位數據分兩次送入數據總線。圖4.9 單片機AT89C51與AD574的接口圖 存儲器的選取在數字化語音存儲與回放的設計中可用AT29C040 Flash存儲器來存儲時間,AT29

50、C040具有在線可擦寫、非揮發(fā)性、信息保存可靠、存儲容量大等優(yōu)點,每片的容量為512K字節(jié),它是國外最新產品,該產品的讀寫一般與RAM相同,由于89C51一般能尋址64K字節(jié)24。所以需要利用P1口進行地址擴寬,本系統中另加三根線P1.1、P1.2、P1.3,作地址線用,使尋址空間擴展到512K字節(jié),并分別采用分而管理方式分配內存,即在總線輸出地址之前,先對外加的3根高位地址選頁,然后在所選頁中進行輸入輸出操作。AT29C040讀取時間僅為70ns,單一+5V電源,雙8k字節(jié)的引導區(qū),內部程控定時器,硬件和軟件數據保護功能,快速扇出程序周期10ms,低功耗:待機為100uA,啟開工作為50mA

51、,10000次擦寫次數。輸入輸出全兼容CMOS和TTL電路25。圖4.10 AT29C040引腳如下2.7 對數字化語音存儲與回放系統的校正首先對頻域中的函數進行分析, 在頻域304030H范圍內的曲線如下圖。由圖可見,它近似于阻帶內增益變化極為緩慢近于恒定的高通濾波器。進一步分析可知,該曲線在頻率很高處有大幅度的下降,故可用帶通濾波器來擬合該曲線,由于受單片機數據運算處理能力的限制,數字濾波不易實現,故這里采用硬件濾波,濾波電路如下圖。圖4.11 函數分析圖圖4.12 濾波電路該濾波網絡采用簡單的無源濾波網絡即可實現,圖中、在頻率較高處有大幅度的衰減,故該網絡還應滿足在頻率較高處的衰減特性,考慮到對于聲音信號,過多的高頻分量只能增加噪聲,所以

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論