高频信号源的原理与制作课程设计 模版.docx
《高频信号源的原理与制作课程设计 模版.docx》由会员分享,可在线阅读,更多相关《高频信号源的原理与制作课程设计 模版.docx(23页珍藏版)》请在冰豆网上搜索。
高频信号源的原理与制作课程设计模版
课程设计报告
题目:
高频信号源的设计与制作原理
所属系电子工程系
专业电子信息工程
学号
姓 名
指导教师
起讫日期
设计地点
高频信号源的原理与制作
摘要
在通信领域中,锁相环频率合成器起着越来越重要的角色。
频率合成器是一个系统,最初产生的一系列频率为参考频率的整数倍,参考频率通常是固定的。
这样的合成器称为整数N频率合成器。
频率合成器技术也不断前进,出现也很多新型的频率合成电路,并在通信电路中得到广泛应用。
本次设计是以单片机AT89C51为核心元件同时采用LED数码管显示器动态实现锁相环频率合成器的设计、制作、观察、测试。
关键词:
高频频率源信号合成
PrincipleandProductionofHigh-frequencySignalGenerator
Abstract
Inthefieldofcommunications,PLLsynthesizersplayinganincreasinglyimportantrole.Synthesisisasystem,initiallythefrequencyofaseriesofreferencefortheentirefrequencyseveraltimes,thereferencefrequencyisusuallyfixed.ThissynthesizercalledintegerNSynthesis.Synthesistechnologyisconstantlyadvancing,therearealotofnewfrequencysynthesizercircuit,andinthecommunicationscircuitsarewidelyused.
ThisdesignisutilizingtheSCMtowork,amongwhichtheSCMAT89C51isthecoreelement.Meanwhile,LEDdigitronmonitordynamicallytobedesigned,invented,watched,texted.
Keywords:
phaselockedloop(PLL);PROTEL;PCBCARD;Synthesis
目录
高频信号源的原理与制作I
PrincipleandProductionofHigh-frequencySignalGeneratorI
AbstractI
第一章课程背景1
1.1高频信号源1
1.2锁相环1
1.3单片机1
1.4频率合成器2
第二章课程目的3
2.1树立正确的设计理念3
2.2学会项目的设计流程3
2.3养成良好的研究习惯3
2.3巩固与知新3
第三章课程任务4
3.1基本元器件认识4
3.2高频信号源的制作4
第四章课程介绍6
4.1PLL频率合成6
4.1.1LC正弦振荡器电路7
4.1.2环路滤波器9
4.1.3锁相频率合成器11
4.2频率设置及显示电路14
4.3输出电路15
4.4电源部分16
第五章调试总结18
5.1调试电路18
5.1.1压控振荡器电路的调试18
5.1.2分频方波信号的观察19
5.1.3场效应管静态工作电压调试19
5.1.4输出波形及显示电路调试19
5.2实验总结20
5.2.1设计步骤20
5.2.2布局原则20
5.2.3焊接问题20
5.2.4调试问题20
第六章PROTEL99SE介绍22
6.1PROTEL99SE的运行环境22
6.2电路工程设计部分22
6.3电路仿真与PLD部分22
第七章心得体会23
附录24
原理图24
PCB25
C语言源程序26
第一章课程背景
1.1高频信号源
1.2锁相环
1.3单片机
1.4频率合成器
第二章课程目的
2.1树立正确的设计理念
2.2学会项目的设计流程
2.3养成良好的研究习惯
2.3巩固与知新
第三章课程任务
3.1基本元器件认识
常见元器件基本知识,学会辨识常见元器件,了解常见基本元件的封装、参数,掌握元器件的选型。
(1)电阻识别(色环标称法)
(2)共阳数码管公共端的辨别
(3)二极管极性判别
(4)开关按键常开常闭管脚的判断
(5)电容识别
(6)元件封装
(7)元件选择
3.2高频信号源的制作
1基本设计指标
2.设计要求:
3、制作要求
自行装配和调试,并能发现问题和解决问题。
4、编写设计报告
写出设计与制作的全过程,附上有关资料和图纸,有心得体会。
5、答辩
在规定的时间内,完成叙述并回答提问
第四章课程介绍
本次设计主要由PLL频率合成,输出电路,频率设定与现实电路三个基本部分组成。
4.1PLL频率合成
4.1.1LC正弦振荡器电路
(1)电路原理:
低通滤波器的输出通过高频扼流圈
加至变容器两端,使其结电容随着相应发生变化,从而进一步使以
为核心的电容三点式振荡器的输出频率随之变化,实现压控。
(2)电路参数:
电源电压9V,三极管选择S9018,特征频率为1100MHz。
CE31、CE32、C31、C32、L31为稳压输入电路,组成π型滤波,可防止交流电流流过电源。
保证输入+9V电压不变,为Q501提供静态工作电压。
L32为扼流线圈,防止高频振荡信号进入控制信号源。
R31、R32、R33、R34为三极管静态工作点控制电路。
振荡回路中D31~D34对于直流信号不能形成通路,却能满足交流电容量的要求。
振荡频率
f0=
。
其中,
为C34、CV31串联再和4个变容个二级管等效电容值f0=28~34MHz。
振荡回路特性阻抗
。
由于空载品质因数(
)与有载品质因数(
),特性阻抗选取100Ω。
上述分析可得下列二式:
联立方程可得:
。
实际取值L=0.22
:
从减小三极管和负载对振荡回路影响的角度考虑,可选系数:
取值:
CV31max=50pF;C34≈200pF;实际取值C1=360pF
若振荡频率的实际结果与期望值有误差,可通过调整电感或电容参数来解决。
变容二极管特性
4.1.2环路滤波器
(1)基本特性:
在锁相环路中,环路滤波器实际上就是一个低通滤波器,其作用是滤出除鉴相器输出的误差电压Ud中的高频分量和干扰分量,得到压控电压Uc。
常用的环路滤波器有RC低通滤波器,无源比例积分滤波器及有源比例积分滤波器等。
(2)电路设计
RC低通滤波器
图3.6为一阶RC低通滤波器,它的作用是将
中的高频分量滤掉,得到控制电压
它的传输函数为
式中,
为时间常数。
由此绘出一阶低通滤波器的幅频特性如图3.7所示:
上限截止频率为
,通频带
。
无源比例积分滤波器
如图3.8所示,无源比例积分滤波器的传递函数为
由上式可以看出,当
很高时,滤波器的传输函数近似为
成比例特性。
这就是比例积分滤波器名称的由来。
有源比例积分滤波器
如图3.9所示,若设运放为理想运算放大器,则
(虚断)
即:
则可得
环路滤波器LF
设环路滤波器的上限截止频率为
,从滤波的角度考虑,应有。
若选简单RC低通滤波器,则有:
取,则
取,则。
这里选RC有源比例积分滤波器作环路滤波器,取,,。
运算放大器可选单电源运放LM358。
(3)实际电路
图5.1.4RC有源比例积分滤波器
4.1.3锁相频率合成器
(1)基本电路
(2)工作原理
N计数器级数大于A计数器(N>A)。
计数循环开始,模式控制信号MC=0,前置分频为P+1级分频(÷(P+1))。
A计数器计满后,MC信号置为1,前置分频÷P,N计数器接着之前计数。
前置分频为P+1时,计数A次;前置分频为P时,计数N-A次。
计数链条总分频比为:
N=A(P+1)+P(N-A)=PN+A
f0=(PN+A)fR
此外,来自压控振荡器和双模前置分频器的输入信号fin同时加到A和N计数器进行计数分频。
输入D1、D2、D3、D4在地址码A2~A0控制下设置A和N,分别控制两计数器的分频比。
由于N>A,A计数器先计满,输出脉冲使双模双模控制逻辑MC由0变1,N计数器继续计数直到计满,MC重置为0状态,并将两计数器同时复零。
R、N计数器的输出(A、B)同时送到鉴相器进行锁相状态检测。
输出
、
分别反映信号AB间超前与滞后情况。
两电压经过低通滤波器去控制VCO的震荡频率以改善锁相状态,直到环路处于锁定状态,即fR=fV,
=
。
7、8脚电压维持在高电平,锁相状态检测输出LD为高电平,LED灯亮。
(3)145146频率合成器
内部组成:
MC145146是由4位总线输入,锁存器选通和地址编程的大规模单片集成锁相环双模频率合成器。
芯片引脚:
引脚1、2、20、19(D1、D2、D3、D4):
数字输入端,将输入信号交流耦合到此引脚,其输入信号率应小于30MHz;
引脚6、4、(VDD、VSS):
正电源与负电源,通常VSS接地;
引脚11、10、9(A2、A1、A0):
参考地址码输入端,用于
选择内部锁存器;
引脚17、16(ФR、ФV):
鉴相器双输出端,用于输出环路
误差信号;
引脚14(MC)为模式控制端,输出的模式控制信号加到双模前置分频器,即可以实现模式变化。
引脚7、8(OSCin、OSCout)为参考振荡端,当两端接上一并联谐振晶体时,便组成一个参考频率振荡器。
引脚3(fin):
输入端,将前置分频器的输出信号交流耦合到此引脚,其输入信号频率应小于30MHz
引脚15(fv):
输出端,该信号是经N分频器分频后输入到鉴相器信号。
引脚18(fR):
输出端,该信号是参考振荡器产生的信号经R分频器分频的信号,也是鉴相器的另一个输入信号
引脚13(LD):
为锁定检测端,用于检测锁定,当环路锁定时,LD为高电平,当环路失锁时,LD为低电平。
引脚5(PDout):
鉴相器输出端,用于输出环路误差信号
(4)双模前置分频器
MB504L是由富士通生产的双模前置分频器,分频比为32/33或者64/65。
由MC145146内的鉴相器、运放LM358组成的有源低通滤波器和三极管9018构成的压控振荡器组成锁相环,再与MC145146内参考频率固定分频器、外部信号固定分频器和MB504L组成频率合成器。
基本电路:
基本特性:
合成原理N=A(P+1)+P(N-A)=PN+A
fo=(PN+A)fN=PNfR+AfR
用MB504L实现,与N计数器和A计数器一起构成吞脉冲程序分频器。
4.2频率设置及显示电路
(1)按键开关
采用单键开关设置频率,S1——频率增加10KHZ,S2——频率增加100KHZ,S3——频率增加1MHZ
显示为十进制,分频控制为二进制。
(2)LED数码管显示
单片机的P1口用于控制4位LED的段选码;P2口的P2.0-P2.3用于控制4位LED位选码。
由于所有的段选码连在一起,所以同一瞬只能显示同一种字符。
单片机内部烧录的程序使P10~P18管脚输出一位数字的段码,P00~P03管脚输出数据D0~D3,P20~P22输出地址到A0~A2,P33输出到ST,P34~P37输出位码。
单片机振荡时钟信号由晶振Y2、电容C61、C62产生,其频率为12MHz。
由于单片机为输出开路型,P00~P07口接1kΩ排阻,起上拉电阻作用。
输出位码同时送至四位数码显示,但由于段码控制,每次只有一位数字的共阳端接高电平,既每次只有一位数码显示。
(3)共阳数码管显示电路
电路采用动态显示方式以减小显示电路的电流,减小功耗。
其原理是:
每次只显示一位数字,但每位数字间显示间隔短,视觉上四位数字同时亮。
四位数字七段显示a~g管脚对应连接,与单片机P0口相应输出端相连。
每次单片机输出的八位二进制段码分别送给四位显示器,但由于位码每次保证只有一位输出高电平,每次只有一位数字的LED灯亮。
输出的位码使四位显示轮流接高电平既轮流显示各位数字。
(4)5.2.3驱动器
图5.2.3驱动器
由于单片机输出电流较小,不足以驱动七段共阳数码管,采用PNP管作为驱动器,对单片机输出电流放大,减小单片机电流负载。
以Q61为例:
当单片机输出位码COM1为低电平时,三极管道通,输出C1为高电平,显示一位数字
4.3输出电路
(1)场效应管:
隔离放大,在外加电压时调节可变电阻RV1用万用表测量源极静态工作电压为4.5v
(2)射极输出器:
在电路J1两端并联一可调电阻测量电阻两端电压。
调节电阻阻值使交流电压表示数为断开电阻直接测量的输出电压值的1/2,即可保证电阻阻值与输出交流阻抗相等。
最后,断开电路,单独测量可调电阻阻值既得输出交流阻抗大小。
由于电路频率较高,万用表测量频率不能达到要求,测量时选用交流毫伏表。
4.4电源部分
9V稳压电源输入
图5.4.1电源输入
图5.4.2电源显示电路
电源显示电路,其中R72为限流电阻。
图5.4.35V电压源
变压,为电路中各芯片提供5V电压
其中R72选用功率1W的电阻,阻值10Ω以保护LM7805CT。
并联电容可减少电源电压变化的影响,保证输出5V不变。
第五章调试总结
5.1调试电路
5.1.1压控振荡器电路的调试
5.1.2分频方波信号的观察
5.1.3场效应管静态工作电压调试
通电情况下,在外加电压时调节可变电阻RV1用万用表测量源极静态工作电压为4.5v。
5.1.4输出波形及显示电路调试
5.2实验总结
5.2.1设计步骤
5.2.2布局原则
5.2.3焊接问题
5.2.4调试问题
第六章PROTEL99SE介绍
第七章心得体会
1
PCB
C语言源程序
/***********************************************************/
//数字频率合成器的设计100507
//配合AZ综合和系统,采用AT89C51,12MHz晶振
//P1口输出段码,P00~P0输出数据3D0~D3,P20~P22输出地址到A0~A2,P33输出到ST
//P37~P34输出位码
//key0接P30,为加10kHz用;key1、key2接P31、p32,分别为加100kHz、家1MHz
/************************************************************/
#include"reg51.h"
#definecharunsignedchar
#defineintunsignedshortint
charcodedis_7[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//共阳LED段码表
chardatadis[4]={0,1,2,3};
chardatatemp;
chardatatemp1;
chardatacountk0=0,countk1=0;
chardatacounta=0;
intcountn=0,countr=0,countk2=20;
sbitkey0=P3^0;
sbitkey1=P3^1;
sbitkey2=P3^2;
sbitST=P3^3;
sbitb0=P3^7;
sbitb1=P3^6;
sbitb2=P3^5;
sbitb3=P3^4;
bit1delay=0;//长定时溢出标记,预置是0
/******************1ms延时函数*******************************/
delay1ms(intt)
{
inti,j;
for(i=0;ifor(j=0;j<120;j++)
;
}
/*********************显示函数*******************************/
display()
{
P3=0xff;
P1=dis_7[dis[0]];
b0=0;
delay1ms
(1);
P3=0xff;
P1=dis_7[dis[1]];
b0=0;
delay1ms
(1);
P3=0xff;
P1=dis_7[dis[2]];
b0=0;
delay1ms
(1);
P3=0xff;
P1=dis_7[dis[3]];
b0=0;
delay1ms
(1);
}
/*******************按键扫描函数*****************************/
keyscan()
{
if(0==key0)//按键按下
{
delay1ms(10);
while(key0==0);//等待松开按键
if(countk2<40)
countk0++;
if(10==countk0)//进位
{
countk0=0;
countk1++;
if(10==countk1)
{
countk1=0;
countk2++;
if(40{
countk2=20;
}
}
}
}
if(key1==0)
{
delay1ms(10);
while(key1==0);//等待松开按键
if(countk2<40)
countk1++;
if(10==countk1)//进位
{
countk1=0;
countk2++;
if(40{
countk2=20;
}
}
}
if(key2==0)
{
delay1ms(10);
while(key2==0);//等待松开按键
countk2++;
if(10==countk2)//进位
{
countk1=0;
countk0=0;
}
if(40{
countk2=20;
}
}
countn=(countk2*100+countk1*10+countk0)/64;//设置计数器N
counta=(countk2*100+countk1*10+countk0)%64;//设置计数器N
P2=0x02;//送锁存器L2地址
P0=countn;//送数据
ST=1;//开锁存器
ST=0;//关锁存器
P2=0x03;//送锁存器L3地址
countn=countn>>4;//右移4位
P0=countn;//送数据
ST=1;//开锁存器
ST=0;//关锁存器
P2=0x04;//送锁存器L4地址
countn=countn>>4;//右移4位
P0=countn;//送数据
ST=1;//开锁存器
ST=0;//关锁存器
P2=0x00;//送锁存器L0地址
P0=countn;//送数据
ST=1;//开锁存器
ST=0;//关锁存器
P2=0x01;//送锁存器L1地址
counta=counta>>4;//右移4位
P0=counta;//送数据
ST=1;//开锁存器
ST=0;//关锁存器
dis[0]=countk0;
dis[1]=countk1;
dis[2]=countk2%10;
dis[3]=countk2/10;
}
/************************主函数*****************************/
main()
{
ST=0;//关锁存器
delay1ms(1001);
ST=0;//关锁存器
countr=0x0400;
P2=0x05;//送锁存器L5地址
P0=countr;//送数据
ST=1;//开锁存器
ST=0;//关锁存器
P2=0x06;//送锁存器L6地址
countr=countr>>4;//右移4位
P0=countr;//送数据
ST=1;//开锁存器
ST=0;//关锁存器
P2=0x07;//送锁存器L7地址
countr=countr>>4;//右移4位
P0=countr;//送数据
ST=1;//开锁存器
ST=0;//关锁存器
while
(1)
{
keyscan();
display();
}
}