新闻中心

EEPW首页 > 模拟技术 > 设计应用 > 一种基于DDS和Qt的“所见即所得”波形发生器

一种基于DDS和Qt的“所见即所得”波形发生器

作者:时间:2011-02-11来源:网络收藏

(3)6 B只使用了最低位,为1启动,为0则停止
(4)地址7是一个虚地址,并不对应着实际的物理寄存器,而是与相位累加器组合指向RAM的某一个单元,通过对地址7的写操作就间接的实现了对整个RAM的操作,这样大大简化了对的控制操作。
1.3 电平偏移及放大电路
电平偏移及放大电路用于消除输出信号中叠加的无效直流分量(允许有效直流量输出)和调整信号增益,其电路图如图2所示。

本文引用地址:http://www.eepw.com.cn/article/187626.htm


根据图2电路有:

式中:Rv是R4两部分的并联电阻,当


2 Qt程序设计
2.1 GUI设计

GUI(图形用户界面)是人机交互的窗口,GUI的设计直接关系到产品的可操作性,是软件设计中非常重要部分。考虑到触摸屏面板的空间有限,因此控件(Widgets)的设计尽量紧凑。该系统的GUI设计见图3。


左侧为工具栏,右侧黄色区域为绘图区。绘图区提供了滚动条,用于绘制超出屏幕范围的波形。可以绘制较长的序列信号。工具栏从上到下分为绘图模式选择区,波形输出设定区,时间设定区及清屏和退出按钮。波形的绘制只允许从左向右进行,一个时刻只对应一个数据点;已绘制波形允许修改,修改过程中自动变成红色,修改完毕自动变成默认颜色。
2.2 Qt编程原理和方法
Qt程序设计采用面向对象和事件驱动的方法,整个GUI程序划分为两个类,其中主窗口为一个类,类名为MainWindow,继承自Qt的QMa-inWindow类,它提供了工具条(toolbar)和一个主窗口(mainwindow);另一个类是DrawWidget,提供了一个绘图区域,有4种事件,分别为触摸笔按下(mousePressEvent),移动(mouseMoveEvent),松开(mouseReleaseEvent)和绘图区重绘事件(paintEvent)。同时提供了处理波形的函数waveProcess和调用底层驱动的接口。滚动条是通过QScrollView类提供的视图功能来实现的。延迟输出功能通过Qtimer类来实现,延迟范围0~999 s。触摸笔的3个事件的发生顺序和处理过程见图4。



关键词: DDS 波形发生器

评论


相关推荐

技术专区

关闭