单片机交流
直播中

早知

9年用户 1207经验值
擅长:光电显示 存储技术
私信 关注
[问答]

请问Lab WindowsCVI如何去采集正弦波啊

如何去使用Lab WindowsCVI中Graph控件?

怎样利用信号发生器输出稳定的正弦波并用开发板采集?
Lab WindowsCVI如何去采集正弦波啊?有哪些步骤?

回帖(1)

王明

2021-9-13 16:52:13
  第三章:Lab WindowsCVI采集正弦波实验
  一、实验目的:
  熟悉Lab WindowsCVI中Graph控件的使用。
  二、实验内容:
  利用信号发生器输出稳定的正弦波,并用开发板采集,再用Lab WindowsCVI的的控件进行波形显示。
  三、实验步骤:
  1.打开CVI软件,新建项目。连接开发板。
  2.在控件面板放入一个Graph控件,一个Timer控件以及两个Square Command Button控件。并修改Label命名。
  如图1:
  注:Graph控件可以根据需求调整大小方便查看波形。Timer控件记得取消Enabled勾选。
  3.运行Library→Generate→ All Code打开编程界面。照例在开始按钮内写入启动Timer控件和暂停启动的程序。
  4.在Timer控件的callback函数下定义一个单精度浮点型数组z[512],用于存放AD1连续采集的数据。然后写入AD单端口连续采集函数ADContinuV12(int ad_mod,int chan,int gain,int Num_Sample,int Rate_Sample,float*databuf);此处我们用通道AD1进行单端采集,一次性连续采集512个数并存放到数组z中。然后调用Graph控件显示。
  该显示函数位于Library→User Interface→Controls/Graphs/Strip Charts→Graphs and Strip Charts→Graph Plotting and Deleting→Plot Y进入函数后
  该函数前两个值照常为窗体和控件选择。第三个Y Array代表沿y轴绘制数据的数组变量,我们这里取数组z地址。第四个Number of Points代表绘制的点数,我们这里设置为512个点,和数组z数据个数相同。第五个Y Data Type我们更改为floating point单精度浮点型。剩余的值默认即可。然后插入到函数ADContinuV12()的后面。
  5.在显示函数Plot Y前面再加入一段清空Graph控件的函数DeleteGraphPlot,该函数同样位于Library→User Interface→Controls/Graphs/Strip Charts→Graphs and Strip Charts→Graph Plotting and Deleting→Delete Graph Plot,打开界面。
  该函数前两个参数与显示函数Plot Y相同,第三个Plot Handle我们赋值-1代表全部清空,第四个Refresh可以选择清空方式,我们这里选择Immediate Draw立刻清空。
  然后在显示函数前插入清除函数,Timer控件下完整程序如图7。
  
  6.使用信号发生器输出50Hz正弦信号,并将其接入开发板端口AD1,同时接地,运行程序。
  由图像可知,成功采集到了正弦信号且数量正确。
  四、实验结果及思考:
  成功采集到了信号发生器输出的正弦信号并显示在Graph控件上。
  五、注意事项:
  Graph控件清空步骤应该在显示步骤之前。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分