MATLAB课程设计虚拟信号发生器.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程名称:计算机辅助分析大作业 设计题目: 虚拟信号发生器 院 系: 专 业: 年 级: 姓 名: 指导教师: 西南交通大学峨眉校区 2011 年 5 月 20 日 原理分析 该虚拟信号发生器的设计由GUI界面及其对应的程序组成。信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛地应用。各种波形曲线均可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、方波、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。本文设计了一种可以产生正弦波、方波、三角波、锯齿波的虚拟信号发生器。 建立图形用户界面 图形用户界面(Graphical User Interface,简称GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。 具体步骤如下: 在Command 里面输入 GUIDE 或者从菜单里面,或者从快捷按钮均可进入GUIDE,然后新建一个GUI,进入布局编辑器。 为GUI添加控件:编辑框(Edit Text)控件、静态文本(Static Text)、 滚动条(Slider)控件、按钮(Push Button)控件??、坐标轴(Axes)控件、面板(Panel)控件,并按照自己的想象摆放GHI控件,即做布局设计。 设置控件的属性 图1 对象浏览器 控件主要属性列表: 控件名称 String Tag 按钮(Push Button)控件? 正弦波 pushbuttonZHENGXIAN 方波 pushbutton2FANGBO 三角波 pushbutton4SANJIAO 锯齿波 pushbutton3JUCHIBO 清除 Pushbutton5 滚动条(Slider)控件 Slider sliderxiangwei Slider sliderpinlv Slider sliderfuzhi 编辑框(Edit Text)控件 默认 editpinlv 默认 editfuzhi 默认 editxiangwei 静态文本(Static Text) 频率 Text1 幅值 Text2 相位 Text3 注:其余属性中,大小位置就不叙述了,其他默认,或者在m文件中有设置 为各个控件添加回调函数,然后保存或者运行它,自动生成FIG文件和M文件 在M文件对应回调函数中编程 界面外观: 图2 GUI界面 GUI程序设计 1)正弦按钮的Callback函数: global p1;%GLOBAL Define global variable. global p2; global p3; global p4; p2=0; p3=0; p4=0; p1=get(handles.pushbuttonZHENGXIAN,'value');%获取正弦按钮的当前值并赋给p1 while p1==1 j=get(handles.sliderfuzhi,'value');%获取幅值滚动条的值,并且赋给j k=get(handles.sliderpinlv,'value'); l=get(handles.sliderxiangwei,'value'); set(handles.editfuzhi,'string',num2str(j));%修改editfuzhi 的值为滚动条当前的值 set(handles.editpinlv,'string',num2str(k)); set(handles.editxiangwei,'string',num2str(l)); A=str2num(get(handles.editfuzhi,'string'));%获取幅值选择框的值,并且赋给A f=str2num(get(handles.editpinlv,'string')); P=str2num(get(handles.editxiangwei,'string')); t=0:0.001:8*pi; y=A*sin(2*pi*f*t+P*2*pi); plot(t,y); axis([0,8*pi,-1.2,1.2]); grid on; break; end 方波按钮的Callback函数: global p1; global p2; global p3; global p4;

文档评论(0)

mx597651661 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档