- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程控滤波设计说明
程控滤波器设计说明
摘要:本设计为基于单片机的多档位程控滤波器, 采用OP07进行信号放大,MAX262进行多种频段滤波; 信号输入部分用MAX038 多种输入切换,信号输出部分用ADC0809制作了简易电压表,配合最大值保持电路, 完成电压输出。各部分的档位切换均通过89C52单片机控制八选一开关CD4051实现。
本设计实现了可调频率的波形发生、对给定小输入信号的放大、滤波并实时记录峰值的功能,程控滤波器具有使用灵活、调试容易的(20mA) 的函数信号发生器芯片。输出频率范围: 0. 1 ~ 20 MHz,可产生正弦波、方波、三角波、锯齿波及脉冲波,输出频率和占空比(15 %~85 %) 独立可调,带低输出阻抗的输出缓冲器,可以实现对输入信号和扫频信号的要求。
放大部分初始设计选择了AD521和OP07,经检验发现AD521放大误差较大,不能满足要求,改用OP07。根据题目,基本部分电压放大增益40dB, 发挥部分电压放大增益60dB, 一个OP07 不能满足要求,故采用两个OP07串联的形式,每个增益30 dB.
经过滤波的电压在输出前再次经过一个OP07进行放大,经一个阻容回路进行最大值保持,最后输出,信号同时送个一个由单片机和ADC0809构成的简易电压表进行显示。
系统中用到4个CH451芯片,它是一个整合了数码管显示驱动和键盘扫描控制以及μP 监控的多功能外围芯片,内置RC 振荡电路,可以动态驱动LED、具有闪烁、移位等功能;同时还可以进行64 键的键盘扫描。CH451通过1 线或者可以级联的4 线串行接口与单片机等交换数据。本设计中所有键盘显示功能均由CH451芯片实现。
程序流程
系统由4个CPU分别控制,各部分有独立的程序进行控制, 程序流程主要分为初始化、选择切换,显示结果几个部分。其中滤波部分的程序流程如下:
关于程序设计的相关问题说明:系统中共涉及4 组程序,分别完成二阶、四阶低通、高通滤波,并能够设置并显示截止频率,设置范围在20k-100khz等功能。
技术要点分析
滤波器设计原理说明
本设计采用的MAX262, 其效果接近模拟滤波器,故采用模拟滤波器设计方案进行设计。在若干典型滤波器中,Butterworth具有单调下降的幅频特性,椭圆滤波器的选择性则较好。
Butterworth低通滤波器的幅度平方函数用下式表示:
其中为3dB处截止频率,是滤波器的阶数。当时,随着频率加大,幅值迅速下降。 下降的速度与阶数N有关, N越大,幅度下降的速度越快,过渡带越窄。根据题目基本要求,在处滤波器的幅值衰减比例不能大于30dB/40dB=0.75.
根据上式计算,条件下,, 则 =0.2425
选择二阶Butterworth和椭圆滤波器,在不同频段选择不同的滤波器类型和阶次。
输入信号频率选择及放大部分:
MAX038通过选择控制端A0 ,A1 的电平选择一种波形(见表1), 输出频率主要受振荡电容CF、IIN 端电流和FADJ 端电压的控制。选择一个CF 值,对应IIN 端电流的变化,将产生一定范围的输出频率。
滤波器采用单片机89C5来完成对可编程滤波器MAX262的控制,很好地实现了有源滤波器设计工作。fCLK/f0与F0~F5的关系表格,fCLK/f0计算编程数据F0~F5的公式,即fCLK/f0与F0~F5的关系为:
fCLK/f0=40.84+1.57N1 (1)
或,N1为二进制数据F0~F5对应的十进制整数,范围为0~63共64级。
对应滤波器的Q值也采用查表的方法计算来获得Q值的编程数据Q0~Q7。Q值与Q0~Q7的关系为:
Q=64/(128-N2) (3)或 N2=64(2-1/Q) (4)
其中,N2为二进数据Q0~Q6对应的十进制整数,范围为0~127共128级。
首先根据输入的键值完成对滤波器的选择,包括滤波器A和B的设置选择以及相应滤波器的类型选择;然后根据输入的Q值计算N2并转换成二进制编程数据Q0~Q6送片内RAM;由输入的中心频率f0值计算N1并转换为二进制编程数据F0~F5送片内RAM。在获得MAX262的工作参数后,将这些参数转换为8字节的编程数据,由89C5到MAX262。
设置完成后,MAX262就按照当前所要求的中心频率和Q值对输入信号进行滤波处理。后调用显示子程序,在LED数码管显示当前滤波器的工作参数,即中心频率和Q值。
四阶滤波滤波器A和B的级联来实现
输入频率 功能 输出幅值 功能 输出幅值 1khz 高通 0V 低通 1V 2khz 高通 0.02V 低通 1V 5khz 高通 0.3V 低通 1V 10khz 高通 0.8V 低通 0.8V 20khz 高通 0.9 V 低通 0.5 V 30khz
文档评论(0)