第二章: Lab WindowsCVI波形显示实验

文章目录

  • 第二章: Lab WindowsCVI波形显示实验
    • 一、实验目的:
      • 熟悉Lab WindowsCVI中Timer控件和Strip Chart控件的使用。
    • 二、实验内容:
      • 用CVI编程令开发板循环100次单次AD采集,并将数据打印在记录仪控件上,再对100份数据求出平均值。
    • 三、实验步骤:
      • 1.打开CVI软件,新建项目。
      • 2.在控件面板放入两个Square Command Button控件,一个Timer控件,一个Numeric控件,一个Meter控件以及一个Strip Chart控件并各自修改Label属性命名。
      • 3.双击延时控件,进入修改该控件属性,在Interval (seconds)一栏可以修改延时长度,1即为延时1秒,我们在这里将值设为2,意味延时2秒,同时取消下方Enabled选项的勾选。
      • 4.确定每个控件都有Constant name命名后点击Code→Generate→All Code进入编程界面。在开始按钮的点击事件下面写入开发板启动函数OpenUsbV12(),以及函数SetCtrlAttribute(Panel Handle;Control ID;Control Attribute;Attribute)用于启用延时控件。该函数位于Library→User Interface→Controls/Graphs/Strip Charts→General Functions→Set Control Attribute。
      • 5.接着找到延时控件的callback函数。在其下面定义一个整形变量x,三个单精度浮点型变量y、sum=0、z。写入一个for循环,让x从0开始计数,循环100次。循环内写入开发板单次采集函数ADSingleV12(),设置单端采集通道AD1,用变量y进行存储并用电压表显示。
      • 6.定义一个双精度浮点型变量i,将采集得到的y值赋予i。写入示波器绘制点函数PlotStripChart();该函数位于Library→User Interface→Controls/Graphs/Strip Charts→Graphs and Strip Charts→Strip Chart Traces→Plot Strip Chart。进入函数界面,取示波器ID为控件ID,数据地址取变量i,一次描点个数Number of Points设为1,后面三个值默认。
      • 7.将sum的值除以100求得平均值并赋予变量z,用平均值控件显示。
      • 8.在按键start前面定义一个整形变量w,令w=1。在Timer启动函数后面写入一个if判断,当w值为0,将w设为1,并且用SetCtrlAttribute()函数改变按键的标签文本属性,令其变成“暂停”,然后停止Timer运行,反之亦然。
      • 9.运行程序,结果如图12,可以正常启动和暂停,波形显示平均值计算也正确。
      • 10.退出程序。
    • 四、实验结果及思考:
    • 五、注意事项:

一、实验目的:

熟悉Lab WindowsCVI中Timer控件和Strip Chart控件的使用。

二、实验内容:

用CVI编程令开发板循环100次单次AD采集,并将数据打印在记录仪控件上,再对100份数据求出平均值。

三、实验步骤:

1.打开CVI软件,新建项目。

2.在控件面板放入两个Square Command Button控件,一个Timer控件,一个Numeric控件,一个Meter控件以及一个Strip Chart控件并各自修改Label属性命名。

效果如图1:

3.双击延时控件,进入修改该控件属性,在Interval (seconds)一栏可以修改延时长度,1即为延时1秒,我们在这里将值设为2,意味延时2秒,同时取消下方Enabled选项的勾选。

如图2:

4.确定每个控件都有Constant name命名后点击Code→Generate→All Code进入编程界面。在开始按钮的点击事件下面写入开发板启动函数OpenUsbV12(),以及函数SetCtrlAttribute(Panel Handle;Control ID;Control Attribute;Attribute)用于启用延时控件。该函数位于Library→User Interface→Controls/Graphs/Strip Charts→General Functions→Set Control Attribute。

打开界面如图3:

我们填入上方的窗体及控件ID,然后点击Control Attribute输入框右边的选项按钮,找到Timer控件相关函数值,选择Timer Enable,点击OK确认使用。如图4:

接着点击Attribute Value选项,设置值为1,表示启动。如图5:

完成后插入函数。如图6。

5.接着找到延时控件的callback函数。在其下面定义一个整形变量x,三个单精度浮点型变量y、sum=0、z。写入一个for循环,让x从0开始计数,循环100次。循环内写入开发板单次采集函数ADSingleV12(),设置单端采集通道AD1,用变量y进行存储并用电压表显示。

程序如图7:

6.定义一个双精度浮点型变量i,将采集得到的y值赋予i。写入示波器绘制点函数PlotStripChart();该函数位于Library→User Interface→Controls/Graphs/Strip Charts→Graphs and Strip Charts→Strip Chart Traces→Plot Strip Chart。进入函数界面,取示波器ID为控件ID,数据地址取变量i,一次描点个数Number of Points设为1,后面三个值默认。

如图8:

插入函数,并令sum+=y用于求和,如图9。

7.将sum的值除以100求得平均值并赋予变量z,用平均值控件显示。

如图10:

8.在按键start前面定义一个整形变量w,令w=1。在Timer启动函数后面写入一个if判断,当w值为0,将w设为1,并且用SetCtrlAttribute()函数改变按键的标签文本属性,令其变成“暂停”,然后停止Timer运行,反之亦然。

如图11:

9.运行程序,结果如图12,可以正常启动和暂停,波形显示平均值计算也正确。

10.退出程序。

四、实验结果及思考:

成功采集到电压并求得平均值。

五、注意事项:

示波器量程可依据所测电压需求更改,在实验前应明确量程大小。如图13所示便是更改左侧y轴量程。

点击此处下载CVI零基础入门教学套件开发板实验指导(二)配套资料

CVI实验指导(二) Lab WindowsCVI波形显示实验相关推荐

  1. 同步检波 matlab,实验十二 包络检波及同步检波实验

    实验十二 包络检波及同步检波实验 一.实验目的 1.进一步了解调幅波的原理,掌握调幅波的解调方法. 2.掌握二极管峰值包络检波的原理. 3.掌握包络检波器的主要质量指标,检波效率及各种波形失真的现象, ...

  2. 计算机大机实验报告,大学计算机一实验报告二大学算机一实验报告二大学计算机一实验报告二大学计算机一实验报告二.doc...

    大学计算机一实验报告二大学算机一实验报告二大学计算机一实验报告二大学计算机一实验报告二 广东金融学院实验报告 课程名称:大学计算机Ⅰ 实验编号 及实验名称实验二中文Word 2010 实验系 别姓 名 ...

  3. java实验指导书 王立新,模拟电路实验指导书.doc

    模拟电路实验指导书.doc 模拟电路实验指导书 目录 一. 实验大纲 二. 实验一 常用电子仪器的使用 三. 实验二 单级交流放大电路 四. 实验三 射极输出器 五. 实验四 负反馈放大电路 六. 实 ...

  4. 微型计算机原理与应用实验指导书,微机原理与应用实验指导书-20180316.doc

    微机原理与应用实验指导书-20180316 PAGE PAGE 1微型计算机原理与应用实 验 指 导 书控制科学与工程学院实验中心山东大学二零一八年三月目 录汇编语言开发环境实验实验1-1 汇编语言程 ...

  5. 实验(四):LCD1602显示实验

    一.实验目的与任务 实验目的: 1. 掌握LCD1602显示控制方法: 2. 掌握利用Proteus进行单片机控制系统的仿真及调试方法. 3. 掌握单片机开发板的使用. 任务: 1.根据要求编写程序, ...

  6. c语言程序设计实验指导交大答案,C语言程序设计实验指导_上交大_课前练习-改错-完善程序-课后练习参考答案--2018.10修改.doc...

    C语言程序设计实验指导_上交大_课前练习-改错-完善程序-课后练习参考答案--2018.10修改.doc 实验一 Visual C集成环境实验内容(一)程序改错1.(1)无法运行(2)将第二个C程序重 ...

  7. java实验指导_《JAVA程序设计》实验指导书(完整).pdf

    XX学院java实验报告 实验一 Java实验环境的建立 一.实验目的 1.掌握Java编程环境的搭建过程: 2.掌握Jcreator pro软件的使用方法: 3.能使用Java doc文档. 二.实 ...

  8. linux开发实验指导,嵌入式linux系统设计与开发实验指导书V1.5V7.1(全文完整版)...

    <嵌入式linux系统设计与开发实验指导书V1.5.doc>由会员分享,可免费在线阅读全文,更多与<嵌入式linux系统设计与开发实验指导书V1.5(V7.1)>相关文档资源请 ...

  9. 计算机网络 原理与实验指导书,《计算机网络原理》实验指导书.doc

    五.实验结果及分析 1. 记录本机的配置参数: 2. 理解各个网络命令,并在实验报告中记录各网络命令的使用情况. 六.实验思考题 1. 如果要使连接在同一物理网段上的计算机都能彼此通信正常工作,那么I ...

最新文章

  1. 改变电子商务行业业务的人工智能趋势
  2. 比特币现金之城——北昆士兰
  3. 关于Element学习笔记
  4. python乘法表代码注释_Python统计python文件中代码,注释及空白对应的行数示例【测试可用】...
  5. DevExpress 组件ToolBar、PopupMenu 使用有感
  6. 发现两个有趣的CSS3效果
  7. 用计算机弹让我做你的眼睛,童珺《让我做你的眼睛 (改编版)》[FLAC/MP3-320K]
  8. 软件推荐┊最有效防止被聚生网管、P2P终结者等管理软件控制的小工具——ARP防火墙单机版
  9. 华为交换机 查ip冲突_交换机查找IP冲突
  10. 域名申请:一定要进行实名认证吗?
  11. js之win10计算器
  12. Tensorflow.keras小案例Mnist数字识别
  13. Word文档打印时,出现“错误!未找到引用源。”
  14. 一个性能优化实操案例
  15. Android lunch分析以及产品分支构建
  16. Unity与Android Studio互相调用
  17. android音量界面,android 音量调节以及媒体音量界面
  18. 汇编语言基础之七- 框架指针的省略(FPO)
  19. 数据编织 (Data Fabric) vs 数据网格 (Data Mesh)
  20. FLASH小游戏:魔兽元素TD

热门文章

  1. 腾讯不允许其他的 QQ 客户端的原因
  2. 如何制作U盘启动器? Linux - Windows
  3. Java实验2 猜数字游戏
  4. 高清壁纸 - 精选热门高清图片和背景主题
  5. 用python生成动态樱花树
  6. python使用requests库下载单张图片的简单示例
  7. Android11 去除Google 框架APP的定位弹窗和高精度申请弹窗
  8. 第三方短信平台——SUBMAIL 配置 DNS 解析
  9. No migrations to apply
  10. Levenberg–Marquardt algorithm