MATLAB GUI笔记(九):信号发生器

这篇具有很好参考价值的文章主要介绍了MATLAB GUI笔记(九):信号发生器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

笔记九简单设计一个信号发生器的GUI界面,通过输入波形参数,然后选择波形,就可以生成对应的波形。

1. 打开GUI

选择Blank GUI,然后更改保存路径
MATLAB GUI笔记(九):信号发生器

2. 点击坐标区

然后拖动出来
MATLAB GUI笔记(九):信号发生器

3.再拖动两个面板

MATLAB GUI笔记(九):信号发生器

4. 双击面板查看它的属性

更改字体大小和显示内容
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器

5. 拖动6个静态文本和6个可编辑文本

MATLAB GUI笔记(九):信号发生器

6. 双击静态文本查看它的属性

可以更改字体大小和显示内容
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器

7 点击可编辑文本

更改字体大小和显示内容以及标签Tag
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器

8. 拖动一个按钮

MATLAB GUI笔记(九):信号发生器

9. 双击按钮查看它的属性

更改字体大小和显示内容以及TagMATLAB GUI笔记(九):信号发生器

10. 拖动2个静态文本和1个可编辑文本

MATLAB GUI笔记(九):信号发生器

11. 双击静态文本查看属性

更改字体大小和显示内容
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器

12. 双击可编辑文本查看属性

更改字体大小和显示内容以及Tag
MATLAB GUI笔记(九):信号发生器

13. 右键方波按钮

选择查看回调,点击Callback
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器

A=str2num(get(handles.fudu,'string')); % 获取信号的幅度
w=str2num(get(handles.pinlv,'string'));% 获取信号的频率
z=str2num(get(handles.zhankongbi,'string'));% 获取方波的占空比
x1=str2num(get(handles.x1,'string'));  % 获取横坐标的起始值
x2=str2num(get(handles.x2,'string'));  % 获取横坐标的终止值
y1=str2num(get(handles.y1,'string'));  % 获取纵坐标的起始值
y2=str2num(get(handles.y2,'string'));  % 获取纵坐标的终止值
t=x1:0.01:x2;                          % 信号的横坐标范围
y=A*square(w*t,z);                     % 生成方波信号
plot(handles.axes1,t,y,'LineWidth',2); % 绘制方波信号,蓝色,宽度为2
axis([x1,x2,y1,y2]);                   % 设置坐标轴范围
guidata(hObject,handles);              % 刷新数据

14 展示方波

MATLAB GUI笔记(九):信号发生器

15. 同样可以生成三角波(三角波需要宽度和斜率这两个参数)

拖动1个按钮,2个静态文本和2个可编辑文本
MATLAB GUI笔记(九):信号发生器
然后更改字体大小和显示内容以及Tag
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器

16. 右键三角波

查看回调,点击callback
MATLAB GUI笔记(九):信号发生器

x1=str2num(get(handles.x1,'string'));% 获取横坐标的起始值
x2=str2num(get(handles.x2,'string'));% 获取横坐标的终止值
y1=str2num(get(handles.y1,'string'));% 获取纵坐标的起始值
y2=str2num(get(handles.y2,'string'));% 获取纵坐标的终止值
kuandu=str2num(get(handles.kuandu,'string'));% 获取三角波宽度
xielv=str2num(get(handles.xielv,'string'));  % 获取三角波斜率
A=str2num(get(handles.fudu,'string'));% 获取三角波幅度
w=str2num(get(handles.pinlv,'string'));% 获取三角波频率
t=x1:0.01:x2;                         % 信号的横坐标范围
y=A*tripuls(w*t,kuandu,xielv);        % 生成三角波信号
plot(handles.axes1,t,y);              % 绘制三角波
axis([x1 x2 y1 y2]);                  % 坐标轴范围设置
guidata(hObject,handles);             % 刷新数据

17. 三角波展示

MATLAB GUI笔记(九):信号发生器

18. 再拖动一个按钮

双击查看属性,更改字体大小和显示内容以及Tag
MATLAB GUI笔记(九):信号发生器

19. 右键正弦波按钮

查看回调,点击callback
MATLAB GUI笔记(九):信号发生器

x1=str2num(get(handles.x1,'string')); % 获取横坐标的起始值
x2=str2num(get(handles.x2,'string')); % 获取横坐标的终止值
y1=str2num(get(handles.y1,'string')); % 获取纵坐标的起始值
y2=str2num(get(handles.y2,'string')); % 获取纵坐标的终止值
A=str2num(get(handles.fudu,'string'));% 获取信号的幅度
w=str2num(get(handles.pinlv,'string'));% 获取信号的频率
t=x1:0.01:x2;                         % 信号的横坐标范围
y=A*sin(w*t);                         % 生成正弦信号
plot(handles.axes1,t,y,'LineWidth',2);% 绘制正弦信号,线宽为2,蓝色
axis([x1 x2 y1 y2]);                  % 坐标轴范围设置
guidata(hObject,handles);             % 刷新数据

20. 正弦波展示

MATLAB GUI笔记(九):信号发生器

21. 再拖动一个按钮

双击查看属性,更改字体大小和显示内容以及Tag
MATLAB GUI笔记(九):信号发生器

22. 右键锯齿波按钮

点击查看回调,选择Callback
MATLAB GUI笔记(九):信号发生器

xl=str2num(get(handles.x1,'string')); % 获取横坐标的起始值
x2=str2num(get(handles.x2,'string')); % 获取横坐标的终止值
y1=str2num(get(handles.y1,'string')); % 获取纵坐标的起始值
y2=str2num(get(handles.y2,'string')); % 获取纵坐标的终止值
A=str2num(get(handles.fudu,'string'));% 获取信号的幅度
w=str2num(get(handles.pinlv,'string'));% 获取信号的频率
t=xl:0.01:x2;                         % 信号的横轴范围
y=A*sawtooth(w*t);                    % 生成锯齿波信号
plot(handles.axes1,t,y,'LineWidth',2);% 绘制锯齿波,线宽为2,
axis([xl x2 y1 y2]);                  % 坐标轴范围设置
guidata(hObject,handles);             % 刷新数据

23. 锯齿波展示

MATLAB GUI笔记(九):信号发生器

24. 清空按钮

拖动一个按钮,双击查看属性,更改字体大小和显示内容以及Tag
MATLAB GUI笔记(九):信号发生器

25. 右键清空按钮

查看回调,点击callback
MATLAB GUI笔记(九):信号发生器

try
    delete(allchild(handles.axes1));% 清空坐标区
end
guidata(hObject,handles);           % 刷新数据

26. 整体信号发生器展示

MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器
MATLAB GUI笔记(九):信号发生器文章来源地址https://www.toymoban.com/news/detail-466167.html

到了这里,关于MATLAB GUI笔记(九):信号发生器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA之简易DDS信号发生器设计

    设计一个能产生频率可变、相位可调的能产生正弦波、三角波、方波、锯齿波的信号发生器。 DDS 是直接数字式频率合成器(Direct Digital Synthesizer)的英文缩写,是一项关键的数字化技术。与传统的频率合成器相比,DDS 具有低成本、低功耗、高分辨率和快速转换时间等优点,

    2024年02月02日
    浏览(37)
  • 基于FPGA的简易 DDS 信号发生器的设计

    DDS 是直接数字式频率合成器(Direct Digital Synthesizer)的英文缩写,是一项关键的数字化技术。与传统的频率合成器相比, DDS 具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用在电信与电子仪器领域,是实现设备全数字化的一个关键技术。作为设计人员,我们

    2024年02月07日
    浏览(40)
  • EDA实验-----正弦信号发生器的设计(Quartus II )

    目录 一、实验目的 二、实验仪器 三、实验原理 四、实验内容 五、实验步骤 六、注意事项 七、实验过程(操作过程) 1.定制LPM_ROM模块 2.定制LPM_ROM元件  3.计数器定制 4.创建锁相环 5.作出电路图 6.顶层设计仿真 学习使用Verilog设计波形发生器。 掌握LPM_ROM在波形发生器设计中

    2024年02月04日
    浏览(37)
  • 毕设分享|基于51单片机DDS信号发生器设计

    在电子通信技术日益发展的时代潮流下,直接式(DFS)和锁相式(PLL)已经不能满足生活和科研方面对于频率技术的需求。经过科研人员的不断攻坚下,直接数字频率合成器(DDS)应运而生。它现在广泛运用于移动通信、电子雷达、航天等方面。本次设计主要通过FPGA模块+单片机最小

    2024年02月03日
    浏览(41)
  • 【毕业设计—DDS信号发生器】Quartus II 软件新建工程

    大学四年的时间转瞬即逝,2023年我将迎来我的本科毕业。为了记录自己的研究进展,我将在这儿分享我的毕业设计进度~~博客涉及的知识点,如有不对,欢迎大家及时纠正,共同进步! 我安装的是Quartus II 13.1 版本。 1.在电脑D磁盘下新建一个文件夹【DDS】,然后分别新建4个子

    2024年02月03日
    浏览(33)
  • FPGA学习任意波函数信号发生器的设计(基于quartus II13.0)

    平台: quartus II 13.0 仿真:signal tap II 语言:VHDL 方式:原理图bdf输入 芯片:Cyclone IV E: EP4CE6E22C8 设计一任意波函数信号发生器,具备以下两功能: ①能输出标准正弦波波形。 ②能输出任意函数波形。 首先明确实验用到的宏模块操作是在tool——MeGaWizard Plug-In Manager中(如下图)

    2024年02月03日
    浏览(33)
  • 基于51单片机的四种波形信号发生器仿真设计(仿真+程序源码+设计说明书+讲解视频)

    本设计 (仿真+程序源码+设计说明书+讲解视频) 仿真原版本:proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0015 1、本设计采用AT89C51单片机作为控制核心,外围采用数字/模拟转换电路(DAC0832)、运放电路(LM324)、按键和LCD1602液晶显示电路。 2、电路采用单

    2024年02月05日
    浏览(35)
  • 基于STC89C52RC芯片 高频DDS信号发生器AD9851信号源方波正弦波系统设计

    一开始是使用按键进行频率输出数值的增加或者减少,后改进成使用EC11调节输出数值,使数值的输出更加顺滑流畅。 AD9851.c AD9851.h LCD12864.c LCD12864.h EC11.c EC11.h main.c

    2024年02月05日
    浏览(43)
  • FPGA实验笔记_Vivado:DDS信号发生器;数码管;基于DHT11的温湿度传感器

    目录 1、 FPGA的DDS信号发生器 1.1、DDS简介 1.2、ROM IP核的生成 1.3、波形数据的生成 1.4、 ROM的调用 1.5、 完整代码(包括拓展部分) 2、数码管显示 2.1、数码管简要说明 2.2、SM410564 3、基于DHT11的温湿度传感器 3.1、DHT11 3.2、基本思路 3.3、数据分离模块(BTD) 3.4、数据转换模块(

    2024年02月04日
    浏览(37)
  • 基于FPGA的DDS原理信号发生器设计 quartusII 9.1平台 Verilog HDL语言编程 可产生正弦波

    基于FPGA的DDS原理信号发生器设计 quartusII 9.1平台 Verilog HDL语言编程  可产生正弦波、方波、锯齿波以及三角波   频率幅度可调节   代码+原理图 在现代电子技术领域,针对各种应用的信号发生器是一种非常核心的设备,而基于现场可编程逻辑门阵列(FPGA)的直接数字合成(

    2024年04月27日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包