1、 引 言

频率特性是一个系统(或元件)对不同频率正弦输入信号的响应特性。如图1所示,被测系统输入幅值为Ar、角频率为ω的正弦信号,如果该系统是线性的,则其稳态输出也是正弦信号,频率ω不变,幅值为Ac,相角差为φ。改变ω可以得到一系列输入和输出数据。输出对输入的幅值比A(ω)=Ac/Ar与ω的关系曲线称为该系统的幅频特性,通常取20 lg A(ω)称为对数幅频特性。输出对输入的相角差φ(ω)与ω的关系曲线称为该系统的相频特性。幅频特性和相频特性综合称为频率特性,常用的是系统的开环频率特性即波特图。

一个系统的频率特征可通过频率特征测试仪来测定。频率特性测试仪也称扫频仪,用于测试被测网络的幅频特性。他可以测量被测网络的谐振频率、带宽、带外衰减、增益等,是电子领域的常用设备之一。模拟式扫频仪价格较贵,且不能直接得到相频特性,更不能保存频率特性图和打印频率特性图,给使用者带来了诸多不便,为此没计了此数字式频率特性测试仪。

2、 总体设计

单片机控制信号源产生标准正弦波,输入到被测网络;被测网络的输出分别输入幅度检测电路和相位检测电路,得到峰值和相位差值送入单片机进行处理;单片机处理后的结果一方面提供给LED实时显示,另一方面存人存储器,供示波器显示幅频、相频曲线。总框斟如图2所示。

2.1 扫频信号源的设计

扫频信号发生器是频率特性测试仪的核心,他提供被测网络输入所需的频率随时间在一定范围内周期变化的正弦信号。扫频信号产生的方法有锁相环(PLL)及可预置分频器、单片集成波形发生器、专用频率合成器件及直接数字频率合成(DDS)电路等。本系统采用单片机控制,利用EDA技术,选用系统可编程逻辑器件ispCPLD芯片,构成直接数字频率合成器(DDS)来产生扫描正弦波。

直接数字频率合成(Direct Digital Frequency Synthe-sis,DDS)是一种纯数字化方法。因为DDS具有超高速的频率转换时间,极高的频率分辨率和较低的相位噪声,在频率改变与调频时,DDS器件能够保持相位的连续,因此很容易实现频率、相位和幅度调制,此外DDS还具有可编程控制的突出优点。DDS主要由相位累加器、正弦ROM表和数模转换器等组成,其核心是相位累加器,他由一个N位字长的二进制加法器和一个有时钟fclk取样的N位寄存器组成,作用是对频率控制字进行线性累加。当相位增量为1,累加器的字宽为32位时,输出地址对应于波形的相位分辨率为l/232。正弦ROM表中存储着一张正弦函数查询表,对应不同的瞬时相位码输出不同的幅度编码。工作时往DDS中写入控制字到相位累加器并转化成瞬时相位,在外部参考时钟的作用下,每个时钟周期相位累加器累加相位步进一次,对应的幅度编码输出给数模转换器(D/A),把数字量转化为模拟量,再通过低通滤波器平滑后得到最后需要的信号。并且该模拟正弦波与一门限电压进行比较可得到同频率的方波时钟信号,他将所需正弦波一个周期的离散样点的幅值数字量存入ROM中,然后按一定的地址间隔(相位增量)读出,并经D/A转换器形成模拟正弦信号,再经低通滤波器得到质量较好的正弦信号。

信号发生器输出波形的频率f0定义为:

其中fc为晶振频率,k为分频比,N为相位累加器位数,M为相位累加器的增量(步长)。

本设计中取fc=32.768 MHz,k=50,N=16,代入上式可得:

这样只要控制M的值就可以准确地实现频率步进10Hz的要求。这里时钟频率为:

式中,△phase为频率控制字,sysclk为系统时钟,clkin为DDS的输入参考时钟频率,N为频率寄存器的位数,M为相位偏移寄存器的位数。频率控制字△phase决定着输出信号的频率值;最小频率分辨率由频率寄存器的位数N决定,N越大,频率分辨率越高;相位分辨率由相位偏移寄存器的位数决定,幅度分辨率由D/A转换器的精度决定。

2.2 幅频和相频特性设计

幅频特性测试电路由峰值检波器和D/A转换器组成。峰值检波器由“运放”和检波二极管构成。如图3所示。他将被测网络的输出信号峰值检出来(代表网络幅频规律),送往8位ADC0809模数转换器,数字化后再送单片机AT89C51进行处理。

幅频特征测试中常用的检波方式有峰值检波和有效值检波。但由于有效值检波无法达到设计要求的500 Hz~10 kHz频率变化范围,所以采用峰值检波。利用有源峰值检波器实现峰值测量,峰值检波器将被测网络的输入和输出信号的峰值检出,再送至A/D转换器完成量化。实际上,由于信号源的D/A及低通滤波器的特性能保证在100 Hz~100 kHz范围内的幅值保持不变,所以可以省去一路峰值检波器及A/D,而只采集被测网络的输出信号。

相频特性测试电路(框图如图4)由两个过零比较器、鉴相器、低通滤波器和A/D转换器组成。两个比较器由“运放”构成过零信号比较器,分别将被测网络的输入、输出正弦信号转换为数字信号。

鉴相器采用ETESTER实现。鉴相出被测网络的输入、输出信号的相位差信号,经过低通滤波器滤波得到被测网络的相移信号,送至ADC0809进行模数转换成数字量,再送到单片机进行处理。由鉴相器输出的脉冲信号的占空比与这两路信号的相位差成正比,即:

相位差=N1/(N1+N2)×360°

其中N1是高电平脉宽时间内的计数值,N2是低电平脉宽时间内的计数值。两路同频率不同相位的时钟信号PA和PB通过鉴相器epd后,将输出一路具有不同占空比的脉冲波形。其频率与输入频率相同,而占空比与PA和PB信号上升沿的时间有关。epd的脉宽等于PB和PA信号上升沿的时间差,这个时间差即为PB,他正好等于epd的占空比乘以360°。

2.3 频率特征的显示和打印

频率特性测试仪设计中包含两种显示方式,一种为LED显示数值,并可打印输出;另一种为用示波器显示频率特性曲线。我们参考的打印方式是在系统中设计一个RS 232串行口,利用MCU的串口功能实现与单片机AT89C51通讯,利用PC机的打印控制功能完成打印。

一般的示波器是输入模拟电压信号,即要将已经测量得到的幅频特性和相频特性数据经D/A转换为模拟电压量。因为使用单通道示波器显示幅频和相频两条曲线,所以可以使两条曲线分时显示在屏上的不同位置。为了便于观察,当输出幅频特性数据显示在屏幕上方时,可在D/A的输出相迭加一个正电压,由于示波器的扫描速度很快,相频看起来和幅频两条曲线同时显示在屏幕上。

3 、结语

该系统体积较小,由于选用的单片机是AT89C51,且单片机系统的程序较短,所以无需扩展EPROM和RAM。另外,由于使用了DDS集成电路来产生扫频信号,所以扫频信号的质量高,扫频范围较宽。但是,因为该系统使用的是点频法测量网络的频率特性,系统测绘时间略长。若要提高系统的扫频范围,可用输出频率更高的DDS器件。

实验表明,该系统稳定可靠,显示打印的幅频特征曲线与传统扫频仪所测得的曲线相符,绘制的频率特性图与理论一致。软件的操作使用和图形数据的处理非常方便,整个仪器的使用非常简单,是模拟式扫频仪无法相比的。

责任编辑:gt

51单片机dds信号发生器 扫频 c语言,基于AT89C51单片机和DDS器件实现频率特征测试仪的设计...相关推荐

  1. 33220a 编程C语言,基于AT89C51单片机的数字式波形发生器(非常完整).doc

    摘要 本系统是基于AT89C51单片机的数字式波形发生器.采用AT89C51单片机作为控制核心,外围采用数字/模拟转换电路(DAC0832).运放电路(LM324).按键和LCD(1602)等.通过按 ...

  2. 基于at89c51单片机的led数字倒计时器设计c语言,基于AT89C51单片机的LED数字倒计时器设计1.docx...

    基于AT89C51单片机的LED数字倒计时器设计1 单片机原理及其应用课程设计课 题: 基于AT89C51单片机的LED数字倒计时器设计专 业: 电工程及其自动化班 级: 2013 级 4班学 号: ...

  3. 软件工程-c语言--基于at89c51单片机c语言编写的计算器,基于AT89C1单片机C语言编写的计算器.doc...

    基于AT89C1单片机C语言编写的计算器 #include #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; ...

  4. 基于单片机的血压计c语言,基于AT89C51单片机的便携式数字血压计的设计

    1. 引言 目前,由于不科学的饮食习惯以及不健康的生活习惯,导致人们容易患上各种疾病而高血压作为其中的一类疾病,己经严重威胁着现代人的健康.如何及早的检测高血压就成为人们抗击高血压的首要问题.目前的数 ...

  5. 基于单片机的倒车雷达系统设计c语言,基于AT89C2051单片机实现超声波倒车雷达系统的设计...

    描述 倒车雷达(Car Reversing Aid Systems)的全称是"倒车防撞雷达",也称"泊车辅助装置",是汽车泊车安全辅助装置,能以声音或者更为直观 ...

  6. 51单片机节日彩灯控制c语言,采用AT89C51单片机设计的可编程彩灯控制

    本文介绍一种采用单片机设计的可编程彩灯控制器,使用者布置好彩灯接好线路后不需要改变接线,就可以按自己的要求编入各路彩灯的亮灭顺序和延时时间,随时改变显示花样,可配合各种字符.图案,增加艺术效果,也可用 ...

  7. spwm单片机4路输出C语言,基于PIC单片机的正弦波逆变器设计与实现

    描述 目前,SPWM信号主要有3种生成方式: 1)使用比较器.振荡器等模拟电路产生三角波和方波进行比较,产生SPWM波,但是此种方法电路复杂,受元器件精度影响大,且不易控制: 2)利用专用SPWM集成 ...

  8. c语言写51单片机八路抢答器,基于AT89C51单片机的八路抢答器设计方案.doc

    基于AT89C51单片机的八路抢答器设计方案 毕业设计(论文)-基于AT89C51单片机的八路抢答器设计 图书分类号:密 级: 毕业论文 基于AT89C51的八路抢答器设计OCTAL ANSWER D ...

  9. 51单片机设计简易计算机原理,基于AT89C51单片机简易计算器的设计(DOC).docx

    PAGE PAGE # 基于AT89C51单片机简易计算器的设计 [摘要]单片机的出现是计算机制造技术高速发展的产物,它是嵌 入式控制系统的核心,如今,它已广泛的应用到我们生活的各个领域, 电子.科技 ...

最新文章

  1. 图像空间变换--imtransform
  2. pandas中dataframe索引排序实战:pandas中dataframe索引降序排序、pandas中dataframe索引升序排序
  3. 谷歌AI一次注释了10%的已知蛋白质序列,超过人类十年研究成果
  4. python列表生成字典_Python 列表生成式 字典生成式
  5. hibernate 向数据库里设置了默认值的字段添加数据为null时失效的问题
  6. OpenCASCADE:要求
  7. elasticsearch和mysql排序问题
  8. iOS开发常用输入校验
  9. 移动前端适配—逻辑像素和物理像素
  10. mybatis动态sql标签的使用
  11. 优麒麟这样的linux版本,百度网盘 Linux 版发布,搭配优麒麟运行更完美!
  12. 光滑噪声数据常用的方法_数据挖掘部分课后习题
  13. layui 之button 事件绑定的一种方法
  14. 欧姆龙plc解密实例_欧姆龙PLC CP1H解密实例
  15. 产品经理职责和工作内容
  16. freemarker+Jfreechart生成Word文档(含图片)
  17. 计蒜课中沙子的质量(动态规划)感想
  18. 怀旧服显示服务器已满,十五年前的怀旧服居然还能服务器爆满 魔兽世界正式服算不算失败...
  19. 计算机数据传输9600波特率,波特率9600每秒的传输字节 传输一个字节要多久-与非网...
  20. smtp 协议 MIME协议

热门文章

  1. 5元以下纯铜小摆件_【拍4斤发5斤】早餐饼干网红早餐代餐曲奇酥性小饼干零食500g6元优惠券券后价5.8元...
  2. php 封装的调试方法,关于php面向的特性之封装
  3. python 鱼骨图_面向对象编程,鱼骨图分析法
  4. android+动画+锯齿,Android_rotate--animation 动画旋转两图片,消除动画锯齿现象 android 开发:动画旋转两图片 - 下载 - 搜珍网...
  5. python docker自动化_「docker实战篇」python的docker爬虫技术-移动自动化控制工具安卓ADB的使用(15)...
  6. 如何才能轻松地分析日志?
  7. 现代浏览器工作原理(一)
  8. 08 Tomcat+Java Web项目的创建和War的生成
  9. Win8 Metro(C#)数字图像处理--2.40二值图像轮廓提取算法
  10. Python自学----- while if 列表结合,购物车程序