導航:首頁 > 裝置知識 > 波形測量裝置怎麼設計

波形測量裝置怎麼設計

發布時間:2023-01-07 12:36:31

A. 設計並製作一個信號頻率測量儀。。。

頻率測定儀,是一種專門對被測信號頻率進行測量的電子測量儀器。其最基本的工作原理為:當被測信號在特定時間段T內的周期個數為N時,則被測信號的頻率f=N/T。
頻率測定儀主要由四個部分構成:時基(T)電路、輸入電路、計數顯示電路以及控制電路。在一個測量周期過程中,被測周期信號在輸入電路中經過放大、整形、微分操作之後形成特定周期的窄脈沖,送到主門的一個輸入端。主門的另外一個輸入端為時基電路產生電路產生的閘門脈沖。在閘門脈沖開啟主門的期間,特定周期的窄脈沖才能通過主門,從而進入測定儀進行計數,測定儀的顯示電路則用來顯示被測信號的頻率值,內部控制電路則用來完成各種測量功能之間的切換並實現測量設置。

應用范圍
1、在傳統的電子測量儀器中,示波器在進行頻率測量時測量精度較低,誤差較大。頻譜儀可以准確的測量頻率並顯示被測信號的頻譜,但測量速度較慢,無法實時快速的跟蹤捕捉到被測信號頻率的變化。正是由於頻率測定儀能夠快速准確的捕捉到被測信號頻率的變化,因此,頻率計擁有非常廣泛的應用范圍。
2、在傳統的生產製造企業中,頻率測定儀被廣泛的應用在產線的生產測試中。頻率測定儀能夠快速的捕捉到晶體振盪器輸出頻率的變化,用戶通過使用頻率計能夠迅速的發現有故障的晶振產品,確保產品質量。
3、在計量實驗室中,頻率測定儀被用來對各種電子測量設備的本地振盪器進行校準。
4、在無線通訊測試中,頻率測定儀既可以被用來對無線通訊基站的主時鍾進行校準,還可以被用來對無線電台的跳頻信號和頻率調制信號進行分析。

B. 急!基於單片機的數字示波器設計

首先根據輸出波形的頻率和幅值進行編碼,存儲在單片機的ROM里,
然後以一定的時間間隔依次將這些數字量送往D/A進行轉換輸出,這樣,只要循環送數,在D/A的雙極性輸出端就可以得到波形波形。

採用單片機片內的振盪器、上電復位和外部硬體看門狗電路。

至於波形編碼,網上資料很多,下面是硬體電路設計的描述(這個是網上找的):
輸出兩路幅值相等相位相差90°的正弦波形作為物體偏轉測量的基準波形;另一路輸出測角波形,該波形相對基準波形的相位反映角偏差的方向、幅值反映角偏差量。專用波形發生器就是模擬角位移輸出波形的裝置,用來進行後續解調電路以及功放電路的檢測。它以單片機為核心,經過D/A轉換和放大電路的處理,最後輸出反應彈體姿態的基準波形和測角波形。

軟體方面的編程:
#include "reg52.h"
#define uchar unsigned char
#define uint unsigned int

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00}; //共陰極0~9對應16進制數
//=============正弦波數據====================
uchar code sin_tab[256]=
{
0x80, 0x83, 0x86, 0x89, 0x8c, 0x8f, 0x92, 0x95, 0x98, 0x9c, 0x9f, 0xa2, 0xa5, 0xa8, 0xab, 0xae,
0xb0, 0xb3, 0xb6, 0xb9, 0xbc, 0xbf, 0xc1, 0xc4, 0xc7, 0xc9, 0xcc, 0xce, 0xd1, 0xd3, 0xd5, 0xd8,
0xda, 0xdc, 0xde, 0xe0, 0xe2, 0xe4, 0xe6, 0xe8, 0xea, 0xec, 0xed, 0xef, 0xf0, 0xf2, 0xf3, 0xf4,
0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfc, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xfc, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7,
0xf6, 0xf5, 0xf3, 0xf2, 0xf0, 0xef, 0xed, 0xec, 0xea, 0xe8, 0xe6, 0xe4, 0xe3, 0xe1, 0xde, 0xdc,
0xda, 0xd8, 0xd6, 0xd3, 0xd1, 0xce, 0xcc, 0xc9, 0xc7, 0xc4, 0xc1, 0xbf, 0xbc, 0xb9, 0xb6, 0xb4,
0xb1, 0xae, 0xab, 0xa8, 0xa5, 0xa2, 0x9f, 0x9c, 0x99, 0x96, 0x92, 0x8f, 0x8c, 0x89, 0x86, 0x83,
0x80, 0x7d, 0x79, 0x76, 0x73, 0x70, 0x6d, 0x6a, 0x67, 0x64, 0x61, 0x5e, 0x5b, 0x58, 0x55, 0x52,
0x4f, 0x4c, 0x49, 0x46, 0x43, 0x41, 0x3e, 0x3b, 0x39, 0x36, 0x33, 0x31, 0x2e, 0x2c, 0x2a, 0x27,
0x25, 0x23, 0x21, 0x1f, 0x1d, 0x1b, 0x19, 0x17, 0x15, 0x14, 0x12, 0x10, 0xf, 0xd, 0xc, 0xb ,
0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x3, 0x2, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0 ,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x3, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8 ,
0x9, 0xa, 0xc, 0xd, 0xe, 0x10, 0x12, 0x13, 0x15, 0x17, 0x18, 0x1a, 0x1c, 0x1e, 0x20, 0x23,
0x25, 0x27, 0x29, 0x2c, 0x2e, 0x30, 0x33, 0x35, 0x38, 0x3b, 0x3d, 0x40, 0x43, 0x46, 0x48, 0x4b,
0x4e, 0x51, 0x54, 0x57, 0x5a, 0x5d, 0x60, 0x63, 0x66, 0x69, 0x6c, 0x6f, 0x73, 0x76, 0x79, 0x7c,
};
//三角波信號數據表
uchar code thr_tab[32]=
{
0x00,0x0f,0x1f,0x2f,0x3f,0x4f,0x5f,0x6f,0x7f,0x8f,0x9f,0xaf,0xbf,0xcf,0xdf,0xef,
0xff,0xef,0xdf,0xcf,0xbf,0xaf,0x9f,0x8f,0x7f,0x6f,0x5f,0x4f,0x3f,0x2f,0x1f,0x0f
};
//-------------------------------------------------------------------------------------------------------
//鋸齒波信號數據表
uchar code jc_tab[33]=
{
0x00,0x08,0x0f,0x18,0x1f,0x28,0x2f,0x38,0x3f,0x48,0x4f,0x58,0x5f,0x68,0x6f,0x78,
0x7f,0x88,0x8f,0x98,0x9f,0xa8,0xaf,0xb8,0xbf,0xc8,0xcf,0xd8,0xdf,0xe8,0xef,0xf8,0xff
};
//數碼管位選控制口定義
sbit LED4=P2^7;
sbit LED3=P2^6;
sbit LED2=P2^5;
sbit LED1=P2^4;
//按鍵口申明
sbit S1=P2^3;
sbit S2=P2^2;
sbit S3=P2^1;
unsigned char tabArry[4]; //保存顯示數據
char flag=1; //按鍵標志,當flag=1時表示沒有按下,當flag=0時表示有按鍵按下
int keycount=0; //按鍵計數
unsigned char waveth,wavetl; //用於對定時器付值
unsigned int frecount=100; //頻率計數
unsigned int mbjs; //碼表計數,共采32個點
//毫秒延時程序
void delayms(int ms)
{
uchar i;
while(ms--)
{
for(i=250;i>0;i--);
}
}

//鍵盤掃描
void keyscan()
{
if(flag==1)
{
if(S3==0) //用S3切換波形
{
delayms(2); //延時去抖
if(S3==0) //按鍵計數,便於切換波形
{
flag=0;
keycount++;
if(keycount>=4) keycount=0; //四種波形計數4次
}
}

if(S2==0) //頻率加1 處理
{
delayms(2);
if(S2==0)
{
flag=0;
switch(keycount)
{
case 0: //正弦波頻率加1
frecount++;
if(frecount>1000) frecount=0;
break;
case 1: //三角波頻率加1
frecount++;
if(frecount>1000) frecount=0;
break;
case 2: //鋸齒波頻率加1
frecount++;
if(frecount>1000) frecount=0;
break;
case 3: //方波頻率加1
frecount++;
if(frecount>1000) frecount=0;
break;
}
waveth=(65536-57603/frecount)/256; //重新計算初值
wavetl=(65536-57603/frecount)%256;
}
}
if(S1==0) //頻率減1 處理
{
delayms(2);
if(S1==0)
{
flag=0;
switch(keycount)
{
case 0: //正弦波頻率減1
frecount--;
if(frecount<0) frecount=999;
break;
case 1: //三角波頻率減1
frecount--;
if(frecount<0) frecount=999;
break;
case 2: //鋸齒波頻率減1
frecount--;
if(frecount<0) frecount=999;
break;
case 3: //方波頻率減1
frecount--;
if(frecount<0) frecount=999;
break;
}
waveth=(65536-57603/frecount)/256; //重新計算初值
wavetl=(65536-57603/frecount)%256;
}
}

}
if(S1!=0 && S2!=0 && S3!=0) flag=1; //判斷按鍵是否彈起

}
//數據分位
void change(char wavetype,unsigned int frequency)
{
tabArry[0]=wavetype; //顯示字母,表示波形類型
tabArry[1]=frequency%1000/100; //百位
tabArry[2]=frequency%100/10; //十位
tabArry[3]=frequency%10; //個位
}
//顯示函數
void display()
{

switch(keycount)
{
case 0: //顯示A和正弦波的頻率
change(0x0a,frecount);
break;
case 1: //顯示b和三角波的頻率
change(0x0b,frecount);
break;
case 2: //顯示C和鋸齒波的頻率
change(0x0c,frecount);
break;
case 3: //顯示d和方波的頻率
change(0x0d,frecount);
break;
}

P0 = table[tabArry[0]]; //送最高位段碼
LED1=0; //打開對應的位選控制口
delayms(2); //顯示延時
LED1=1; //關閉對應的位選控制後顯示下一位

P0 = table[tabArry[1]];
LED2=0;
delayms(2);
LED2=1;

P0 = table[tabArry[2]];
LED3=0;
delayms(2);
LED3=1;

P0 = table[tabArry[3]];
LED4=0;
delayms(2);
LED4=1;
}
void Timerinit()
{
TMOD=0x01; //定時器0方式1

//定時器初值計算公式:X=65536-(T/T0)=65536-(f0/f/32)
TH0=waveth=(65536-57603/frecount)/256; //定時器初值 22.1184MHz
TL0=wavetl=(65536-57603/frecount)%256;
EA=1; //開總中斷
ET0=1; //開定時器0中斷
TR0=1; //定時器0開始計數
}
//主函數
void main()
{
Timerinit(); //定時器初始化
while(1)
{
keyscan(); //掃描按鍵
display(); //顯示程序
}
}

void Timer0() interrupt 1
{
TH0=waveth; //重新賦初值
TL0=wavetl;
if (keycount==0) //輸出正弦波
{
P1 = sin_tab[mbjs];
mbjs+=8; //256點,每隔8點輸出一個數據
if(mbjs>=256)
{
mbjs=0;
}
}
else if(keycount==1) //輸出三角波
{
P1 = thr_tab[mbjs];
mbjs++;
if(mbjs>=32)
{
mbjs=0;
}
}
else if(keycount==2) //輸出鋸齒波
{
P1 = jc_tab[mbjs];
mbjs++;
if(mbjs>=32)
{
mbjs=0;
}
}
else if(keycount==3) //輸出方波
{
mbjs++;
if(mbjs>=32)
{
mbjs=0;
}
else if(mbjs<16) P1=0xff;
else P1=0x00;

}
}

摘 要
函數信號發生器是一種能夠產生多種波形,如三角波、鋸齒波、矩形波(含方波)、正弦波的電路。函數信號發生器在電路實驗和設備檢測中具有十分廣泛的用途。通過對函數波形發生器的原理以及構成分析,可設計一個能變換出三角波、正弦波、方波的函數波形發生器。
本課題採用由集成運算放大器與晶體管差分放大器共同組成的方波—三角波—正弦波函數發生器的設計方法,先通過比較器產生方波,再通過積分器產生三角波,最後通過差分放大器形成正弦波。波形變換的原理是利用差分放大器傳輸特性曲線的非線性。
經過模擬得出了方波、三角波、正弦波、方波——三角波轉換及三角波——正弦波轉換的波形圖。
關鍵字:函數信號發生器、集成運算放大器、晶體管差分放
設計目的、意義
1 設計目的
(1)掌握方波—三角波——正弦波函數發生器的原理及設計方法。
(2)掌握遲滯型比較器的特性參數的計算。
(3)了解單片集成函數發生器8038的工作原理及應用。
(4)能夠使用電路模擬軟體進行電路調試。
2 設計意義
函數發生器作為一種常用的信號源,是現代測試領域內應用最為廣泛的通用儀器之一。
在研製、生產、測試和維修各種電子元件、部件以及整機設備時,都學要有信號源,由它產生不同頻率不同波形的電壓、電流信號並加到被測器件或設備上,用其他儀器觀察、測量被測儀器的輸出響應,以分析確定它們的性能參數。信號發生器是電子測量領域中最基本、應用最廣泛的一類電子儀器。它可以產生多種波形信號,如正弦波,三角波,方波等,因而廣泛用於通信、雷達、導航、宇航等領域。
設計內容
1 課程設計的內容與要求(包括原始數據、技術參數、條件、設計要求等):
1.1課程設計的內容
(1)該發生器能自動產生正弦波、三角波、方波。
(2)函數發生器以集成運放和晶體管為核心進行設計
(3)指標:
輸出波形:正弦波、三角波、方波
頻率范圍:1Hz~10Hz,10Hz~100Hz
輸出電壓:方波VP-P≤24V,三角波VP-P=8V,正弦波VP-P>1V;
(4)對單片集成函數發生器8038應用接線進行設計。
1.2課程設計的要求
(1)提出具體方案
(2)給出所設計電路的原理圖。
(3)進行電路模擬,PCB設計。
2 函數波形發生器原理
2.1函數波形發生器原理框圖

圖2.1 函數發生器組成框圖
2.2函數波形發生器的總方案
函數發生器一般是指能自動產生正弦波、三角波、方波及鋸齒波、階梯波等電壓波形的電路或儀器。根據用途不同,有產生三種或多種波形的函數發生器,使用的器件可以是分立器件 (如低頻信號函數發生器S101全部採用晶體管),也可以採用集成電路(如單片函數發生器模塊8038)。為進一步掌握電路的基本理論及實驗調試技術,本課題採用由集成運算放大器與晶體管差分放大器共同組成的方波—三角波—正弦波函數發生器的設計方法。
產生正弦波、方波、三角波的方案有多種,如首先產生正弦波,然後通過整形電路將正弦波變換成方波,再由積分電路將方波變成三角波;也可以首先產生三角波—方波,再將三角波變成正弦波或將方波變成正弦波等等。本課題採用先產生方波—三角波,再將三角波變換成正弦波的電路設計方法[3]。
由比較器和積分器組成方波—三角波產生電路,比較器輸出的方波經積分器得到三角波,三角波到正弦波的變換電路主要由差分放大器來完成。差分放大器具有工作點穩定,輸入阻抗高,抗干擾能力較強等優點。特別是作為直流放大器時,可以有效地抑制零點漂移,因此可將頻率很低的三角波變換成正弦波。波形變換的原理是利用差分放大器傳輸特性曲線的非線性。
2.3函數波形發生器各組成部分的工作原理
2.3.1方波發生電路的工作原理
此電路由反相輸入的滯回比較器和RC電路組成。RC迴路既作為延遲環節,又作為反饋網路,通過RC充、放電實現輸出狀態的自動轉換。設某一時刻輸出電壓Uo=+Uz,則同相輸入端電位Up=+Ut。Uo通過R3對電容C正向充電,如圖2.3中實線箭頭所示。反相輸入端電位n隨時間t的增長而逐漸增高,當t趨於無窮時,Un趨於+Uz;但是,一旦Un=+Ut,再稍增大,Uo從+Uz躍變為-Uz,與此同時Up從+Ut躍變為-Ut。隨後,Uo又通過R3對電容C反向充電,如圖中虛線箭頭所示。Un隨時間逐漸增長而減低,當t趨於無窮大時,Un趨於-Uz;但是,一旦Un=-Ut,再減小,Uo就從-Uz躍變為+Uz,Up從-Ut躍變為+Ut,電容又開始正相充電。上述過程周而復始,電路產生了自激振盪[4]。
2.3.2方波——三角波轉換電路的工作原理
圖2.2方波—三角波產生電路
工作原理如下:
若a點斷開,整個電路呈開環狀態。運算發大器A1與R1、R2及R3、RP1組成電壓比較器,C1為加速電容,可加速比較器的翻轉。運放的反相端接基準電壓,即U-=0,同相輸入端接輸入電壓Uia,R1稱為平衡電阻。比較器的輸出Uo1的高電平等於正電源電壓+Vcc,低電平等於負電源電壓-Vee(|+Vcc|=|-Vee|), 當比較器的U+=U-=0時,比較器翻轉,輸出Uo1從高電平跳到低電平-Vee,或者從低電平Vee跳到高電平Vcc。設Uo1=+ Vcc,則
(2.1)
將上式整理,得比較器翻轉的下門限單位Uia_為
(2.2)
若Uo1=-Vee,則比較器翻轉的上門限電位Uia+為
(2.3)
比較器的門限寬度:
(2.4)
由以上公式可得比較器的電壓傳輸特性,如圖2.3所示。
a點斷開後,運放A2與R4、RP2、C2及R5組成反相積分器,其輸入信號為方波Uo1,則積分器的輸出Uo2為:
(2.5)
時,
(2.6)
時,
(2.7)
可見積分器的輸入為方波時,輸出是一個上升速度與下降速度相等的三角波,其波形關系如圖2.4所示。
a點閉合,即比較器與積分器形成閉環電路,則自動產生方波-三角波。三角波的幅度為:
(2.8)
方波-三角波的頻率f為:
(2.9)
由以上兩式(2.8)及(2.9)可以得到以下結論:
(1) 電位器RP2在調整方波-三角波的輸出頻率時,不會影響輸出波形的幅度。若要求輸出頻率的范圍較寬,可用C2改變頻率的范圍,PR2實現頻率微調。
(2) 方波的輸出幅度應等於電源電壓+Vcc。三角波的輸出幅度應不超過電源電壓+Vcc。
電位器RP1可實現幅度微調,但會影響方波-三角波的頻率[3]。

圖2.3比較器的電壓傳輸特性

圖2.4方波與三角波波形關系

2.3.3三角波---正弦波轉換電路的工作原理
如圖2.5三角波——正弦波的變換電路主要由差分放大電路來完成。
差分放大器具有工作點穩定,輸入阻抗高,抗干擾能力較強等優點。特別是作為直流放大器,可以有效的抑制零點漂移,因此可將頻率很低的三角波變換成正弦波。波形變換的原理是利用差分放大器傳輸特性曲線的非線性[1]。

圖2.5 三角波——正弦波的變換電路
分析表明,傳輸特性曲線的表達式為:
(2.10)
(2.11)
式中
——差分放大器的恆定電流;
——溫度的電壓當量,當室溫為25oc時, ≈26mV。
如果Uid為三角波,設表達式為
(2.12)
式中 Um——三角波的幅度;
T——三角波的周期。
為使輸出波形更接近正弦波,由圖2.6可見:
(1)傳輸特性曲線越對稱,線性區越窄越好。
(2)三角波的幅度Um應正好使晶體管接近飽和區或截止區。
(3)圖2.7為實現三角波——正弦波變換的電路。其中RP1調節三角波的幅度,RP2調整電路的對稱性,其並聯電阻RE2用來減小差分放大器的線性區。電容C1,C2,C3為隔直電容,C4為濾波電容,以濾除諧波分量,改善輸出波形[2]。

圖2.6三角波—正弦波變換原理
圖2.7三角波—正弦波變換電路

2.4電路的參數選擇及計算
2.4.1方波-三角波中電容C1變化(關鍵性變化之一)
實物連線中,我們一開始很長時間出不來波形,後來將C2從10uf(理論時可出來波形)換成0.1uf時,順利得出波形。實際上,分析一下便知當C2=10uf時,頻率很低,不容易在實際電路中實現。
2.4.2三角波—正弦波部分的計算
比較器A1與積分器A2的元件計算如下:
由式(2.8)得

取 ,則 ,取 ,RP1為47KΩ的點位器。取平衡電阻
由式(2.9)

當 時,取 ,則 ,取 ,為100KΩ電位器。當 時 ,取 以實現頻率波段的轉換,R4及RP2的取值不變。取平衡電阻 。
三角波—正弦波變換電路的參數選擇原則是:隔直電容C3、C4、C5要取得較大,因為輸出頻率很低,取 ,濾波電容 視輸出的波形而定,若含高次斜波成分較多, 可取得較小, 一般為幾十皮法至0.1微法。RE2=100歐與RP4=100歐姆相並聯,以減小差分放大器的線性區。差分放大器的靜態工作點可通過觀測傳輸特性曲線,調整RP4及電阻R*確定。
2.5 總電路圖
先通過比較器產生方波,再通過積分器產生三角波,最後通過差分放大器形成正弦波。如圖2.5.1所示,

圖2.5.1三角波-方波-正弦波函數發生器實驗電路

2.6 8038單片集成函數發生器
2.6.1 8038的工作原理
8038由恆流源I1、I2,電壓比較器C1、C2和觸發器①等組成。其內部原理電路框圖和外部引腳排列分別如圖2.8和圖2.9所示。

圖2.8 8038原理框圖

圖2.9 8038管腳圖(頂視圖)
1. 正弦波線性調節;2. 正弦波輸出;3. 三角波輸出;4. 恆流源調節;5. 恆流源調節;6. 正電源;7. 調頻偏置電壓;8. 調頻控制輸入端;9. 方波輸出(集電極開路輸出); 10. 外接電容;11. 負電源或接地;12.正弦波線性調節;13、14. 空腳
在圖2.8中,電壓比較器C1、C2的門限電壓分別為2VR/3和VR/3( 其中VR=VCC+VEE),電流源I1和I2的大小可通過外接電阻調節,且I2必須大於I1。當觸發器的Q端輸出為低電平時,它控制開關S使電流源I2斷開。而電流源I1則向外接電容C充電,使電容兩端電壓vC隨時間線性上升,當vC上升到vC=2VR/3 時,比較器C1輸出發生跳變,使觸發器輸出Q端由低電平變為高電平,控制開關S使電流源I2接通。由於I2>I1 ,因此電容C放電,vC隨時間線性下降。當vC下降到vC≤VR/3 時,比較器C2輸出發生跳變,使觸發器輸出端Q又由高電平變為低電平,I2再次斷開,I1再次向C充電,vC又隨時間線性上升。如此周而復始,產生振盪。若I2=2I1 ,vC上升時間與下降時間相等,就產生三角波輸出到腳3。而觸發器輸出的方波,經緩沖器輸出到腳9。三角波經正弦波變換器變成正弦波後由腳2輸出。當I1<I2<2I1 時,vC的上升時間與下降時間不相等,管腳3輸出鋸齒波。因此,8038能輸出方波、三角波、正弦波和鋸齒波等四種不同的波形。
圖2.8中的觸發器,當R端為高電平、S端為低電平時,Q端輸出低電平;反之,則Q端為高電平。
2.6.2 8038構成函數波形發生器
由圖2.9可見,管腳8為調頻電壓控制輸入端,管腳7輸出調頻偏置電壓,其值(指管腳6與7之間的電壓)是(VCC+VEE/5) ,它可作為管腳8的輸入電壓。此外,該器件的方波輸出端為集電極開路形式,一般需在正電源與9腳之間外接一電阻,其值常選用10k左右,如圖2.10所示。當電位器Rp1動端在中間位置,並且圖中管腳8與7短接時,管腳9、3和2的輸出分別為方波、三角波和正弦波。電路的振盪頻率f約為0.3/[C(R1+RP1/2)] 。調節RP1、RP2可使正弦波的失真達到較理想的程度。
在圖2.10中,當RP1動端在中間位置,斷開管腳8與7之間的連線,若在+VCC與-VEE之間接一電位器,使其動端與8腳相連,改變正電源+VCC與管腳8之間的控制電壓(即調頻電壓),則振盪頻率隨之變化,因此該電路是一個頻率可調的函數發生器。如果控制電壓按一定規律變化,則可構成掃頻式函數發生器。

圖2.10 8038接成波形產生器阿
3電路模擬
3.1電路模擬
3.1.1方波——三角波發生電路的模擬

圖3.1 方波

圖3.2 三角波

圖3.3 方波——三角波
3.1.2三角波---正弦波轉換電路的模擬

圖3.4 三角波——正弦波

參考文獻
[1]王 遠.模擬電子技術(第二版)[M].北京:機械工業出版社,2000
[2]謝自美.電子線路設計實驗測試(第二版)[M].武昌:華中科技大學出版社,2000
[3]路 勇.電子電路實驗及模擬[M].清華大學出版社,2003
[4]胡宴如.模擬電子技術[M].北京:高等教育出版社,2000
[5]周躍慶.模擬電子技術基礎教程[M].天津大學出版社, 2001
[6]曾建唐.電工電子實踐教程[M].北京:機械工業出版社,2002

C. 用電阻分壓的方式用51單片的ad轉換測量波形,電路應該怎麼設計

應當注意兩點:
首先是AD模數轉換的速度要快,必須保證每個波形最少能採集到3個以上的完整數據,否則波形無法恢復!可以採用電容保存的方法同時用多個AD轉換器工作,可以是采樣頻率成倍增加。但是技術相對復雜
其次就是波形的恢復,波形的恢復需要采樣數據作為基礎,採用適當的演算法!當然電路設計也是一個重點,采樣開關必須要快,最後就是實用性是它生存的法寶!

D. 設計製作一個波形發生器,該波形發生器能產生正弦波、方波、三角波和由用戶編輯的特定形狀波形。

/////P2口接4*4鍵盤的行線和列線;紅燈亮時進行頻率輸入;綠燈亮時進行占空比輸入;頻率值暫定在100到60KHZ之間;輸入頻率和占空比時要輸夠六位整數,不夠的在前面補0;占空比以百比數(0-100)形式存在。///////////
/////////方波發生器資料。空軍工程大學導院501明明,2007.10.10初稿/////////
#include<reg52.h>
#include<stdio.h>
#define uchar unsigned char
sbit coma=P1^0;
sbit comb=P1^1;
sbit comc=P1^2;
sbit comd=P1^3;
sbit come=P1^4;
sbit red=P1^5;
sbit green=P1^6;
sbit new=P1^7;
sbit Q=P3^7;
int i,x,y;

/* 延時函數 */
void delay(void)
{
uchar j;
for (j=300;j>0;j--);
}

/*數字對應的共陽極段碼*/
uchar getcode(uchar i)
{
uchar p;
switch (i)
{
case 0: p=0xC0; break; /* 0 */
case 1: p=0xF9; break; /* 1 */
case 2: p=0xA4; break; /* 2 */
case 3: p=0xB0; break; /* 3 */
case 4: p=0x99; break; /* 4 */
case 5: p=0x92; break; /* 5 */
case 6: p=0x82; break; /* 6 */
case 7: p=0xF8; break; /* 7 */
case 8: p=0x80; break; /* 8 */
case 9: p=0x90; break; /* 9 */
default: break;
}
return(p);
}
/////////顯示函數/////////
void display(int t)
{int a=t/10000,b=t/1000%10,c=t/100%10,d=t/10%10,e=t%10;
P1=0x00;
P0=getcode(a);coma=1;comb=0;delay();
P0=getcode(b);coma=0;comb=1;delay();
P0=getcode(c);comb=0;comc=1;delay();
P0=getcode(d);comc=0;comd=1;delay();
P0=getcode(e);comd=0;come=1;delay();
}

/* 鍵掃描函數 */
uchar keyscan(void)
{
uchar scancode,tmpcode;
P2 = 0xf0; // 發全0行掃描碼
if ((P2&0xf0)!=0xf0) // 若有鍵按下
{
delay(); // 延時去抖動
if ((P2&0xf0)!=0xf0) // 延時後再判斷一次,去除抖動影響
{
scancode = 0xfe;
while((scancode&0x10)!=0) // 逐行掃描
{
P2 = scancode; // 輸出行掃描碼
if ((P2&0xf0)!=0xf0) // 本行有鍵按下
{
tmpcode = (P2&0xf0)|0x0f;

/* 返回特徵位元組碼,為1的位即對應於行和列 */
return((~scancode)+(~tmpcode));
}
else scancode = (scancode<<1)|0x01; // 行掃描碼左移一位
}
}
}
return(0); // 無鍵按下,返回值為0
}
/////////////T0中斷/////////
timer0 () interrupt 1
{
Q=~Q;
i=~i;
if(i)
{TL0=65536-(1000000/y*(1-x/100))%256; ////輸出低電平狀態計數器所需溢出次數///
TH0=65536-(1000000/y*(1-x/100))/256;}

else
{TL0=65536-(1000000/y*(x/100))%256; ////輸出高電平狀態計數器所需溢出次數///
TH0=65536-(1000000/y*(x/100))/256;}
}
///////////主函數///////////
main( )
{
int key,count,confirm;
Q=1;
TMOD=0x01;
EA=1;ET0=1;
while(1)
{TR0=1;red=1;
while(confirm<2)
{
key = keyscan(); // 調用鍵盤掃描函數
switch(key)
{case 0x11: if (count<=5) {x=10*x;count++;} break; // 1行1列,數字0
case 0x21: if (count<=5) {x=10*x+1;count++;} break;// 1行2列,數字1
case 0x41: if (count<=5) {x=10*x+2;count++;} break;// 1行3列,數字2
case 0x81: if (count<=5) {x=10*x+3;count++;} break;// 1行4列,數字3
case 0x12: if (count<=5) {x=10*x+4;count++;} break;// 2行1列,數字4
case 0x22: if (count<=5) {x=10*x+5;count++;}break; // 2行2列,數字5
case 0x42: if (count<=5) {x=10*x+6;count++;} break;// 2行3列,數字6
case 0x82: if (count<=5) {x=10*x+7;count++;} break;// 2行4列,數字7
case 0x14: if (count<=5) {x=10*x+8;count++;} break;// 3行1列,數字8
case 0x24: if (count<=5) {x=10*x+9;count++;} break;// 3行2列,數字9
case 0x44: if (count==5) {if(confirm==0)
{y=x;x=0;count=0;red=0;green=1;}confirm++;} break;// 3行3列,確認鍵
//輸入完頻率,按下確認鍵,再輸入占空比
case 0x84: x=0;count=0; break; // 3行4列,取消鍵
default: break;
}
display(x);
}
TR0=1;
if(new==0)
{ delay();if(new==0){confirm=0;y=0;x=0;count=0;} }
}}

E. 如何用設計一個電路來測量一個波形(方波或者三角波)的幅度

你說的幅度是峰值還是有效值。
如果是峰值,採用峰值檢波電路較簡單。
如果是有效值,且需要測量任意波形的有效值,只能採用真有效值晶元或高速采樣再進行方均根運算。

F. 「波形發生器」設計

1.2.1 課題背景隨著科學技術的迅速發展,數字化技術已滲透到各個領域。智能儀表裝置由於其安全、方便、高效、快捷、智能化等特點,使它在21世紀成為各種科學技術領域和工程實踐的助手。它對於改善現代人類的生活質量,創造、安全、便利的生活空間有著非常重要的意義。隨著電子技術的發展 , 數字化技術在智能儀表 ,外設控制等方面取得了廣泛的運用。其中幅值、波形和頻率可調的智能信號發生器經常要用在各種科學技術領域和工程實踐中。函數信號發生器和示波器、電壓表、頻率計等儀器一樣是最普通、最基本的 ,也是應用最廣泛的電子儀器之一 ,幾乎所有的電參量的測量都需要用到信號發生器 。頻率越高、產生的波形種類越多的發生器性能越好,但器件的成本和技術要求也大大提高。比如:利用專用直接數字合成DDS晶元實現信號發生器。這種信號發生器能產生任意波形並達到很高的頻率,但成本很高。因此,綜合成本和性能等多方面考慮,設計出一款單片集成晶元配合52單片機實現的智能信號發生器是一次非常有意義的嘗試。該種智能信號發生器能產生多種波形信號,達到較高的頻率,易於調試,且有很高的性價比。怎麼樣才能設計出一款內部功能齊全,外圍電路簡單,使用方便的智能信號發生器呢?這就需要用到集成信號發生晶元。隨著半導體晶元製造業的迅速發展和研製水平的飛速提高,出現了很多功能強大且性能可靠的集成信號發生晶元 ,幾乎代替了以前用分立元件搭成的信號發生電路模塊。精密函數發生晶元MAX038就是其中之一,而且在眾多的信號發生晶元中MAX038 晶元的性價比較高 。所以本設計選用精密函數發生晶元MAX038。本設計中,用戶可根據自己的需要,將要輸出的波形種類通過外置鍵盤輸入單片機,調用其相應的子程序,再通過與MAX038相連的可變電阻來調節波形的頻率和占空比,經MAX038輸出到放大電路,最後接到示波器,由示波器顯示產生的波形。這種信號源的頻率改變十分方便 ,而且線路簡單,調試和修理簡捷,性能價格比較高。1.2.2 技術指標本文設計的智能信號發生器的技術指標如下:(1)可以輸出正弦波、矩形波及三角波;(2)輸出方波的占空比可調范圍在10%~90%;(3)輸出信號的頻率穩定度和准確度: ;(4)正弦波非線性失真度 :小於1%;(5)頻率可調范圍:0.1HZ~20MHZ;(6)幅度:6V為了達到這一目標,本課題重點在以下幾個方面展開工作:(1)信號發生器的基本原理及相關技術的研究學習本課題工作初期主要閱讀了大量相關書籍,特別是MAX038晶元的資料,還深入研究了信號發生器的基本原理、技術特點等。在這些工作的基礎上,提出了系統的解決方案,並解決了其中的關鍵技術難題。 (2)硬體系統設計 硬體電路設計主要包括鍵盤電路、單片機外圍電路、MAX038外圍電路(占空比調節、頻率調整電路)、放大電路的設計。根據系統方案的要求,ATMEL公司的8位Flash 單片機AT89C52作為系統的控制核心及數據處理中心,接距陣式鍵盤和MAX038電路部分。 (3)軟體系統設計軟體系統主要包括鍵盤去抖動延時程序、鍵盤掃描程序、波形選擇程序。軟體編程用C51語言。第二章 系統方案及原理框圖2.1 系統方案設計MAX038是單片集成晶元,需要通過單片機的控制實現函數信號的波形選擇。波形選擇由兩個輸入引腳A0 和A1的邏輯電平設定。通過4*4鍵盤輸入要產生的波形的種類,單片機判斷鍵碼並通過兩個I/O口控制MAX038的A0和A1引腳,從而控制MAX038輸出相應的波形。關於占空比調節和頻率調整,為簡單起見,可採用外部電位器調整控制。2.2 系統工作原理及框圖從圖2-1可以看出,系統按功能模塊可分為幾個部分:單片機系統:控制外圍的信號發生晶元,完成波形選擇。外圍電路:實現外圍的信號發生晶元和單片機之間的介面電路。C51程序:編寫單片機外圍信號發生晶元的介面程序,實現單片機函數信號輸出功能。
AT89C52單片機
4*4鍵盤
波形選擇
占空比調節節
MAX038
頻率調整
放大電路
波形輸出
圖2-1 系統原理框圖工作過程為:打開電源開始工作,按復位鍵復位,在鍵盤上輸入所需波形,調用單片機的程序存儲器中其相應的子程序 ,再通過與MAX038相連的可變電阻來調節波形的頻率和占空比,經MAX038輸出到放大電路,最後接到示波器,由示波器顯示產生的波形。第三章 硬體電路設計本章將介紹信號發生器的電路設計原理,對各個功能模塊分別進行討論,主要包括鍵盤電路、單片機外圍電路、MAX038外圍電路(占空比調節、頻率調整電路)、放大電路。3.1 鍵盤電路行列式鍵盤也即矩陣式鍵盤,它由行和列組成,在每個行列的交叉點上放置一個按鍵。4*4鍵盤是一種常見的鍵盤,用在本設計中完全能夠滿足要求。4*4行列式鍵盤共由16個鍵盤組成。圖3-1是鍵盤電路圖。矩陣鍵盤原理:矩陣鍵盤中,一個按鍵按下後會觸發兩個電平信號:X、Y,單片機通過掃描X、Y的值判斷按鍵狀態。
把單片機AT89C52中的P1.0-P1.7埠用8芯排線連接到「4*4行列式鍵盤」區域中的L1-L4、C1-C4埠上。圖3-1 鍵盤電路3.2 單片機外圍電路設計MAX038是單片集成晶元,需要通過單片機的控制實現函數信號的波形選擇。單片機是核心器件之一,通過它對MAX038的設置,實現不同波形的選擇和輸出。由於系統控制方案不太復雜 ,數據量也不太大,我們選用 AT89C52 作為控制系統的核心。它極為常用,價格便宜,易於獲取。3.2.1 單片機外圍電路硬體部分AT89C52是美國Atmel公司生產的低電壓、高性能CMOS 8位單片機,片內含8KB的可
圖 3-2 AT89C52管腳圖反復檫寫的程序存儲器和12B的隨機存取數據存儲器(RAM),器件採用Atmel公司的高密度、非易失性存儲技術生產,兼容標准MCS-51指令系統,片內配置通用8位中央處理器(CPU)和Flash存儲單元,功能強大的AT89C52單片機可靈活應用於各種控制領域。AT89C52單片機屬於AT89C51單片機的增強型,與Intel公司的80C52在引腳排列、硬體組成、工作特點和指令系統等方面兼容。圖 3-2 是AT89C52的管腳圖。其主要工作特性是:片內程序存儲器內含8KB的Flash程序存儲器,可擦寫壽命為1000次;片內數據存儲器內含256位元組的RAM;具有32根可編程I/O口線;具有3個可編程定時器;中斷系統是具有8個中斷源、6個中斷矢量、2個級優先權的中斷結構;串列口是具有一個全雙工的可編程串列通信口;具有一個數據指針DPTR;低功耗工作模式有空閑模式和掉電模式具有可編程的3級程序鎖定位;AT89C52工作電源電壓為5(1+0.2)V,且典型值為5V;AT89C52最高工作頻率為24MHz。單片機正常工作時,都需要有一個時鍾電路和一個復位電路,來構成單片機的最小電路。如圖3-3所示。
(1) 時鍾電路
XTAL0(18腳)和XTAL1(19腳):計算機工作時,是在統一的時鍾脈沖控制下一拍一拍的進行的,這個脈沖是由單片機控制器中的時序電路發出的。單片機的時序就是CPU在執行指令時所需控制信號的時間順序。為了保證各部件間的同步工作。單片機內部電路就在唯一的時鍾信號控制下嚴格地按時序進行工作。要給單片機提供時序要有相關的硬體電路,即振盪器和時鍾電路。因此選擇了內部時鍾方式。利用晶元內部的振盪器,然後在引腳XTAL0和XTAL1兩端跨接晶體或陶瓷諧振器,就構成了穩定的自激振盪器,其發出的脈沖直接送入內部時鍾電路,AT89C52最高工作頻率為24MHz,在本設計中採用11.0592 MHz晶振。外接晶振時,C1和C2值通常選擇為22PF左右。C1,C2對頻率有微調作用。晶體的頻率范圍可在1.2~12MHZ之間選擇。在實際連接中,為了減少寄生電容,更好地保證振盪器穩定、可靠地工作,振盪器和電容應盡可能安裝得與單片機晶元靠近。
(2) 復位電路
RESET( 9腳)是復位, 由圖3-3可以看出,按鍵電平復位電路相當於按復位鍵S1後復位端通過電阻與Vcc電源接通。復位是單片機的初始化操作。單片機在啟動運行時,都需要先復位,其作用是使CPU和系統中其他部件都處於一個確定的初始狀態,並從這個狀態開始工作。因而,復位是一個很重要的操作方式。但單片機本身是不能自動進行復位的,必須配合相應的外部電路來實現。(3) 單片機電源(40腳)是電源:AT89C52工作電源電壓為5(1+0.2)V,且典型值為5V;在線路中,電源去藕是一個關鍵問題。整個線路往往會由於電源引線而產生電路諧振,當有大的瞬時變化時,也會產生尖峰干擾信號。消除這兩種現象的有效辦法就是在片子的電源管腳與地之間加上適當的去藕電容,如圖3-3中的C4。(4) P1、P2口P1口:是一個帶內部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅動(吸收或輸出電流)4個TTL邏輯門電路。對埠寫「1」,通過內部的上拉電阻把埠拉到高電平,此時可作為輸入口。作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。在圖3-3中,KEY為單片機的外圍4*4鍵盤介面,它和單片機的P1.0~P1.7連接,P1.0~P1.3對應於鍵盤的行1~4,P1.4~P1.7對應鍵盤的列1~4。P2口:P2是一個帶有內部上拉電阻的8位雙向I/O口,P2的輸出緩沖極可驅(吸收或輸出電流)4個TTL邏輯門電路。Flash編程或校驗時,P2也接收高位地址和一些控制信號。在本設計中,單片機的P2.0和P2.1腳和MAX038的A0和A1相連,用於選擇輸出波形種類。
圖3-3 單片機部分硬體電路
3.2.2 單片機外圍模擬電路部分模擬軟體:Proteus7.1A0=0或者1、A1=1,即鍵盤第一行第一列的情況。表示選擇的是正弦波。A0=0、A1=0,即鍵盤第一行第二列的情況,表示選擇的是矩形波;A0=1、A1=0,即鍵盤第一行第三列,表示選擇三角波輸出。D1(A0)D2(A1)選擇的波形暗(0)或者亮(1)亮(1)正弦波暗(0)暗(0)矩形波亮(1)暗(0)三角波表3-1單片機部分模擬結果圖3-4模擬的是A0=0、A1=1,即鍵盤第一行第一列。表示選擇的是正弦波的情況。圖3-4 單片機部分軟體模擬電路3.3 MAX038外圍電路設計3.3.1 MAX038的基本工作原理MAX038是美國Maxim公司的一款高頻率、高精度、低輸出電阻、驅動能力強的函數信號發生器晶元,它是新一代的單片函數信號發生晶元。MAX038內部含有精密帶隙電壓基準、鑒相器和TTL同步輸出,能以最少的外部元件構成波形高頻函數信號發生器,也可以應用於壓控振盪器(PPL)、脈寬調制器、鎖相環、頻率調制器、頻率合成器及FSK信號(正弦波和方波)發生器,是目前較為理想的信號發生集成晶元 。如圖3-5所示MAX038內部主要由振盪器、參考電壓源2.5V、 恆流源250UA發生電路、多路選擇開關 、比較器、相位監測器、輸出緩沖器等電路組成。MAX038是單片精密函數信號產生器 ,它用±5V電源工作 ,基本的振盪器是一個交變地以恆定電流向電容器充電和放電的馳張振盪器 ,同時產生一個三角波和矩形波。通過改變COSC引
腳的外接電容 和流入 引腳的充放電電流的大小來控制輸出信號頻率, 工作頻率范圍為0.1Hz~20MHz。 流入 引腳的電流由加到FADJ 和DADJ 引腳上的電壓來調制, 通過這兩個引腳可用外接電壓信號分別調整頻率和占空比。MAX038內部有一個正弦波形成電路把振盪器的三角波轉變成一個具有等幅的低失真度正弦波。三角波、正弦波和矩形波輸入一個多路器,兩根地址線A0和A1從這三個波形中選出一個。圖3-5 MAX038的內部結構(虛線框內)
MAX038內部有一個2.5V的基準電壓源,由REF引腳輸出。基準電壓源電路由兩個運放LF353及電阻、電容組成,分別組成放大倍數為+1和-1的緩沖器,因而得到 的基準電源。這個電壓源對整機的性能很重要,因為各控制電路均需要參考輸入。圖3-6 MAX038管腳圖鑒相器是作為鎖相環的備用單元,為異或門電路結構,輸入信號一路來自內部差動矩形波OSCA和OSCB,另一路來自外部引腳PD1。鑒相器輸出信號為電流,由PD0引腳輸出,平均值變化范圍為0~550 。當兩路輸入信號的相位差為 時,輸出電流的占空比為50%,平均值為250 。如果構成鎖相環電路,則PDO和FADJ相連,並且對地連接一個電阻 ,同時並聯一個電容 。 決定鑒相器的靈敏度, 則濾除電流中的高頻成分。MAX038的各引腳功能見於表3-2。
表3-2 MAX038引腳功能註:5個GND腳在MAX038內部是不連接的,在電路設計時,需要一個地平面,然後所有5個GND腳連到靠近MAX038器件的地平面上。表3-3是MAX038 地址線A0和A1對波形選擇的取值。
表3-3 MAX038 地址線A0和A1對波形選擇的取值波形選擇由A0和A1兩個輸入引腳的邏輯電平設定:當A0=0或1、A1=1時為正弦波;當A0=0、A1=0時輸出矩形波;當A0=1、A1=0時輸出三角波。MAX038的關鍵特性如下:(1)工作頻率范圍從 0.1HZ~ 20MHZ,各種波形的輸出幅度均為2 V(P-P);(2)能精密地產生三角波、方波、正弦波信號;(3)占空比調節范圍寬, 占空比和頻率均可單獨調節, 互不影響, 占空比最大調節范圍10%~90%;(4)波形失真小, 正弦波失真度低於1%;(5) 採用±5V雙電源供電, 允許有5%變化范圍,電源電流為 80mA , 典型功耗 400 mW, 工作溫度范圍為0~70℃;(6) 內設2.5V電壓基準,利用控制端FADJ、DADJ實現頻率微調和占空比調節;(7)頻率掃描范圍:350倍;(8)輸出電阻:0.1 ;(9)溫度系數: 。MAX038核心部分是一個電流控制的振盪器,通過恆定的電流對外部電容 充電和放電,獲得三角波和方波信號輸出。充、放電電流由流進MAX038的 腳的電流控制,由加在引腳FADJ、DADJ上的電壓調整。電路的振盪頻率為: f= (1-0.2915 )= (1-0.2915 )/ (1)波形的占空比為: (2)當 =0時, 可設為2~750 ,對應中心頻率為350:1的變化范圍;當= 時,調制頻偏為 。控制外部電容 充、放電電流的比值,當 =0時,波形的占空比為50%;當 = 時,占空比為10%~90%。在FADJ和DADJ埠的內部,設置了250 的下拉電流源,可簡化外部電路設計,僅用電阻 (連接引腳FADJ和2.5V基準電壓的可變電阻)和 (連接引腳DADJ和2.5V基準電壓的可變電阻)就可以對頻偏和占空比進行調整。 埠由內部的運放強制為虛地,故僅用電阻 就能調整輸入電流 ,實現中心頻率的調節。3.3.2 占空比調節原理MAX038的DADJ引腳上的電壓可控制波形的占空比 (定義為輸出波形為正時所佔時間的百分數),並且能夠改善正弦波的波形,可進行脈沖寬度調制和產生鋸齒波。當 接地(即 =0)時,由 可得其占空比為50%。當 =±2.3V時,占空比可在 10%~90%范圍內調整;當電壓超過±2.3V 時,將使頻率偏移或引起不穩定。加在DADJ上的電壓: (3)其中: 為 DADJ 引腳上的電壓, 為定義為輸出波形的占空比。由公式(3)可完成的占空比設置。在本設計中要求占空比 在10%~90%的變化范圍,這樣 的范圍為-2.3V~+2.3V之間變化。因為:為內部恆流源; :連接引腳DADJ和2.5V基準電壓的可變電阻。基準電壓 :+2.5V由以上分析,可以計算出要使 的范圍為-2.3V~+2.3V之間變化時 的范圍在0.8K~19.2K 之間變化。所以 可以選擇20K 的可變電阻。綜上,MAX038工作時引腳DADJ電壓的變化可引起電容 充電和放電的相對速率的變化,由此引起矩形波占空比發生變化 ,當 時矩形波占空比為50%,即輸出為方波。 的變化范圍為±2.3V則占空比的變化范圍為10%~90%。所以 ,可使 變化 ,從而改變占空比,這即是設置占空比調節的原理。3.3.3 頻率調整原理(1) 頻率粗調原理由MAX038內部結構及參考文獻[4]可得,當引腳FADJ的電壓 =0時,MAX038輸出信號頻率的計算由式(1)給出: (4)(4)式中, 的計算為 (5) (5)式中 為內部輸出的2.5V恆定參考電壓,可見 時, 輸出信號的頻率完全由內部結構及充電電容 決定。 電流大小在2~750μA內變化,電容大小若為pF量級,則輸出頻率的大小為MHz量級;電容大小若為 μF量級 則輸出頻率的大小為kHz量級;電容大小若為μF量級,則輸出頻率的大小為Hz量級;所以其輸出頻率范圍為0.1Hz~20MHz。由此可通過改變電容 的大小達到大幅度地改變輸出信號頻率,這即是設置頻率粗調的原理。在本設計中要求頻率在0.1HZ~20MHZ的變化范圍,所以選擇電容大小若為pF量級。(2) 頻率細調原理MAX038工作時引腳FADJ的電壓 由參考電壓 及可調電阻 決定 = -250μA× (6)由(6)式得 (7)= 時,代入(7)式得到 的變化范圍為0.4K~19.6K,所以 可以選擇20K 的可變電阻。由(6)式調節 ,可變化FADJ引腳的電壓,其變化范圍為±2.4V。而 的變化可引起電容充電電流的變化 輸出頻率則以(4)式的頻率 為中心頻率,產生±70%左右的變化。由此可通過調節可變電阻 的大小,達到小幅度改變輸出信號的頻率,這即是設置細調輸出信號頻率的原理。綜上所述,MAX038的輸出頻率 由 、 、 三者共同決定,當 =0時 = = / = / * ,實現粗調;當 0時, = (1-0.2915 ),實現細調。3.3.4 MAX038外圍電路
圖 3-7 MAX038外圍電路原理圖由以上的分析,設計出的MAX038部分的電路如圖3-7。SYNC電路具有單獨的電源引線因而可被禁止。 數字電壓 (+5V)電源端,如果沒有用到SYNC的時候 應該懸空。PDI、PDO引腳分別是相位檢波器的輸入和輸出端,在本設計中不用應該接地。3.3.5 MAX038外圍電路注意事項由MAX038實現的信號發生電路是模數混合電路,因此在電路設計和線路板布局上都必須注意。具體有:(1)如果PCB板中,MAX038的模擬電源和數字電源需要分開,在供電時要分別供電,即分別取不同的電源,以防數字信號通過電源線干擾模擬部分;同樣,模擬地和數字地的處理要慎重,萬用板上要用低阻地平面分別將模擬地和數字地連接,再在某點上將兩地相連。(2)信號線要盡量部在焊接面,元件面為地平面,這樣就可減少信號間的干擾,這一點對系統性能的穩定尤為重要,因為系統性能受 、FADJ、COSC、DADJ等引腳周圍的分布電容及信號環境變化的影響特別敏感。此外,這些引腳引線的長度和面積還應盡量短小。(3)由於不同結構的電阻具有不同的寄生電容和寄生電感,因此選擇電阻時,應選用寄生電容和寄生電感小的電阻。推薦使用1%以上精度的金屬膜電阻。(4)在高頻線路中,電源去藕是一個關鍵問題。整個線路往往會由於電源引線而產生電路諧振,當有大的瞬時變化時,也會產生尖峰干擾信號。消除這兩種現象的有效辦法就是在片子的電源管腳與地之間加上適當的去藕電容,一般使用1 以上的優質電容。在許多場合,採用2個電容並聯的方法(並聯一個0.1 電容),則去藕效果更佳。3.4 幅度放大電路
由於MAX038的輸出信號為恆定的2V(P-P),且輸出電流不高,所以必須在輸出級至少有一級的放大電路來提供足夠的輸出電壓和電流,以滿足一般的使用要求。以下是放大電路設計的幾點考慮:圖3-8 放大電路(1) 首先,要求放大電路具有很高的頻寬。因為輸出信號最大基頻為20MHZ,其三角波和矩形波的高次諧波成分很高,只有高頻寬才能得到不失真的輸出波形。(2) 其次,高頻大信號放大要求電路有足夠的輸出電壓轉換速率。(3) 另外,要帶動低阻負載,放大電路的電流輸出能力也是個重要參數。要在10 負載上輸出6V信號,則放大器至少要有60mA的連續電流輸出能力。居於以上要求本設計的放大電路部分如圖3-8。採用低功耗,寬頻,高速運算放大器AD8055提高了放大電路的帶寬和轉換速率,把電壓由原來MAX038輸出的2V放大到6V。而9013和9012構成了「推挽式電路」也叫做互補對稱電路,實現了在靜態時管子不取電流,而在有信號時,T1、T2輪流導電。T1、T2是工作在乙類的放大電路,管耗小,提高了電流,從而提高了效率,而且減少了失真。最後接的電阻是為了防止輸出端的外接負載短路,所以加一個電阻限制電流。3.5 軟體設計軟體需要實現的主要功能是檢測鍵盤的輸入,根據輸入結果選擇輸出相應的波信號。鍵盤操作和對應的輸出如下:輸入按鍵「0」(第一行第一列),得到正弦波;輸入按鍵「1」(第一行第二列),得到矩形波;輸入按鍵「2」(第一行第三列),得到三角波;軟體編程用C51語言,主要包括鍵盤去抖動延時程序、鍵盤掃描程序、波形選擇程序。單片機控制MAX038實現波形輸出的程序流程圖3-9。
開始
初始化
鍵盤掃描
鍵碼為11?
鍵碼為21?
鍵碼為41?
NO
NO
NO
輸出正弦波
輸出矩形波
輸出三角波圖3-9 單片機控制MAX038實現波形輸出的程序流程圖鍵碼為11對應的是第一行第一列的按鍵;鍵碼為21對應的是第一行第二列的按鍵;鍵碼為41對應的是第一行第三列的按鍵。
希望對你能有所幫助。

G. 波形發生器設計方法!

如果允許採用集成電路,就很方便。
可用的有:
ICL8038;XR-2206;MAX038。
ICL8038:工作頻率:0.001~300K;工作電壓:10~30V或正負5~15V
XR-2206:工作頻率:0.01~1M;工作電壓:10~26V
MAX038:工作頻率:0.1~20M;工作電壓:正負5V
就按需要的選吧。

H. 用電阻分壓的方式用51單片的ad轉換測量波形,電路應該怎麼設計

你說的重點是指電阻分壓吧?
電阻分壓的特點是測量設備直接掛接在一次迴路上。如果一次迴路電壓較高且沒有可靠地接地措施(比如說,測量380V交流電,任意一根火線均未接地),需要設計隔離電路。可採用隔離運算放大器AD202等。
如果被測信號電壓較低(主要是對地共模電壓),當然分壓後經可直接進AD。
測量波形的話,主要就是遵循采樣定理(采樣頻率大於信號中最高頻率成分頻率的兩倍),一般工程應用,取采樣頻率為信號帶寬的5~10倍。

I. 如何用示波器來測量波形的高、低電平

用示波器能觀察各種不同電信號幅度隨時間變化的波形曲線,在這個基礎上示波器可以應用於測量電壓、時間、頻率、相位差和調幅度等電參數。下面介紹用示波器觀察電信號波形的使用步驟。

1.選擇Y軸耦合方式

根據被測信號頻率的高低,將Y軸輸入耦合方式選擇「AC-地-DC」開關置於AC或DC。

2.選擇Y軸靈敏度

根據被測信號的大約峰-峰值(如果採用衰減探頭,應除以衰減倍數;在耦合方式取DC檔時,還要考慮疊加的直流電壓值),將Y軸靈敏度選擇V/div開關(或Y軸衰減開關)置於適當檔級。實際使用中如不需讀測電壓值,則可適當調節Y軸靈敏度微調(或Y軸增益)旋鈕,使屏幕上顯現所需要高度的波形。

3.選擇觸發(或同步)信號來源與極性

通常將觸發(或同步)信號極性開關置於「+」或「-」檔。

4.選擇掃描速度

根據被測信號周期(或頻率)的大約值,將X軸掃描速度t/div(或掃描范圍)開關置於適當檔級。實際使用中如不需讀測時間值,則可適當調節掃速t/div微調(或掃描微調)旋鈕,使屏幕上顯示測試所需周期數的波形。如果需要觀察的是信號的邊沿部分,則掃速t/div開關應置於最快掃速檔。

5.輸入被測信號

被測信號由探頭衰減後(或由同軸電纜不衰減直接輸入,但此時的輸入阻抗降低、輸入電容增大),通過Y軸輸入端輸入示波器。

J. 設計梯形波測量系統,可以在單片機中模擬對象,通過編程產生波形,在計算機上用LABVIEW輸出。

基於LabVIEW平台的任意波形發生器計算機控制

儀器控製程序包括儀器初始化模塊、儀器管理模塊波形調制選取、設置模塊和波形輸出模塊。

初始化模塊:執行儀器的初始化,自檢,清零功能。

儀器管理模塊:執行儀器運行模式,鎖定與解鎖通道,是否恢復出廠設置等儀器管理操作。

波形調制模塊:設置SWP、FM、AM、FSK等各種調制參數及調制波形。

波形輸出模塊:由於儀器硬體只能識別ASCII字元,所以本模塊將用戶交互操作產生的任意波形通過轉換,下載到任意波形發生器的內部存儲器,並打到儀器輸出通道,輸出所需波形。

以上儀器控製程序是通過主程序調用艾訊公司提供的GPIB.DLL動態鏈接庫中的介面函數實現的。

2.3任意波形編輯模塊

該模塊採用三種途徑產生任意波形:函數庫編輯、公式輸入和滑鼠繪制。任意波形函數庫中存放了23個生產實踐中常用的函數波形,用戶只要從中選取,修改函數,設置波形頻率,幅值等參數,就可以產生波形;公式輸入法支持用戶輸入一個公式來表徵任意波形,用戶還可將專用波形加入到任意波形函數庫中存放;還設計了滑鼠繪制任意波形的功能.

當用戶需要繪制任意波形時,首先將滑鼠移到畫圖區的移動游標上,然後按住滑鼠左鍵拖動滑鼠,滑鼠的移動軌跡即形成任意波形。用戶還可點擊畫圖區下面的按鈕來選擇是畫任意曲線還是畫直線。移動游標的坐標通過X、Y指示值可知。也可通過修改游標坐標達到精確描繪所需要的任意波形。繪制完成後,單擊停止按鈕則返回到主界面,主界面如圖2.3.2所示。用戶可通過提供的編輯工具,放大、縮小、平移波形,還可對波形的顏色、位置、是否適應坐標的狀態等屬性進行設置。

閱讀全文

與波形測量裝置怎麼設計相關的資料

熱點內容
生產山楂糕需要哪些設備 瀏覽:91
機械表後面的飛輪是什麼 瀏覽:163
怎麼實現儀表盤ar導航 瀏覽:722
某同學設計了如下裝置來 瀏覽:633
超聲波儀器動態范圍是什麼意思 瀏覽:11
傳動裝置分析 瀏覽:263
風機與閥門連鎖怎麼實現 瀏覽:314
消防管道閥門抽檢比例 瀏覽:313
礦用自動除塵噴霧裝置生產工藝 瀏覽:334
鑄造灰鐵很硬怎麼回事 瀏覽:505
天然氣灶沒有自動滅火裝置會有什麼後果 瀏覽:221
江蘇旭潤設備有限公司怎麼樣 瀏覽:653
預作用裝置開箱檢查記錄 瀏覽:355
電動工具龍韻開關 瀏覽:472
數控機床電氣互鎖是什麼意思 瀏覽:448
軸承漏灰如何防護 瀏覽:2
儀表上油壺紅燈出現什麼意思 瀏覽:919
冰箱的製冷液是什麼顏色的 瀏覽:425
真空鍍膜設備多少錢 瀏覽:475
某同學用如圖所示的a實驗裝置 瀏覽:558