实用信号源设计

发布者:二进制心灵最新更新时间:2022-07-06 来源: elecfans关键字:信号源  软件  设计方法 手机看文章 扫描二维码
随时随地手机看文章

一、实验目的                                                                                                                  返回

1.理解实用信号源设计的基本原理。
2.掌握实用信号源的软件设计方法。


二、实验内容

1.外接示波器观察数字合成信号源产生的波形,设定不同的幅度和频率,观察所得波形的变化。
2.用信号源高级设置设定波形输出。
3.使用键盘试验板上的按键,作为信号源的控制和数字按键。
4.输出要求的复杂组合波形的信号。


三、实验器材

1.计算机                               1台
2.SJ-8002B电子测量实验箱               1台
3.键盘实验板                           1块
4.数字示波器                           1台


四、实验原理

1.直接数字合成基本原理

(1)DDS组成原理

直接数字合成(Direct Digital Synthesis)的基本原理是基于取样技术和计算技术,通过数字合成来生成频率和相位对于固定的参考频率可调的信号。其完整的DDS原理框图如图1所示。


                            图1   DDS组成原理

主要由:相位累加器、ROM波形存储器、DAC数模转换器以及低通滤波器组成。整体的工作原理如下:首先相位累加器根据输入的频率控制码输出相位序列,并作为波形存储器RAM的地址,RAM里面可以是预先存放的固定波形的一个周期的幅值编码,也可以是用户在使用过程中存入的任意波形的幅度编码,这样RAM的数据线上就产生了一系列的幅度编码数字信号,然后把该编码经过D/A转换得到模拟的阶梯电压,最后经过低通滤波器使其平滑后即得到所需要的模拟波形。

频率控制字和时钟频率共同决定着DDS输出信号的频率频率分辨率正比于系统的时钟,而反比于相位累加器的位数。
它们之间的关系满足:                                (公式1)
相应的,其频率分辨率为:                               (公式2)

  (2)相位累加器原理

如果改变地址计数器计数步进值(即以值来进行累加),则在保持时钟频率和ROM数据不变的情况下,可以改变每周期采样点数,从而实现输出频率的改变。例如:设存储器中存储了个数据(一个周期的采样数据),则地址计数器步进为1时,输出频率,如果地址计数步进为,则每周期取样点数为,输出频率

  (3)DDS的性能

DDS信号源输出的信号实际上是以时钟的速率对波形进行取样,从获得的样本值中恢复出来的。根据取样定理,所以。实际中一般取。当时,输出频率最小,。输出频率的分辨率由相位累加器的位数决定,即
    例如:参考时钟频率为1GHz,累加器相位为32位,则频率分辨力为0.233Hz。而改变时,其频率分辨力不会发生变化,因此DDS可以解决快捷变换与小步进之间的矛盾。由于D/A、存储器等器件的限制,DDS输出频率的上限不高,目前仍只能达到几十MHz。

2.信号源硬件原理图

                                          图 2     硬件原理图

3.程序中高级设置输出波形原理

信号源高级设置包括波形,频率相关(时钟频率,步进),幅度相关(幅度初调,幅度微调)等几部分的设置。
①频率设置
频率设置

              
 ——输出信号频率。
 ——时钟频率,可取值80M,40M,20M,10M,5M,1.25M,625K,156.25K。
   N——SJ—8002B主板的相位累加器是24位,故N=24。
   K——频率控制字,其大小? 0≤K<2N-4 。
  
   H——步进高4位,取值范围0~15。
   M——步进中8位,取值范围0~255。
   L——步进低8位,取值范围0~255。????????? ????
   例如:选择“时钟频率”=80MHz,“步进高位”H=0,“步进中位”M=5,“步进低位”L=25,则可以得到频率控制字,再由公式得到

  注意:设置的步进高位范围是0~15,步进中位范围是0~255,步进低位范围是0~255。

  ②幅度设置
   依据公式
   V——输出的峰值幅度。
   M——幅度初调(幅度分辨率),取值0.005,0.01,0.02,0.04。
   N——幅度微调,取值范围50~250。
   例如:“幅度初调”选择为0.01N,则幅度分辨率M=0.01;“幅度微调”设定N=150,则可得输出信号的峰值幅度   


4.矩阵式键盘的原理

(1)矩阵式键盘


(2)矩阵式键盘的编程

矩阵式键盘连接可分为编码式和非编码式两种。对于非编码式连接的键盘,其应用编程可分为:判键、识键部分和键处理部分。
①判键和识键
即指判断是否有键按下和确认所按下键的位置。确定矩阵式键盘上何键被按下采用一种“行扫描法”。行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法。

无键按下时,矩阵式键盘的行,列线通过上拉电阻均为高电平(见图4)。然后,依次将键盘逐行置低,同时取出输入列线状态,若此时输入不为全高(0xFF),则表明该行有键被按下。因为行线输出有低电平,一旦该行有键按下,则输入线就会被拉低。这样,就可得判断出是否有键按下了。同时,可根据置低的行线和读入的输入线的状态,找出被按下的键位置。

在判键过程中,还要加入按键去抖动处理。一次按键的完整过程如图3所示(按键按下时,键盘输入线上呈现的波形),按键的抖动

                     图3 按键抖动波形

包括前沿抖动(刚按下时)和后沿抖动(释放时)两个过程,抖动持续时间与按键弹簧的机械特性有关,通常为几ms至几十ms,可采用软件延时的办法进行处理。

②键处理
键处理即在识别到某键按下后,作出不同的处理。在应用上,一般将键盘分为功能键和数字键(也可两者复用),功能键一般采用散转的办法,让程序执行不同的操作。

实际上,键盘处理是很复杂的,它往往占到一个应用程序的大部份代码,但这种复杂不来自于设备的本身,而是来自于操作者的习惯等等问题。因此,在编写键盘处理程序之前,应先把它从逻辑上理清,然后用适当的算法表示出来,最后再编写代码。


5.矩阵式键盘的实验电路


                                图4   矩阵式键盘连接图

实验电路是采用2×8的矩阵键盘电路,键盘的行线通过由74LS273锁存器构成的输出接口(端口地址为70H)输出,列线通过74LS245总线接收器构成的输入接口(端口地址为74H)输入。键盘共16个键,定义了功能键:F1、F2、F3、F4、CR键共五个;数字键:0~9及小数点共十一个(如图4所示),使用者可以自己定义每个键功能和相应的处理。


                         图5 键盘端口地址

右图5为判键和识键过程中所需要用到的键盘地址和控制字。 本实验共用到三个端口地址:70H:通过74LS273锁存器,控制扫描键盘的行线。 74H:通过74LS245总线接收器,读取控制扫描键盘的列线状态。73H:控制键盘面板上的LED指示灯。

五、设计指导

   1.信号源高级设置部分

   1)结构流程图

                          图6    高级设置部分结构流程图
    2)树形图



                                    图7   高级设置部分调用结构
    3)功能与前面板设计

                                              图8   高级设置前面板

表1   高级设置控键及显示键汇总

编号

名称

功能

位置

备注

1

时钟频率


All controls>Ring&Enum>Enum


2

步进高位

步进值高4位

All controls>Numeric>Numeric Control

取值范围0~15

3

步进中位

步进值中8位

All controls>Numeric>Numeric Control

取值范围0~255

4

步进低位

步进值低8位

All controls>Numeric>Numeric Control

取值范围0~255

5

幅度微调


All controls>Numeric>Numeric Control

取值范围50~250

6

幅度初调


All controls>Ring&Enum>Enum


7

启动

依据参数启动信号

All controls>Boolean>OK Button

按下后依据面板上设定的值,启动相关信号源。

8

波形选择

选择输出的波形

All controls>Ring&Enum>Menu Ring

选择16种波形中1种。

9

图形框

显示所选波形示意图

All controls>Graph>Waveform Graph

设置参数:X轴:0~502,Y轴:-10~266。

    注:2通道的情况与1通道类似。

   4)动态调用链接
    本程序设计的主要实现已经做成底层fp函数(用Labwindows/CVI实现),在程序实现时可直接调用实验箱提供的驱动函数动态链接(即.dll函数),驱动函数原型及常数和变量在cvidll.prj中。

                                   表2   高级设置中动态调用说明

fp函数

实现功能

输入参数

输出参数

参数说明

动态链接图标

void inTI_wave1

初始化信号源,把波形数据写入SRAM

int DDS_channle
unsigned char wave
_data[]
unsigned char shape


void profession_source

依据相关参数,启动信号源

int DDS_channle
unsigned char clk_cw
unsigned char fcw_L
unsigned char fcw_M
unsigned char fcw_H
unsigned char shape
unsigned char gain_cw
unsigned char vef_cw
unsigned char filter_cw

Clk_cw:时钟选择的控制字。
Fcw_L: 步进低8位。
Fcw_M: 步进中8位。
Fcw_H: 步进高4位。
Gain_cw:幅度增益控制字。
Vef_cw: 幅度微调控制字。
Filter_c:滤波频率选择控制字。

 

   2.信号源键盘控制部分

   1)结构流程图

图12 信号源键盘控制部分结构流程图

    2)树形图


                                   图13  信号源键盘控制部分结构树形图

     3)功能与前面板设计

图14    信号源键盘控制部分前面板

表3   信号源键盘控制部分控键及显示键汇总

编号

名称

功能

位置

备注

1

波形选择

选择输出的波形

All controls>Ring&Enum>Menu Ring

选择16种波形中1种。

2

波形指示灯

显示正在通过键盘板设置波形

All controls>Boolean>Round LED


3

峰值幅度

设置波形幅度

All controls>Numeric>Numeric Control


4

幅度指示灯

显示正在通过键盘板设置幅度

All controls>Boolean>Round LED


5

信号频率

设置信号频率

All controls>Numeric>Numeric Control


6

频率指示灯

显示正在通过键盘板设置信号频率

All controls>Boolean>Round LED


7

启动

依据参数启动信号

All controls>Boolean>OK Button

按下后依据面板上设定的值,启动相关信号源。

8

频率按键输入

通过键盘板输入的字串,来给频率赋值。

All controls>string & path>String Indicator


9

启动指示灯

显示键盘板上启动键已经按下

All controls>Boolean>Round LED


10

幅度按键输入

通过键盘板输入的字串,来给幅度赋值。

All controls>string & path>String Indicator


11

图形框

显示所选波形示意图

All controls>Graph>Waveform Graph

设置参数:X轴:0~502,Y轴:-10~266。

12

退出

退出整个程序

All controls>Boolean>OK Button


   4)动态调用链接
   本程序设计的主要实现已经做成底层fp函数(用Labwindows/CVI实现),在程序实现时可直接调用实验箱提供的驱动函数动态链接(即.dll函数),驱动函数原型及常数和变量在cvidll.prj中。

                            表4   信号源键盘控制部分使用的动态调用一览

fp函数

实现功能

输入参数

输出参数

参数说明

动态链接图标

void epp_init

初始化EPP接口


void epp_write_data

将数据data输出(写入)到sj8002的端口地址sj8002addr。

Unsigned char sj8002addr,

unsigned char data


sj8002addr: sj8002的端口地址。
data:要写入sj8002的数据。

void easy_source

依据相关参数,启动信号源

int DDS_channle
double amp
double fr
unsigned char shape
unsigned char filter_cw

Amp:信号幅值,单位V。
Fr:信号频率,单位Hz。
Filter_cw:滤波频率选择控制字。

void inTI_wave1

初始化信号源,把波形数据写入SRAM

int DDS_channle
unsigned char wave
_data[]
unsigned char shape


   3.信号源公式输入部分

   1)结构流程图


        图22      信号源公式输入部分结构流程图

2)树形图


          图23  信号源公式输入部分结构树形图

   3)功能与前面板设计

图24    信号源公式输入部分前面板

表5   信号源公式输入部分控键及显示键汇总

编号

名称

功能

位置

备注

1

公式错指示灯

公式编辑窗口公式输入错误。

All controls>Boolean>Round LED


2

波形公式输入

通过键盘板输入的字串,来给幅度赋值。

All controls>string & path>String Control


3

频率f

设置信号频率

All controls>Numeric>Numeric Control


4

峰值幅度

设置波形幅度

All controls>Numeric>Numeric Control


5

频率系数k

设置频率系数

All controls>Numeric>Numeric Control

若公式为周期函数,则输出信号频率为“频率”ד频率系数”。否则输出信号频率就等于“频率”。

6

启动

依据参数启动信号

All controls>Boolean>OK Button

若公式输入正确,按下后依据相关参数,启动1通道信号源。

7

图形框

显示所选波形示意图

All controls>Graph>Waveform Graph

横坐标为时间t:0~1
纵坐标为归一化的Y值。

注:公式编辑器设定的采样频率FT=4096,采样点数为4096。

   4)动态调用链接
    本程序设计的主要实现已经做成底层fp函数(用Labwindows/CVI实现),在程序实现时可直接调用实验箱提供的驱动函数动态链接(即.dll函数),驱动函数原型及常数和变量在cvidll.prj中。


                           表6   信号源键盘控制部分使用的动态调用一览

[1] [2]
关键字:信号源  软件  设计方法 引用地址:实用信号源设计

上一篇:信号源是什么,该如何为信号放大器选择信号源
下一篇:解析射频信号源具体组成部分

推荐阅读最新更新时间:2024-11-15 09:37

BlackBerry QNX:软件将定义汽车驾驶的未来
随着人工智能、物联网、机器学习等新兴数字技术的更多应用,汽车正向着智能化、网联化的方向快速发展,智能网联汽车将彻底改变人们的出行方式。而中国凭借庞大的汽车消费群体也将成为全球最大的智能网联汽车市场。据有关机构的数据,2020年中国乘用智能网联汽车市场规模将为558亿美元,2025年达到1347亿美元,远高于全球水平。 面对如此巨大的市场规模,如何助力中国智能网联汽车的发展?近日,BlackBerry在上海举行媒体沟通会,BlackBerry技术解决方案(BTS)高级副总裁兼联席主管Kaivan Karimi 分享了公司在中国市场的最新战略、技术成果以及成功案例,并探讨了面向智能网联汽车的“安全”和“防护”话题。 “全
[汽车电子]
BlackBerry QNX:<font color='red'>软件</font>将定义汽车驾驶的未来
以后汽车将像手机一样个性化 甚至能自动调整参数
据VentureBeat网站报道,随着科技进步彻底改变了驾驶体验,汽车内部已经与外部世界无缝地整合在一起。 传感器和软件使汽车与房屋和办公室通信成为可能,用户坐在车中也可以与外界保持联系。虽然自动驾驶汽车成为主流技术还需要数年时间,联网汽车已经成为主流。汽车业内人士意识到,人工智能解决方案将继续推动汽车与外部世界联系的水平,个性化正在成为联网汽车的关键元素之一。 但是,迄今为止,汽车尚未实现真正的个性化。汽车个性化一直局限于配件——更具体地说是时尚和功能性配件。 VentureBeat表示,目前,借助于人工智能和其他智能技术,车辆个性化不再局限于这类特性。汽车不仅能反映用户的个性,还能适应它。车载特性利用其他智能设备提供的数据,对
[汽车电子]
第四届CODESYS技术大会暨基于IEC 61131 - 3 的数控系统及机器人软件平台技术论坛
2013年10月15日,由德国3S软件(中国)- 欧德神思软件系统(北京)公司主办的“基于IEC 61131 - 3 的数控系统及机器人软件平台技术论坛”在工大建国饭店隆重召开,德国3S软件公司大中华区总经理-马立新先生首先致欢迎词。本届大会得到了中国机械工业联合会、中国机器人产业联盟、中国软件行业协会、中国自动化学会、全国工业机械电气系统标准化技术委员会等权威部门的大力支持。来自全国各地的近200位的专家、学者和技术人员出席了会议,并就机器人软件开发平台的现状与发展趋势进行了深入的探讨。 CODESYS技术大会现场座无虚席 目前,为了使数控系统和机器人应用编程更加标准化和网络化,
[工业控制]
第四届CODESYS技术大会暨基于IEC 61131 - 3 的数控系统及机器人<font color='red'>软件</font>平台技术论坛
交叉领域的测试测量 软件定义了一切
如果要了解测试 测量 技术在最新的行业发展趋势中所发挥的作用,一年一度的NIDays大会是一个很好的窗口。今年NIDays Asia大会的主题是“全力推进明天的科技”。 NI在去年重新定义了他们的新的战略愿景——做“软件定义的自动化 测试 测量领域”的领导者。围绕这一新的战略愿景,该公司对业务进行了重组,核心业务包括半导体、交通运输、航空航天/国防和政府,以及电子、能源、 机械 和院校。 NI在核心领域的客户分布 NI大中华区销售总监乔巍认为,类似汽车和航空航天这类市场都更具有未来的想象空间,“汽车市场目前虽然不太景气,但从研发细分来看,对未来技术研发的投资还是在增加”乔巍说,“这两年中国的商业航天趋热,商业飞机、商
[汽车电子]
交叉领域的测试测量 <font color='red'>软件</font>定义了一切
Mentor电路设计仿真验证平台软件赠予仪式
暮春时节,草长莺飞,回忆过去三年,历历在目,2015年北京工业大学与美国Mentor Graphics(A Siemens Business)公司、上海北恩科技建立了EDA联合实验室,每年定期举办WORKSHOP,2018年Mentor携手上海北恩科技向北工大捐赠60套HyperLynx电路仿真验证平台的三年使用权,使这次合作达到了高潮,帮助学校搭建起业界领先的电路设计与仿真平台,三方建立起更紧密的校企合作,共同推动学校人才培养质量的提高,北京工业大学,Mentor和北恩科技于2018年4月26日在美丽又深厚文化底蕴的北京工业大学举办了这次赠予仪式。 暮春时节,草长莺飞,回忆过去三年,历历在目,2015年北京工业大学与美国M
[嵌入式]
Mentor电路设计仿真验证平台<font color='red'>软件</font>赠予仪式
罗克韦尔自动化推出FactoryTalk® Logix Echo仿真软件
罗克韦尔自动化推出FactoryTalk® Logix Echo仿真软件 革新机器设计流程 (2021 年 9月 3 日,中国上海)全球最大的工业自动化、信息化和数字化转型企业之一罗克韦尔自动化公司近日推出FactoryTalk® Logix Echo控制器仿真软件,可有效优化机器性能,帮助机器设计人员节省时间和成本,加快产品上市速度。FactoryTalk Logix Echo仿真软件可与罗克韦尔自动化ControlLogix® 5580系列控制器协同工作,进一步赋能机器设计。 采用 FactoryTalk Logix Echo仿真软件 ,工程师可以在虚拟环境中对控制代码进行全面测试。该软件最多支持 17 个仿真控制器,
[工业控制]
Klocwork为QNX新添可信的软件开发工具
Klocwork 为 QNX 汽车安全生态系统新添可信的软件开发工具,符合 ISO 26262的桌面静态代码分析工具箱为生态系统增色 2013年12月12日,中国北京—— 全球安全代码软件开发工具领导厂商 Klocwork 公司和全球车载电子软件平台领导厂商 QNX 软件系统有限公司今日宣布,Klocwork 已加入 QNX® ISO 26262 汽车安全项目的生态系统。   该生态系统是一个供应商网络,为安全关键系统提供完善互补的硬件、工具链、图像处理技术和咨询服务。Klocwork 的加入将进一步推动符合 ISO 26262 及其他重要行业标准的安全汽车系统的开发。     Klocwork Insight™ 正快速成为汽车
[汽车电子]
日系“三巨头”联手:丰田、本田、日产将在汽车软件开发方面加强合作
10 月 16 日消息,据《读卖新闻》今日报道,丰田、本田与日产汽车已达成一致,将加强在汽车软件开发上的合作。三家公司计划统一车辆控制系统的标准,例如车门和车窗的开合方式以及雨刷的运行方式等。 此外,铃木和几家半导体与通信公司也将在 2024 年共同开发自动驾驶、地图导航等软件。为了应对在汽车技术上领先的美国和中国制造商,日本各大企业正在加快合作的步伐。 据报道,此次合作将重点推进 API 标准的统一,即各类软件和系统之间的接口规范。不同厂商的软件将可在各种车辆上通用,软件开发商从而能更容易进入市场。 此举是日本经济产业省为推动下一代汽车 —— 即“SDV”的发展,与多家车企共同推出的“移动出行数字化平台”战略的一部分。丰田、
[汽车电子]
日系“三巨头”联手:丰田、本田、日产将在汽车<font color='red'>软件</font>开发方面加强合作
小广播
最新测试测量文章
换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved