版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、波形發(fā)生器作者:凌陽大學 文章來源:凌陽大學計劃網(wǎng)站 點擊數(shù):344 更新時間:2007-1-18 摘要 關鍵詞: SPCE061A單片機 波形發(fā)生器單片機是實現(xiàn)各種控制策略和算法的載體。由臺灣凌陽公司生產的SPCE系列單片機,因其功耗低,超小型,低成本,功能完整,非常適用于便攜式儀表和就地式顯示控制儀表,在國內越來越受到用戶的重視和廣泛的應用。SPCE061A單片機功能強大,其片內含有
2、八路十位A/D轉換器和兩路D/A轉換器,該波形發(fā)生器運用單片機技術,通過巧妙的軟件設計和簡易的硬件電路,產生數(shù)字式的正弦波、方波、斜波等幅值可調的信號。信號頻率,可通過鍵盤輸入,并顯示。與現(xiàn)有各類型波形發(fā)生器比較而言,產生的數(shù)字信號干擾小,輸出穩(wěn)定,可靠性高,特別是操作簡單方便,人機界面友好,成本低,非常適合于物理實驗室教學與實驗使用。 SPCE061A單片機概述SPCE061A是繼u'nSP系列產品SPCE500A等之后凌陽科技推出的又一個16位結構的微控制器。目前有兩種封裝形式:84引腳的PLCC84封裝和80引腳的LQFP80貼片封裝。主要性能如下:16位m
3、nSP微處理器;工作電壓:VDD為2.43.6V(cpu), VDDH為2.45.5V(I/O);CPU時鐘:32768Hz49.152MHz ;內置2K字SRAM、內置32K FLASH;可編程音頻處理;32位通用可編程輸入/輸出端口;32768Hz實時時鐘,鎖相環(huán)PLL振蕩器提供系統(tǒng)時鐘信號;2個16位可編程定時器/計數(shù)器(可自動預置初始計數(shù)值);2個10位DAC(數(shù)-模轉換)輸出通道;7通道10位電壓模-數(shù)轉換器(ADC)和單通道語音模-數(shù)轉換器;聲音模-數(shù)轉換器輸入通道內置麥克風放大器自動增益控制(AGC)功能;系統(tǒng)處于備用狀態(tài)下(時鐘處于停止狀態(tài))耗電小于2mA3.6V;具備觸鍵喚醒
4、的功能;14個中斷源:定時器A / B,2個外部時鐘源輸入,時基,鍵喚醒等;使用凌陽音頻編碼SACM_S240方式(2.4K位/秒),能容納210秒的語音數(shù)據(jù);具備異步、同步串行設備接口;具有低電壓復位(LVR)功能和低電壓監(jiān)測(LVD)功能;內置在線仿真電路接口ICE(In- Circuit Emulator); 具有保密能力;具有WatchDog功能(由具體型號決定)一、方案設計與論證 方案一:本方案直接采用凌陽SPCE061A作為波形發(fā)生器。波形的具體產生是通過兩路DAC來產生,凌陽SPCE061A在這方面的設計為我們提供了極大的方便,用它實現(xiàn)的好處在于,外圍電路極其
5、簡單,另外在DAC的編程方面又提供及其便利的編程環(huán)境。外圍電路的設計包括三大部分,第一是鍵盤控制電路的設計,這里采用4*4鍵盤,由IOA的低八位進行控制,把鍵盤上的行和列分別接在IOA0IOA3和IOA4IOA7上,采用外部中斷二來中斷所顯示波形,以便進入下一波形的編輯和輸出,在波形輸出的同時利用外部中斷一來實現(xiàn)同步的頻率調節(jié)。第二是顯示電路的設計,這里為了在波形輸出依然有顯示,由于單片機的局限性這里采用通常的動態(tài)LED顯示行不通,因為波形輸出時要求CPU不停地為其服務而沒有空閑來為LED進行不停更新,解決方案是采用帶數(shù)據(jù)緩存器和驅動的LCD來提供顯示,這樣只占用八個I/O口即可完成設計要求,
6、也可放棄適時顯示功能采用LED顯示,這里將提供兩種顯示方案。第三是濾波和電壓轉換電路的設計,濾波采用低通濾波器,濾除DAC轉換過程中形成的高頻小鋸齒波。另外由于凌陽SPCE061A單片機DAC輸出為電流輸出,為滿足達到5V的電壓輸出,外接OP07運算放大器進行放大,加1千歐姆電阻進行電流信號到電壓信號的轉換。本設計的特點是全面采用數(shù)字電路方案,因而工作穩(wěn)定可靠。利用單片機控制管理,使頻率設置和占空比調整等操作可用鍵盤輸入,十分方便。方案二:本設計方案采用功能很強的大規(guī)模數(shù)字頻率合成器MC145151和多波形寬頻率范圍信號發(fā)生器MAX038 等新器件產生波形和頻率,控制與管理電路部分使用SPCE
7、061A單片機以及鍵盤顯示電路。MAX038是一個精密高頻波形產生器。它能產生頻率高達20MHz的正弦波、三角波、方波等脈沖信號,其壓控振蕩器的頻率分粗調和細調兩層控制。在本電路中,用于粗調的控制電壓(電流)由一個12位的DAC產生,使輸出頻率近似等于N倍基準頻率。而細調電壓則由數(shù)字鎖相電路MC145151和環(huán)路濾波器MAX427產生,由鎖相反饋環(huán)將頻率fo = Nfr鎖定。這種方案的優(yōu)點是頻率合成器工作更可靠,鎖定更迅速。另外MAX038還包括占空比調整電路、波形同步電路、相位檢測電路、波形切換開關和電壓基準源等電路,所需外部元件少,使用很方便。控制和管理電路由SPCE061A單片機及外圍電
8、路組成。其主要用于對鍵盤輸入的波形和頻率選擇等數(shù)據(jù)進行譯碼,計算出相應的控制參數(shù),控制頻率合成器輸出正確的信號,并將其頻率和波形參數(shù)用LED顯示出來。對于小型通用信號產生器而言,這是一個比較理想的設計方案。方案比較: 第一種方案設計外圍電路簡單,能夠滿足電子大賽設計的要求,這里考慮到短時間內設計既要成型,采用第一種方案。第二種方案的設計比較完善,由于用到專門的波形發(fā)生芯片,產生的波形比較完美,但外圍電路復雜,適合于作波形發(fā)生器的產品設計方案。 二、系統(tǒng)硬件電路設計2.1電路方框圖及說明 圖1整體框圖 2.2各部分電路設計2.2. 1濾波、放大及其電流
9、到電壓的轉換電路電路本系統(tǒng)采用二階壓控電壓源低通濾波器,如圖2所示。它由兩節(jié)RC濾波器和同向放大電路組成。其中同相放大實際上就是所謂的壓控電壓源,它的電壓增益就是低通濾波器的通帶電壓增益,即:A0=Avf=1+Rf/R1 圖2濾波電路 傳遞函數(shù)由圖電路可知,運放同相端輸入電壓為: (1) 而Vp(s)與Va(s)的關系為: Vp(s)= Va(s)/(1+sRC) (2) 對于節(jié)點A,由節(jié)點電流法可得 Vi(s)/R- Va(s)/R - Va(s)- V0(s)sC- Va(
10、s)/R- Vp(s)/R=0 (3) 將式(1)、(2)和(3)連立求解,可得電路的傳遞函數(shù)為 A(s)=V0(s)/ Vi(s)= Avf/1+(3- Avf)sRC+sRC*sRC (4) 式(4)為二階低通濾波器傳遞函數(shù)的表達式。其中1/RC為特征頻率,而 1/(3- Avf)為等效品質因數(shù)。截止頻率為1/RC。通過設置R、C可調節(jié)帶通到我們需要的范圍。另外調節(jié)Rf可調節(jié)幅度到我們需要的范圍。 2.2.2鍵盤控制電路電路在單片機中所需按鍵較少,多采用獨立式鍵盤。此種鍵盤結構簡單,每
11、只按鍵接單片機的一條I/O線,通過查詢即可示別出每只按鍵的狀態(tài)來。但由于本系統(tǒng)按鍵較多,在這里采用矩陣式排列鍵盤,如圖3所示,這樣可以合理應用硬件資源,把16只按鍵排列成4*4矩陣形式,用一個8位I/O口控制,如圖所示。把鍵盤上的行和列分別接在IOA0IOA3和IOA4IOA7 圖3 按鍵控制電路上。先置IOA0IOA3為帶數(shù)據(jù)緩存器的高電平輸出,置IOA4IOA7為帶下拉電阻的輸管腳,此時若有鍵按下,取IOA4IOA7的數(shù)據(jù)將得到一個值,把此值保存下來,再置IOA4IOA7為帶數(shù)據(jù)反相器的高電平輸出,置IOA0IOA3為帶下拉電阻的輸入管腳,此時若鍵仍沒彈起,取IOA0I
12、OA3的數(shù)據(jù)將得到另一個值,把這兩個值組合就可得知是哪個鍵按下了,再通過查表得到鍵值。 2.2.3顯示電路電路為了給廣大單片機愛好者提供方便,在顯示電路的設計方面提供兩種方案,第一種是采用四個LCD進行適時顯示,這是比較理想的方案,但由于LCD成本較高,這里還提供另一種方案,用六個LED進行顯示,這種方案的缺點是不能適時顯示,但也能滿足一般設計要求。 第一種方案采用四個LCD進行動態(tài)顯示,輪流顯示波形和頻率,直接用SPCE061A驅動液晶顯示器,要占用較多的I/O口,這里采用ICM7211M來驅動,這樣不僅節(jié)省I/O口而且減化了編程。用數(shù)字代表各種波形,顯示波形的粗調頻率
13、。用IOA9IOA10口作為位選控制, IOA8口作為ICM7211M的片選信號,IOA11IOA14作為數(shù)據(jù)線。數(shù)據(jù)線和位選線直接接凌陽SPCE061A單片機的I/O口即可, 圖4LCD顯示電路 第二種方案采用六個共陰極數(shù)碼管LED進行動態(tài)顯示波形和頻率,直接用SPCE061A直接驅動LED,兩位提供波形顯示,四位提供頻率顯示。用IOB8IOB13口作為位選控制, IOA8IOA14口傳輸要顯示的數(shù)據(jù),數(shù)據(jù)線和位選線直接接凌陽SPCE061A單片機的I/O口即可,因為I/O口輸出電流很小不會對LED造成損壞,它的電壓值卻足以驅動LED,這不像別的單片機還要外接驅動電路和電阻,采用凌陽SPCE
14、061A單片機大大減化了設計過程和硬件電路。硬件電路如圖5所示。 圖5LED顯示電路 2.2.4語音播報電路的設計電路 凌陽的SPCE061A是16位單片機,具有DSP功能,有很強的信息處理能力,最高時鐘可達到49M,具備運算速度高的優(yōu)勢等等,這為語音的播放、錄放、合成及辨識提供了條件。另外SPCE061A單片機具有32k閃存,事先把所需要的語音信號錄制好,整個語音信號經凌陽SACM_S480壓縮算法壓縮只占有13.2K存儲空間,對凌陽SPCE061A單片機的存儲系統(tǒng)來說綽綽有余。凌陽SPCE061A單片機自帶雙通道DAC音頻輸出, DAC1、DAC
15、2轉換輸出的模擬量電流信號分別通過AUD1和AUD2管腳輸出, DAC輸出為電流型輸出,經LM396音頻放大,即可驅動喇叭放音,放大電路如圖6(只列出了DAC1,DAC2類似)。在DAC1、DAC2后面接一個簡單的音頻放大電路和喇叭就能實現(xiàn)語音播報功能,這為單片機的音頻設計提供了極大方便,音頻的具體功能主要通過程序來實現(xiàn)。 圖6音頻放大電路 三、軟件設計3.1主程序流程圖由于使用凌陽SPCE061A使外圍電路變得異常簡單,整個波形發(fā)生器的主體任務落到了程序編寫上。整個系統(tǒng)的軟件設計方案如圖7,采用外部中斷二來中斷所顯示波形,以便進入下一波形的編輯和輸出,在波形輸出的同時利用
16、外部中斷一來實現(xiàn)同步的頻率調節(jié)。波形的具體產生是通過兩路DAC來產生,之所以采用這種方式,是因為凌陽SPCE061A在這方面的設計為我們提供了極大的方便,在DAC的編程方面又提供了及其便利的編程環(huán)境。用函數(shù)來產生波形是大多數(shù)設計者喜之不舍得設計方案,但在具體設計方面,因為函數(shù)在單片機的運算過程中占據(jù)了太多的時鐘周期,這就給我們追求高頻波形一個瓶頸,要怎樣解決這個問題呢?這里我采用查表來實現(xiàn),根據(jù)理論凌陽SPCE061A單片機可達到一百兆的要求,這就能充分滿足題目設計要求了,然而,由于函數(shù)產生波形極其方便,凌陽SPCE061A單片機有提供了大量函數(shù)庫,在設計過程中我在低頻部分依然采用函數(shù)設計。另
17、外,波形頻率隨CPU的頻率而變法,凌陽SPCE061A單片機的32768的實時時鐘經過PLL倍頻電路產生系統(tǒng)時鐘頻率(Fosc),F(xiàn)osc再經過分頻得到CPU時鐘頻率(CPUCLK)可通過對P_SystemClock(寫)($7013H)單元編程來控制,這就為我們設計提供了豐富的CPU時鐘選擇。默認的Fosc、CPUCLK分別為24.576MHz和Fosc/8。我們可以通過對P_SystemClock單元編程完成對系統(tǒng)時鐘和CPU時鐘頻率的定義,改變設置將可提供多種頻率選擇。在本設計中,波形編輯的第一部就是進行CPU頻率選擇,選擇最高頻和最低頻作為粗調,在用鍵盤和中斷進行微調,以便達到所需的頻
18、率及其幅值。下面將對各部分編程作詳細說明。 圖7整體流程圖 3.2分塊程序流程 按鍵控制部份在鍵掃描的過程中,先置IOA0IOA3為帶數(shù)據(jù)緩存器的高電平輸出,置IOA4IOA7為帶下拉電阻的輸入管腳,此時若有鍵按下,取IOA4IOA7的數(shù)據(jù)將得到一個值,把此值保存下來,再置IOA4IOA7為帶數(shù)據(jù)反相器的高電平輸出,置IOA0IOA3為帶下拉電阻的輸入管腳,此時若鍵仍沒彈起,取IOA0IOA3的數(shù)據(jù)將得到另一個值,把這兩個值組合就可得知是哪個鍵按下了,再通過查表得到鍵值,跳轉至相應程序段,執(zhí)行輸出相應波形或者編輯波形,從而達到控制波形的目的。整體按鍵過程如圖8所
19、示。 圖8按鍵控制流程圖 正弦波形的形成 在設計之初,我一直都在嘗試使用函數(shù)來計算輸出波形,使用這種方法,在示波器上得到了很好的波形,但是在CPU時鐘頻率沒調至最高的情況下,所得到的頻率只是多少毫赫茲到幾十赫茲之間,基本上沒有實用價值。要達到更高的頻率,就得另辟蹊徑了。分析一下為什么頻率上不去,主要原因在于,使用單片機進行正弦函數(shù)的運算時占去了不少時間,如果去掉這一計算過程波形的頻率應該大有提高,另外就是CPU時鐘頻率沒有調至最高,以及DAC轉換過 圖9正弦波形查表形成流程圖 程需要時間。為了達到更高的頻率,首先就要免去單片機的計算負擔,我使用的解決方
20、法是人為計算出要輸出的點,然后建一個表通過查表來進行輸出,這樣主要工作任務就落到了建表的過程中。這樣做的好處在于,查表所耗費的時鐘周期相同,這樣輸出的點與點之間的距離就相等了,輸出的波形行將更趨于完美,當然更讓我們感到的高興的是它輸出波形的頻率將近達到了100K赫茲,能夠滿足我們設計的擴展要求了。為了實現(xiàn)頻率的調整,我在一個正弦波周期里建了兩百個點,如果我們隔一個取點的話,且在CPU時鐘頻率不改變的情形下,正弦波頻率將相對于前面的頻率提高將近一倍。這樣我們就得到了解決頻率調整的方法,首先進行CPU時鐘頻率選擇,再調整一個正弦函數(shù)一個周期輸出的點數(shù),幅度的調節(jié)是通過初始幅度設置再通過外部放大電路
21、來調節(jié),設計程序流程圖如圖所示。另外,由于函數(shù)產生波形及其方便,凌陽SPCE061A單片機又提供了大量函數(shù)庫,在設計過程中我在低頻部分依然采用函數(shù)設計,因為這更有利于數(shù)字幅度和頻率的調節(jié)。設計程序流程圖如圖9和10所示。 圖10正弦函數(shù)計算形成波形流程圖 三角波、鋸齒波的形成 三角波、鋸齒波形成的原理同正弦波形成的原理大致相同,在這里將不做作詳細介紹,其流程圖如圖11所示。圖11三角波查表形成流程圖 方波的形成和實現(xiàn) 方波是我們最常用的一種波形,并且常常作為一種標準信號應用在各個領域,凌陽SPCE061A提供了一種很好的方波發(fā)生機制,就是APWM調制,
22、通過寫入P_TimerA_Ctrl($700BH)單元的第69位,可選擇設置APWM輸出波形的脈寬占空比;同理,寫入P_TimerB_Ctrl($700DH)單元的第69位,便可選擇設置BPWM輸出波形的脈寬占空比。我們可以將IOB8設置成同相輸出端口,通過設置P_TimerA_Ctrl(寫)($700BH)的第05位來選擇TimerA的時鐘源(時鐘源A、B)。設置該單元的第69位(如圖12所示),TimerA將輸出不同頻率的脈寬調制信號,即對脈寬占空比輸出APWM進行控制。這里為了得到最標準的波形采用這種方式來實現(xiàn)標準方波。如圖12所示就是我們進行APWM調制的原理圖。圖12APWMO信號時序圖 在某些應用領域由于各種干擾和響應的存在,實際電路往往存在各種信號缺陷和瞬變信號,為了滿足各種需要我們還設計了有頻率突變的方波,如圖11所示。具體設計方案是采用不停的輸出和停止輸出某一幅度的值,在一個序列周期我們總共提供八位可變數(shù)值,因為在數(shù)據(jù)傳輸過
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 進修完畢出科心得體會2000字(13篇)
- 板式換熱器安裝施工方案
- 2025年時尚雜志排版印刷設計制作委托合同3篇
- 課程設計面包板
- 二零二五年度美縫施工項目合同糾紛解決協(xié)議4篇
- 2024年新疆安全員C證考試題庫附答案
- 二零二五版體育賽事贊助與冠名權合同4篇
- 二零二五年度生態(tài)公園施工合同補充協(xié)議2篇
- 銷售管理什么課程設計
- 2024版離婚民政局離婚協(xié)議書
- 小兒甲型流感護理查房
- 霧化吸入療法合理用藥專家共識(2024版)解讀
- 拆遷評估機構選定方案
- 趣味知識問答100道
- 鋼管豎向承載力表
- 2024年新北師大版八年級上冊物理全冊教學課件(新版教材)
- 人教版數(shù)學四年級下冊核心素養(yǎng)目標全冊教學設計
- 三年級下冊口算天天100題(A4打印版)
- CSSD職業(yè)暴露與防護
- 移動商務內容運營(吳洪貴)項目三 移動商務運營內容的策劃和生產
- GB/T 2462-1996硫鐵礦和硫精礦中有效硫含量的測定燃燒中和法
評論
0/150
提交評論