低頻信號分析儀 電子設(shè)計(jì)報(bào)告_第1頁
低頻信號分析儀 電子設(shè)計(jì)報(bào)告_第2頁
低頻信號分析儀 電子設(shè)計(jì)報(bào)告_第3頁
低頻信號分析儀 電子設(shè)計(jì)報(bào)告_第4頁
低頻信號分析儀 電子設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、2012年春季西南交通大學(xué)大學(xué)生電子設(shè)計(jì)競賽設(shè)計(jì)報(bào)告低頻信號分析儀2012年5月3日低頻信號分析儀摘要 本文介紹了一種基于單片機(jī)的低頻信號分析儀的設(shè)計(jì)。該設(shè)計(jì)主要由四個(gè)模塊組成:飛思卡爾單片機(jī)控制芯片,tft彩頻顯示及觸摸選擇,信號放大比較以及電源模塊。信號經(jīng)由op37過零比較器中斷部分,mc9s12xs128內(nèi)部a/d轉(zhuǎn)換把采集到的模擬量轉(zhuǎn)換為相應(yīng)的數(shù)字量在傳送到數(shù)據(jù)處理模塊,經(jīng)過一定的數(shù)據(jù)處理,產(chǎn)生相應(yīng)的顯示碼送到顯示模塊進(jìn)行顯示。該系統(tǒng)的低頻信號分析儀電路簡單,所用的元件較少,成本低,且測量精度和可靠性較高。此低頻信號分析儀可以測量分析電壓峰峰值vpp為10mv-10v,頻率為10hz-

2、400khz的交流信號,并可分辨顯示正弦波,三角波,方波的頻率和幅值,頻率誤差小于1%,峰值誤差小于0.5%,具有較高的準(zhǔn)確性。 關(guān)鍵詞 飛思卡爾單片機(jī);ad采樣;過零比較器;tft顯示(觸摸屏)引言單片機(jī)是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器cpu隨機(jī)存儲器ram、只讀存儲器rom、多種i/o口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能(可能還包括顯示驅(qū)動電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、a/d轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。單片機(jī)因?yàn)轶w積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),被廣泛應(yīng)用于儀器儀表中。目前市場上

3、的便攜式儀表大多都是以單片機(jī)為核心。 顯示部分采用tft彩頻顯示,以觸屏代替按鍵,簡單方便,與時(shí)俱進(jìn)。1設(shè)計(jì)總體方案1.1設(shè)計(jì)要求 在輸入交流信號電壓峰峰值vpp為500m v5v,頻率范圍為50hz50khz條件下,完成以下參數(shù)測試;(1) 正弦波,三角波和方波頻率測試,測量誤差小于1%;(2) 正弦波,三角波和方波幅度測試,測量誤差小于3%;(3) 具有數(shù)字顯示功能(如信號頻率、峰值等)。1.2 設(shè)計(jì)思路(1)根據(jù)設(shè)計(jì)要求,選擇飛思卡爾mc9s12x128單片機(jī)為核心控制器件。(2)信號的放大整形用op37進(jìn)行過零比較(3)顯示采用觸摸式的tft彩頻顯示。1.3 設(shè)計(jì)方案硬件電路設(shè)計(jì)由4個(gè)

4、部分組成; 放大比較電路,ms12x128單片機(jī)系統(tǒng),tft顯示系統(tǒng)、電壓輸入電路。硬件電路設(shè)計(jì)框圖如圖1所示。 電源模塊液晶顯示信號放大和比較mc9s12x128單片機(jī)圖1從圖中可以看出,單片機(jī)控制的有低頻信號分析儀的主要功能模塊分為4類:l 液晶顯示:是指在單片機(jī)的控制下,液晶模塊顯示被測信號的頻率與有效值。l 電源模塊:為單片機(jī)和液晶顯示器提供工作電源。l 放大比較:對信號進(jìn)行整波并將微小交流電壓量放大。l 放大模塊:。單片機(jī)電路主要是通過編寫程序來控制硬件電路。因此,可以通過改變程序,提高測量精度。二、硬件電路設(shè)計(jì)2.1 單片機(jī)系統(tǒng)2.1.1 mc9s12x128單片機(jī)采用飛思卡爾單片

5、機(jī)嵌入式開發(fā)系統(tǒng)。mc9s12xs128具有59個(gè)i/o口,能滿足各部分對i/o口的需求 mc9s12x128功能性能:總線寬度:16位指令集結(jié)構(gòu):hcs12系列:s12xs可編程輸入輸出端口:91程序存儲類型:flash程序存儲量:128kbeeprom:其它數(shù)據(jù)ram大小:8kb時(shí)鐘頻率max:40mhz接口類型:can/sci/spi計(jì)時(shí)器數(shù):12片內(nèi)adc:8x12位片內(nèi)dac:其它電壓:其它工作溫度:-40125封裝:pqfp-802.1.2 mc9s12x128各引腳圖5 mc9s12x128的引腳圖2.2 tft顯示系統(tǒng)設(shè)計(jì)2.2.1 tft基本結(jié)構(gòu)tft屏幕:tft(thin

6、film transistor薄膜晶體管)是有源矩陣類型液晶顯示器(am-lcd)中的一種, tft在液晶的背部設(shè)置特殊光管,可以“主動”對屏幕上的各個(gè)獨(dú)立的像素進(jìn)行控制,這也就是所謂 的主動矩陣tft(active matrix tft)的來歷,這樣可以大大提高反應(yīng)時(shí)間,一般tft的反應(yīng)時(shí)間比 較快,約80ms,而stn則為200ms。如果要提高就會有閃爍現(xiàn)象發(fā)生。而且由于tft是主動式矩陣lcd可 讓液晶的排列方式具有記憶性,不會在電流消失后馬上恢復(fù)原狀。tft還改善了stn 會閃爍(水波紋) 模糊的現(xiàn)象,有效地提高了播放動態(tài)畫面的能力。與stn相比tft有出色的色彩飽和度、還原能力和更

7、高的對比度,但是缺點(diǎn)就是比較耗電,而且成本也比較高。2.3放大和比較模塊op37芯片是一種低噪聲,非斬波穩(wěn)零的雙極性運(yùn)算放大器集成電路。由于op07具有非常低的輸入失調(diào)電壓(對于op07a最大為25v),所以op07在很多應(yīng)用場合不需要額外的調(diào)零措施。op07同時(shí)具有輸入偏置電流低(op07a為±2na)和開環(huán)增益高(對于op07a為300v/mv)的特點(diǎn),這種低失調(diào)、高開環(huán)增益的特性使得op07特別適用于高增益的測量設(shè)備和放 大傳感器的微弱信號等方面。 op07管腳圖op37特點(diǎn): 超低偏移: 150v最大。 低輸入偏置電流: 1.8na 。低失調(diào)電壓漂移: 0.5v/ 。 超穩(wěn)定

8、,時(shí)間: 2v/month最大高電源電壓范圍: ±3v至±22v op07芯片引腳功能說明: 1和8為偏置平衡(調(diào)零端),2為反向輸入端,3為正向輸入端,4接地,5空腳 6為輸出,7接電源+ absolute maximum ratings 最大額定值三、系統(tǒng)的軟件設(shè)計(jì)軟件調(diào)試主要是編寫相應(yīng)的程序,在電路仿真軟件上仿真,直至到預(yù)期效果。1.程序框圖主程序及各子程序的框圖見圖。開始初始化 被測信號輸入測量電壓和頻率顯示結(jié)束 主程序框圖 lcd程序流程圖2.程序清單根據(jù)程序流程圖,編寫相應(yīng)的子程序和主程序。程序清單見附錄3。四測試數(shù)據(jù)正弦波20hz50hz幅值有效值頻率幅值有效

9、值頻率10mv50100mv20200mv204000.19370.1569200.19370.1563505000.23450.1736200.23450.1738506000.29960.1956200.29560.1974501v0.50980.3598200.50980.3602502v1.01020.7003201.01010.70015031.51021.0491201.50911.05015042.03071.4108202.03051.41055052.49961.7483202.49961.74985063.03142.1121203.03052.11055073.52042

10、.4701203.52012.47015084.03092.8213204.03052.82055094.54033.1721204.54053.1705501053.432053.4750500hz10k100k幅值有效值頻率幅值有效值頻率幅值有效值頻率0.05090.03095000.05090.0305100000.05090.030899.99k0.09170.05175000.09170.0517100000.09170.051699.99k0.19370.15455000.19370.1437100000.19380.143999.99k0.23490.17495000.23490

11、.1749100000.23470.17599.99k0.29960.19565000.29960.1956100000.29970.195999.99k0.50980.35985000.50980.3598100000.50980.359899.99k10.685001.010.68100001.03010.69599.99k1.49961.03965001.49941.0398100001.50421.040599.99k21.41015002.0051.41100002.01131.410499.99k2.49961.72965002.47921.7292100002.48981.732

12、199.99k32.095003.00212.0895100003.01072.100399.99k3.49962.43965003.49952.4394100003.49952.439499.99k42.785003.98922.781000042.7999.99k4.49963.15985004.48993.1586100004.5013.159899.9953.4950053.491000053.4999.99k100k200k幅值有效值頻率幅值有效值頻率0.05090.030899.99k1999870.09170.051699.99k0.09170.05171999870.19380

13、.143999.99k0.1958023470.17599.99k0.2367029970.195999.99k0.29980.19591999870.50980.359899.99k0.50980.35981999871.03010.69599.99k0.10310.6971999871.50421.040599.99k1.50211.04031999872.01131.410499.99k2.01241.41021999872.48981.732199.99k2.49591.73041999873.01072.100399.99k3.01

14、022.98171999873.49952.439499.99k3.49952.439419998742.7999.99k4.00112.791999874.5013.159899.994.49983.159419998753.4999.99k53.49199987方波20hz50hz幅值有效值頻率幅值有效值頻率10mv50mv2050400mv0.19370.1937200.19380.193850500mv0.25490.2549200.25490.2549501v0.50980.5098200.50980.5098505v2.45882.4588202.45882.45885010v4.

15、9284.928204.91274.912750500hz10k幅值有效值頻率幅值有效值頻率999050099900.19370.19375000.19370.193799900.25490.25495000.25490.254999900.50980.50985000.50980.509899902.45882.45885002.45882.458899904.91134.91135004.90764.90769990100k200k幅值有效值頻率幅值有效值頻率999901998600.19370.1937999900.19860.19861998600.25490.2549999900.2

16、510.2511998600.50980.5098999900.54050.54051998602.45882.4588999901.48761.48761998604.90374.9037999904.98254.9825199860三角波20hz50hz幅值有效值頻率幅值有效值頻率10mv50mv2050100mv0.05090.0105*200.050950400mv200.19370.113750500mv0.25490.1749200.25490.1749501v0.49960.3598200.49960.2998505v2.4588202.45881.49965010v4.9892

17、3.4172204.98922.906450100k200k幅值有效值頻率幅值有效值頻率0.05090.0309999300.05090.03091998750.19370.1137999300.19370.11371998750.25490.1749999300.2549049960.2996999300.49960.29961998752.45881.4788999302.45881.47921998754.70372.8237999304.88292.9033199875500hz10k幅值有效值頻率幅值有效值頻率50099905000.05090.030999

18、900.19370.11375000.19370.113799900.25490.17495000.25490.174999900.50980.29985000.49960.299699902.45881.47885002.45881.473699904.94842.96885004.94842.96849990五心得體會在這次電子設(shè)計(jì)競賽中我們使用了mc9s12x128單片機(jī)。這讓我對于單片機(jī)有了更多的了解。同時(shí)在找資料的過程中學(xué)到了許多單片機(jī)課本上沒有講到的知識。在這次電子設(shè)計(jì)競賽過程中,我們通過在原有的輸入系統(tǒng)進(jìn)行了改進(jìn),使之測量頻率和電壓有效值精度更高,使之成為一個(gè)更加適用,功能更加完

19、備的屬于自己的一個(gè)系統(tǒng)。在這個(gè)過程中讓我對于c語言的編寫有了更深入的體會。在這次電子設(shè)計(jì)競賽中,雖然花費(fèi)了大量的時(shí)間和精力,但我卻學(xué)到了許多在理論課程中無法學(xué)到的知識。最重要的是讓我懂得了合作的重要性,學(xué)會了如何與人更好的合作。六、參考文獻(xiàn)1李廣弟.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,19942閻石.數(shù)字電子技術(shù)基礎(chǔ)(第三版). 北京:高等教育出版社,1989 1版 3張毅剛等編著.單片機(jī)原理及應(yīng)用. 北京:高等教育出版社.2004年1月第1版附錄1 電路簡圖電壓電路圖附錄2 元器件清單 元器件描述數(shù)量 mc9s12x128單片機(jī)1液晶顯示器tft1電阻1003電容47uf4晶振11.0

20、592mhz1電路板210mm銅柱10mm12op37比較器1電位器103,1046撥碼開關(guān)6合11指示燈紅色1二極管in40074附錄3 程序清單:#include <hidef.h> /* common defines and macros */#include "derivative.h" /* derivative-specific definitio */#include "lcd.h" #include"panel.h" /* lcd color */#define white 0xffff#define bl

21、ack 0x0000#define blue 0x001f#define blue2 0x051f#define red 0xf800#define magenta 0xf81f#define green 0x07e0#define cyan 0x7fff#define yellow 0xffe0extern unsigned int tp_x,tp_y; /當(dāng)前觸控坐標(biāo)unsigned int g_speed;unsigned int count=0,duibi=0; long caiyang; void setbusclk_80m(void) clksel=0x00; /disengage

22、 pll to system pllctl_pllon=1; /turn on pll synr =0xc0 | 0x05; refdv=0x80 | 0x01; postdiv=0x00; /pllclock=2*osc*(1+synr)/(1+refdv)=96mhz; _asm(nop); /bus clock=48m _asm(nop); while(!(crgflg_lock=1); /when pll is steady ,then use it; clksel_pllsel =1; /engage pll to system; void tim_init(void) /脈沖pt7

23、初始化 pactl = 0x40; /脈沖計(jì)數(shù) 下降沿 pacnt = 0x0000; / pulse accumulators count registers (pacnt) pitcflmt_pite=0; pitce_pce0=1; pitmtld0=480-1; /10us pitld0=100; /1ms pitmux=0x00; pitinte_pinte0=1; pitcflmt_pite=1; tflg1=0xff;/清中斷標(biāo)志位 void init(void) ddre = 0xff; ddrb = 0xff; ddra = 0x0f; setbusclk_80m();cs=

24、1;delayms(5);res=0;delayms(5);res=1;delayms(5);ili9325_initial();spistar(); /模擬spi初始化 void ad_init(void) atd0ctl1=0x00; /7:1-外部觸發(fā),65:00-8位精度,4:放電,3210:ch atd0ctl2=0x40; /禁止外部觸發(fā), 中斷禁止 atd0ctl3=0xa0; /右對齊無符號,每次轉(zhuǎn)換4個(gè)序列, no fifo, freeze模式下繼續(xù)轉(zhuǎn) atd0ctl4=0x01; /765:采樣時(shí)間為4個(gè)ad時(shí)鐘周期,atdclock=busclock*0.5/prs+1

25、atd0ctl5=0x30; /6:0特殊通道禁止,5:1連續(xù)轉(zhuǎn)換 ,4:1多通道輪流采樣 atd0dien=0x00; /禁止數(shù)字輸入 /- void dly_ms(int ms) int ii,jj; if (ms<1) ms=1; for(ii=0;ii<ms;ii+) for(jj=0;jj<2670;jj+); /busclk:16mhz-1ms byte readatd(byte ch) byte ad=0; while(!atd0stat0_scf); switch(ch) default: case 0: ad= atd0dr0l; break; case 1

26、: ad= atd0dr1l; break; case 2: ad= atd0dr2l; break; case 3: ad= atd0dr3l; break; case 4: ad= atd0dr4l; break; case 5: ad= atd0dr5l; break; case 6: ad= atd0dr6l; break; case 7: ad= atd0dr7l; break; return ad; void main(void) unsigned char ss6; unsigned int lx,ly,k,h; unsigned int ad_val; unsigned int

27、 gewei,xiao1,xiao2,xiao3,xiao4; unsigned int ygewei,yxiao1,yxiao2,yxiao3,yxiao4; unsigned char tempdata6; unsigned int caizh=0; unsigned char i=0; long fraq; enableinterrupts; init(); tim_init(); ad_init(); clearscreen(blue); lcd_putstring(10,20,"低頻信號分析儀",red,blue); dly_ms(20); lcd_putstri

28、ng(0,100,"頻率",red,blue); dly_ms(20); lcd_putstring(200,100,"hz ",red,blue); dly_ms(20); lcd_putstring(0,140,"幅度",red,blue); dly_ms(20); lcd_putstring(200,140,"v",red,blue); dly_ms(20); lcd_putstring(0,180,"有效值",red,blue); dly_ms(20); lcd_putstring(20

29、0,180,"v",red,blue); dly_ms(20); lcd_putstring(0,220,"信號類型",red,blue); dly_ms(20); lcd_putstring(140,220,"正弦波",green,blue); dly_ms(20); / dispicture(10,10,70,90); while(1) fraq=g_speed; fraq = fraq*10; tempdata0='0'+fraq/100000; tempdata1='0'+(fraq/10000

30、)%10; tempdata2='0'+(fraq/1000)%10; tempdata3='0'+(fraq/100)%10; tempdata4='0'+(fraq/10)%10; tempdata5='0'+fraq%10; lcd_putstring(80,100,tempdata,red,blue); duibi = 0; for(i=0;i<100;i+) ad_val=readatd(0);/參考電壓5v, if(ad_val>duibi) duibi = ad_val; / if(ad_val<5

31、) ad_val=3; gewei = (ad_val)/51; xiao1 = (ad_val%51)*100/51)/10; xiao2 = (ad_val%51)*100/51)%10; xiao3 = (ad_val%51)*100/51)%51)*100/51)/10; xiao4 = (ad_val%51)*100/51)%51)*100/51)%10; tempdata0='0'+gewei; tempdata1='.' tempdata2='0'+xiao1; tempdata3='0'+xiao2; tempda

32、ta4='0'+xiao3; tempdata5='0'+xiao4; lcd_putstring(80,140,tempdata,red,blue); dly_ms(100); caiyang = 0; for(caizh=0;caizh<10000;caizh+) caiyang+=readatd(0); / dly_ms(2); caiyang = caiyang/10000; ad_val = duibi; if(duibi*40/100)<caiyang) lcd_putstring(140,220,"方類波",gree

33、n,blue); dly_ms(1000); ygewei = (ad_val*5/10)/51; yxiao1 = (ad_val*5/10)%51)*100/51)/10; yxiao2 = (ad_val*5/10)%51)*100/51)%10; yxiao3 = (ad_val%51)*100/51)%51)*100/51)/10; yxiao4 = (ad_val%51)*100/51)%51)*100/51)%10; tempdata0='0'+ygewei; tempdata1='.' tempdata2='0'+yxiao1; tempdata3='0'+yxiao2; tempdata4='0'+yxiao3; tempdata5='0'+yxiao4; lcd_putstring(100,180,tempdata,red,blue); else if(duibi*30/100)>caiyang) lcd_putstring(140,220,"三角波",green,blue); dly_ms(1000); ygewei = (ad_val*6/10)/51; yxiao1 = (ad_val*6/10)%5

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論