《电压控制LC振荡器的课件》由会员分享,可在线阅读,更多相关《电压控制LC振荡器的课件(81页珍藏版)》请在金锄头文库上搜索。
1、第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 第第16章章 电压控制电压控制LC振荡器的振荡器的 设计与分析设计与分析 16.1 系统设计要求系统设计要求 16.2 系统设计方案系统设计方案 16.3 主要主要VHDL源程序和汇编语言程序源程序和汇编语言程序 16.4 系统仿真系统仿真/硬件验证硬件验证 16.5 设计技巧分析设计技巧分析 16.6 系统扩展思路系统扩展思路 第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.1 系统设计要求系统设计要求设计并制作一个电压控制LC振荡器,具体要求:(1)振荡器输出无明显失真的正
2、弦波;(2)输出频率范围:1535MHz;(3)输出频率稳定度:优于0.001;(4)输出电压峰-峰值:1V0.1V;(5)可实现输出频率步进及显示,步进间隔为100kHz;(6)实时测量并显示振荡器的输出频率。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.2 系统设计方案系统设计方案 16.2.1系统设计总体方案根据系统的设计要求,本系统可分为两大部分:电压控制LC振荡源电路和压控LC振荡源的测控和显示电路。其中电压控制LC振荡源电路部分综合考虑各方面的因素,本系统拟用变容二极管构成频率可调的LC振荡器,而变容二极管的电压则由锁相环频率合成器MC145
3、152进行控制。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.2.2电压控制LC振荡器的设计电压控制LC振荡器主要包括4个部分:压控LC振荡器电路、MC145152锁相环电路、精度达10-5的温补晶体基准频率发生电路、LM258组成的电压比较器电路,其电路原理图如图16.2所示。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.1系统总体原理框图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.2电压控制LC振荡器的电路原理图第第1616章章 电压控制电压控制LCLC振荡器的振荡
4、器的设计与分析设计与分析 1压控LC振荡器电路(VCO)压控LC振荡器电路(VCO)由分立元件L、C组成。由于变容二极管的结电容随反向偏压增加而减少,因此若电路中的电容选用变容二极管作反向运用并加上控制电压,就可改变由LC决定的振荡器的频率。若电感的值一定,则可调频率的范围由变容二极管的容量变化范围决定。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.3等效的LC振荡回路第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 本设计中变容二极管调频电路如图16.2所示,图中L1是振荡器的振荡线圈,等效的LC振荡回路如图16.3所示
5、。具体计算过程如下。根据图16.3可得振荡回路中的等效电容为(d为变容二极管的节电容)第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 当f=15MHz时,由可得解方程得Cd375pF。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 2锁相环及其工作原理本设计中锁相环选用摩托罗拉公司生产的锁相环频率合成器专用芯片MC145152,其内部组成方框图如图16.4所示,其工作原理如下所述。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.4MC145152内部组成方框图第第1616章章 电压控制电压控
6、制LCLC振荡器的振荡器的设计与分析设计与分析 表16.1MC145152中R值的设置及步进对应表第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 3锁相环MC145152的控制根据本系统的设计要求,步进频率要求设置为100kHz,因此要求R分频器采用128分频,即将RA0、RA1、RA2分别设置为0、1、0。在本设计中,因为fd直接输入fin,而且步进是100kHz,所以分频系数不会出现小数,故可将A5A0直接置0。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.2.3FPGA测控专用芯片的VHDL程序设计根据系统的总体设计
7、方案,FPGA测控专用芯片的输入信号有:FIN被测频率信号输入端;CLK200Hz基准信号输入端;ENADDSUB的控制信号端口,在EN的上升沿,ADDSUB可加载到FPGA;ADDSUB1.0对MC145152的控制输入,当其为“00”时,将发射频率设定在25MHz,当其为“01”时,每按一次升频键,发射频率以100kHz增加,第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 当其为“10”时,每按一次降频键,发射频率以100kHz降低,当其为“11”时,对FPGA不起作用;SEL1.0输出选择,当其分别为“00”、“01”、“10”、“11”时,输出为频率计数
8、器的第07位、第815位、第1623位、第1623位。输出信号有:CTR9.0MC145152控 制 信 号 输 出 口 ;DATA7.0FPGA到单片机的数据输出口,与单片机的P0口相连,由SEL1.0控制输出的内容。其应实现的功能就是负责控制MC145152和实时测量压控振荡器输出信号的频率。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.5FPGA测控专用芯片组成框图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.2.4单片机控制程序的设计本系统中单片机AT89C51负责键盘处理、各工作状态的串行显示,以及配合
9、FPGA测控和频率的预置,具体包括单片机主程序,预置频率加1子程序,预置频率减1子程序,键扫子程序,测频率子程序,显示子程序等程序,各程序的流程图如图16.6图16.11所示。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.6单片机主程序流程图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.7预置频率加1子程序流程图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.8预置频率减1子程序流程图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.
10、9键扫子程序流程图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.10测频率子程序流程图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.11显示子程序流程图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.3 主要主要VHDL源程序和汇编语言程序源程序和汇编语言程序 16.3.1FPGA的VHDL源程序-YKZTQ.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYYKZT
11、QISPORT(FIN:INSTD_LOGIC;-被测频率信号输入端CLK:INSTD_LOGIC; -200Hz基准信号输入端第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 EN:INSTD_LOGIC;-ADDSUB的控制信号ADDSUB:INSTD_LOGIC_VECTOR(1DOWNTO0);-修改对MC145152的控制SEL:INSTD_LOGIC_VECTOR(1DOWNTO0);-输出数据段选择信号CTR:OUTSTD_LOGIC_VECTOR(9DOWNTO0);-MC145152控制信号DATA:OUTSTD_LOGIC_VECTOR(7DO
12、WNTO0) -输出至单片机);ENDENTITYYKZTQ;第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 ARCHITECTUREARTOFYKZTQISSIGNALDATAA:STD_LOGIC_VECTOR(23DOWNTO0);-信号计数SIGNALDATAC:STD_LOGIC_VECTOR(23DOWNTO0);-锁存频率计数值SIGNALCLKIN:STD_LOGIC;-50Hz频率SIGNALCONTROL:STD_LOGIC_VECTOR(9DOWNTO0);-MC145152控制信号SIGNALLOAD:STD_LOGIC;-数据锁存使能B
13、EGIN第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 -MC145152控制模块SXHKZ:BLOCKISBEGINPROCESS(EN,ADDSUB)ISBEGINIFENEVENTANDEN=1THENIFADDSUB=00THENCONTROL=0011111010;ELSIFADDSUB=01THENCONTROL=CONTROL+1;ELSIFADDSUB=10THENCONTROL=CONTROL-1;ENDIF;ENDIF;第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 CTR=CONTROL;ENDPROCESS
14、;ENDBLOCKSXHKZ;-测控信号发生模块CKXH:BLOCKISBEGINPROCESS(CLK)ISVARIABLECOUNT:STD_LOGIC;BEGINIFCLKEVENTANDCLK=1THENIFCOUNT=1THENCOUNT:=0;CLKIN=NOTCLKIN;第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 ELSECOUNT:=NOTCOUNT;ENDIF;ENDIF;LOAD=NOTCLKIN;ENDPROCESS;ENDBLOCKCKXH;-频率测量模块PLCS:BLOCKISSIGNALCLR:STD_LOGIC;-频率计数清零信
15、号BEGIN第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 PROCESS(CLK,CLKIN)ISBEGINIFCLK=0ANDCLKIN=0THENCLR=1;ELSECLR=0;ENDIF;ENDPROCESS;PROCESS(FIN,CLR)ISBEGINIFCLR=1THENDATAA=000000000000000000000000;第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 ELSIFFINEVENTANDFIN=1THENDATAA=DATAA+1;ENDIF;ENDPROCESS;ENDBLOCKPLCS;-
16、数据锁存模块SJSC:BLOCKISSIGNALDATAB:STD_LOGIC_VECTOR(23DOWNTO0);BEGINPROCESS(LOAD)IS-计数值锁存BEGINIFLOADEVENTANDLOAD=1THEN第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 DATAB=DATAA;ENDIF;ENDPROCESS;PROCESS(CLKIN)IS-送显示数据的锁存VARIABLEA:STD_LOGIC_VECTOR(5DOWNTO0);BEGINIFCLKINEVENTANDCLKIN=1THENIFA=000011THEN-IFA=110001
17、THENA:=000000;DATAC=DATAB;ELSE第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 A:=A+1;ENDIF;ENDIF;ENDPROCESS;ENDBLOCKSJSC;-输出选择模块SCXZ:BLOCKISBEGINDATA=DATAC(7DOWNTO0)WHENSEL=00ELSEDATAC(15DOWNTO8)WHENSEL=01ELSEDATAC(23DOWNTO16)WHENSEL=10ELSEDATAC(23DOWNTO16);ENDBLOCKSCXZ;ENDARCHITECTUREART;第第1616章章 电压控制电压控制L
18、CLC振荡器的振荡器的设计与分析设计与分析 16.3.2单片机的汇编语言源程序;YKZTQ.ASMLED8EQU7FH;显示单元LED7EQU7EHLED6EQU7DHLED5EQU7CHLED4EQU7BHLED3EQU7AHLED2EQU79HLED1EQU78HFDY8EQU3FH;测频率单元第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 FDY7EQU3EHFDY6EQU3DHFDY5EQU3CHFDY4EQU3BHFDY3EQU3AHFDY2EQU39HFDY1EQU38HFUNKEYEQUP1.0;测频率SELKEYEQUP1.1;预置,上调FIXK
19、EYEQUP1.2;修改,下调LOADEQUP2.7DD QUP2.6第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 SEL2EQUP2.5SEL1EQUP2.4RUNBZEQUP2.2ADB EQUP2.1ADA EQUP2.0INT_R1EQU46HINT_R0EQU47HINT_R2EQU48HKEYNUMEQU49HORG00HLJMPMAINORG30H第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 MAIN:CLEAR:MOVR0,#00HMOVR1,#128MOVA,#00HL1:MOVR0,AINCR0DJNZR1
20、,L1MOVSP,#60HMOVP2,#00HSETBRUNBZCLRRUNBZLCALLNL0MOVLED3,#02H;初值为25MHz第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 MOVLED2,#05HMOVLED1,#00HMOV5FH,#01H;100kHz,0.1MHzMOV5EH,#00HMOV37H,#0FAHMOVLED8,#0AHLCALL DISPML0: LCALL KKEYIMLL2:CJNEA,#00H,ML1SETB28H.0CLR28H.1第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 ML00:
21、 LCALLTESTFLCALLKKEYIIJNB28H.3,ML1LJMP ML00ML1: CJNEA,#01H,ML11CLR28H.0SETB28H.1LCALLJIACLSETBSEL1SETBRUNBZCLRRUNBZCLRSEL1LJMPML0第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 ML11: CJNEA,#02H,ML2CLR28H.0SETB28H.1LCALLJIANCLSETBSEL2SETBRUNBZCLRRUNBZCLRSEL2ML2: LJMPML0JIACL:MOV4EH,36HMOV4FH,37HLCALLADDMB第第1
22、616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 MOV36H,4EHMOV37H,4FHMOV22H,4DHMOV21H,4EHMOV20H,4FHLCALLHEXBCD2MOVLED8,#0BHMOVLED7,#12HMOVLED6,#12HMOVLED5,#12HMOVLED4,#12HLCALLDISPRET第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 JIANCL:MOVR2,36HMOVA,37HMOVR0,#5FHLCALLSUBB2MOV36H,R2MOV37H,AMOV22H,35HMOV21H,36HMOV20H,3
23、7HLCALLHEXBCD2MOVLED8,#0BHMOVLED7,#12H第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 MOVLED6,#12HMOVLED5,#12HMOVLED4,#12HLCALLDISPRETSUBB2:CPLAADDA,R0CPLAINCR0XCHA,R2第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 CPLAADDC A,R0CPLAXCHA,R2DECR0RETTESTF:ANLP2,#0FCHMOVR0,#3FH;读入数据MOVR3,#03H;读3次P0口第第1616章章 电压控制电压控制LCL
24、C振荡器的振荡器的设计与分析设计与分析 TFL0:MOV A,P0MOV R0,ADEC R0MOV A,P2INCA;指向CPLD下一个数据ADRCADRBADRA=MOV P2,ADJNZ R3,TFL0ANL P2,#0FCHMOV 58H,3EH;另存第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 MOV59H,3FHMOV22H,3DHMOV21H,3EHMOV20H,3FHLCALLHEXBCD2MOVA,LED7CJNEA,#00H,FL4MOVLED7,#12HMOVA,LED6CJNEA,#00H,FL4MOVLED6,#12H第第1616章章
25、 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 FL4:MOV LED8,#0BHLCALLDISPRET;显示程序DISP:MOV R0,#LED8;预置显示单元MOV R1,#08HJNB28H.0,DL0第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 DLL0: MOVA,R1CJNEA,#05H,DL3LJMPDL4DL0:MOVA,R1CJNEA,#02H,DL3LJMPDL4DL3:MOVA,R0MOVDPTR,#TAB1MOVC A,A+DPTRMOVSBUF,ALJMPDL1第第1616章章 电压控制电压控制LCLC振荡器的振荡器
26、的设计与分析设计与分析 DL4:MOVA,R0MOVDPTR,#TAB1MOVC A,A+DPTRORLA,#01HMOVSBUF,ADL1:JNBTI,DL1CLRTIDECR0DJNZR1,DL8LJMPNEXT4第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 DL8:JB28H.0,DLL0;JB28H.1,DL0LJMPDL0NEXT4:RET;a,b,c,d,e,f,g,hTAB1:DB0FCH,60H,0DAH;012DB0F2H,66H,0B6H ;345DB0BEH,0E0H,0FEH;678DB0F6H,0EEH,3EH;9ABDB9CH,7A
27、H,9EH;CDEDB8EH,0CEH,02H;FP-DB00H,0CFH,6EH;NL,P.,H;BCD转换及送显缓第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 HEXBCD2:NOP;3BYTEHEXTO4BYTEBCDHEX(2220H)-BCD(2623H)MUBTD:MOVR0,#23HMOVR7,#04HCLRALOPP1:MOVR0,AINCR0DJNZR7,LOPP1MOVR7,#18H;32BITLOOP4:MOVR1,#20HMOVR6,#03HCLRC第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 LOPP
28、2:MOVA,R1RLCAMOVR1,AINCR1DJNZR6,LOPP2MOVR5,#04HMOVR0,#23HLOOP3:MOVA,R0ADDC A,R0DAAMOVR0,AINCR0第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 DJNZR5,LOOP3DJNZR7,LOOP4SBCD:MOVR0,#23H;MOVR1,#LED1SL1:MOVR3,#04HHEX1:MOVA,R0ANLA,#0FHMOVR1,AINCR1MOVA,R0ANLA,#0F0HSWAPA第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 MOVR1,
29、AINCR1INCR0DJNZR3,HEX1NEXT2:RET;数码管熄灭子程序NL0:MOV R0,#LED1JNB28H.1,NL1MOV R0,#FDY1NL1: MOV R1,#08H第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 CLRRT:MOV R0,#12HINCR0DJNZ R1,CLRRTRET;键盘子程序KKEYII:LCALLKKS1;KEYSCANNINGPROGJNZKLK1;有按键,转跳KLK1KNN1:LCALLDELAY;LCALLDELAYSETB28H.3RET第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与
30、分析设计与分析 KKEYI: LCALLKKS1;KEYSCANNINGPROGJNZKLK1;有按键,转跳KLK1KN1:LCALLDELAY;LCALLDELAYLJMPKKEYI;无按键,转跳KKEYI继续测键KLK1: LCALLDELAY;LCALLDELAYLCALLKKS1JNZKLK2;确实有按键,转跳至KLK2LCALLDELAYLJMPKKEYI第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 KLK2: NOP;THEREISKEYIJBP1.0,NOK1MOVA,#00HLJMPGOHMNOK1:NOPJBP1.1,NOK2MOV A,#0
31、1HLJMP GOHMNOK2:NOPJBP1.2,NOK3MOV A,#02HLJMP GOHM第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 NOK3:NOPJBP1.3,NOK4MOVA,#03HLJMPGOHMNOK4:NOPJBP1.4,NOK5MOVA,#04HLJMPGOHMNOK5:NOPJBP1.5,NOK6MOVA,#05HLJMPGOHM第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 NOK6:NOPJBP1.6,NOK7MOVA,#06HLJMPGOHMNOK7:NOPJBP1.7,KLK1MOVA,#07
32、HGOHM:PUSHACCKLK3: LCALLDELAYLCALLKKS1第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 JNZKLK3LCALLDELAYLCALLDELAYLCALLKKS1JNZKLK3POPACCCLR28H.3RETKKS1:MOV P1,#0FFH;ISTHEREANYLCALLDELAYLCALLDELAYMOVA,P1第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 CPL ARET;IFTHEREISKEYINGTHENA=/=0DELAY:MOVR1,#09HWWW:MOVR0,#0FFHNMN
33、:DJNZR0,NMN DJNZR1,WWWRETT1S:MOV INT_R1,#0FFH第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 TSM3:MOVINT_R0,#0FFHTSM4:DJNZINT_R0,TSM4 DJNZ INT_R1,TSM3 RETADDMB:MOVR2,#02H;NOSIGNNBYTESADDSNBYTESMOV R0,#4FH;(.4FH)+(.5FH)=(.4FH)MOV R1,#5FHADDMBB:CLRC第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 ADDL:MOV A,R0ADDCA,R1
34、MOV R0,ADECR0DECR1DJNZ R2,ADDLRETEND第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.4 系统仿真系统仿真/硬件验证硬件验证 16.4.1系统调试的方法本系统既含有电压控制的LC振荡源高频电路,又含有FPGA自编程硬件设计电路和单片机控制电路,整个系统非常复杂,因此我们采用自底向上的调试方法,也就是先进行各个单元电路的软件仿真和硬件调试,在各个单元电路调试好后再进行系统联调,最后进行硬件的编程固化及系统的组装。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.4.2系统调试的软/硬件(1
35、)设计开发软件:MAX+plus10.0、伟福6000(WAVE6000forwindows)。(2)主要设备:高频电路调试设备:WYQ230V2A直流稳压电、GDS-820S数字存储示波器、EE5113型无线电综合测试仪;单片机及FPGA/CPLD调试设备:PIV计算机、伟福E6000L单片机仿真器及POD8X5XP仿真头、GW48-CKEDA实验开发系统、单片机最小系统、炜煌WH-500B程序编写加密器。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.4.3系统的有关仿真从图16.12可以看出,当ADDSUB=0(即ADDSUB1.0=00)时,CTR
36、=H0FA,即CTR=D250,当ADDSUB=1(即ADDSUB1.0=01)时,EN每来一个上升沿,CTR在原来值的基础上加1,依次为H0FB、H0FC、H0FD、H0FE、H0FF等,即CTR=D251、D252、D253、D254、D255等,亦即其锁定频率分别为25MHz,25.1MHz、25.2MHz、25.3MHz、25.4MHz、25.5MHz。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.12FPGA测控专用芯片YKZTQ.VHD的仿真图之一第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 程序设计时规定
37、CLK=200Hz,而仿真时被测信号FIN的频率为CLK的20倍,因此仿真的结果应该为20020=4000Hz。从图16.13的实际仿真结果看,所测频率为十六进制的000028,即十进制的000040,亦即00.0040MHz,也就是4000Hz,与预计的结果一致。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.13FPGA测控专用芯片YKZTQ.VHD的仿真图之二第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.4.4系统的硬件验证1单元电路的调试LC压控振荡器的调试:使用WYQ230V2A直流稳压电源、GDS-82
38、0S数字存储示波器、EE5113型无线电综合测试仪等仪器设备,对LC压控振荡器进行测试,包括是否起振,振荡器的频率、幅值、功率等。FPGA/CPLD测控电路的调试:使用MAX+plus10.0、计算机、GW48-CKEDA实验开发系统等软件和设备,对FPGA/CPLD测控电路进行VHDL程序的调试、有关仿真以及编程下载,硬件测试等。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 单片机键盘和显示控制程序的调试:使用伟福6000(WAVE6000forwindows)、计算机、伟福E6000L单片机仿真器及POD8X5XP仿真头等软件和设备,对单片机键盘和显示控制
39、程序进行调试。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 2系统的联合调试在各个单元电路调试好后即可进行系统联调,各联调设备的连接请参考相关内容。3系统的硬件验证系统联合调试成功后,可将单片机程序通过编程器固化到单片机中并插入EDA实验开发系统中的单片机插座上,将VHDL设计经过综合适配后的网表对CPLD/FPGA进行编程下载,输入相关的信号,并进行有关性能指标的测试,直到满足系统的设计要求为止。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.5 设计技巧分析设计技巧分析(1)在系统总体设计方面,充分利用单片机和FPGA
40、/CPLD各自的优势,将测控的主体频测及锁相环的控制分配给FPGA/CPLD,既可满足频测对速度方面的要求,又可满足对锁相环控制需多I/O口的要求,同时利用单片机具有良好的人机接口和控制运算的功能,可以较简单地实现键盘和显示控制。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 (2)在电压控制LC振荡源的设计中,根据前面的计算,要达到1535MHz共20MHz的频率可调范围,变容二极管在210V的电压范围内的电容值变化要达到30380pF,但这么大变容范围的变容二极管几乎没有,因此我们可分为两个频率段进行设计,这样既可克服器件的限制,又容易满足设计要求。振荡器在
41、不同频率段的工作通过转换开关实现。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 (3)在频率测量方面,由于本设计所测频率属于高频范围,因此只采用了传统的测频方法而没有采用等精度的测频方法,既实现了测频的精度要求,又大大地简化了测频模块的设计。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 (4)对锁相环MC145152的控制,既可用单片机实现,又可用FPGA实现,但用单片机控制需要两组I/O口(运算时要用到两个字节),这将会占用大量的I/O资源,而用FPGA实现则只需要10个I/O口(FPGA可以采用10位位宽来运算),并且FP
42、GA有丰富的I/O口,同时采用FPGA控制锁相环,算法上也比单片机简单,所以采用FPGA来控制MC145152。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 (5)在显示方面,首先采用串行显示和分屏显示,简化了显示数码管的数量和驱动电路的设计。其次是通过显示模式的切换,满足了系统工作在不同状态时,数码管的显示方式不一样的要求。(6)FPGA采集数据的锁存问题:我们设想的是先将采集到的数据锁存,然后清零,所以清零应该要比锁存滞后,如果将程序设定在50Hz频率的下降沿锁存,负脉宽清零,将存在不可确定的因素。如果我们在50Hz频率的下降沿锁存,但是不马上清零,而是等
43、到200Hz频率也是低电平时才清零(如图16.14所示),这样就能保证先锁存数据再清零。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 图16.14采集数据的锁存示意图第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 (7)单片机与FPGA的数据交换问题:由实际调试得知:FPGA与单片机进行数据交换时,能否成功关键在于FPGA端口处理以及单片机发送控制信号的时序应满足FPGA的要求,而且它们之间数据交换端口为单向性比双向性更可靠。第第1616章章 电压控制电压控制LCLC振荡器的振荡器的设计与分析设计与分析 16.6 系统扩展思路系统扩展思路 (1)设计并制作系统工作的外围电路:系统用方波信号源、直流工作电源。(2)设计并制作功放电路和峰-峰值测量电路。(3)系统联合调试成功后,可将单片机程序通过编程器固化到单片机中,将VHDL设计经过综合适配后的网表对CPLD/FPGA进行编程下载,将整个系统的外围电路设计制成印刷电路板。