1.CVI可以做不规则界面吗?
回答=这是可以的,可以使用SDK函数实现,VC等编程语言实际上是使用SDK封装后的函数,使用SDK函数编程比较麻烦。
2.如何处理PANEL的最大化和最小化问题?
回答=有EVENT_PANEL_SIZE事件可以获得,然后可以读取当前panel的大小来确定区分MAXIMIZE盒MINIMIZE事件.
3.如何在CVI中编写DLL?
回答=首先建立一个新工程,然后创建一个源程序文件,作为dll主程序。利用CVI提供的编辑器功能插入DllMain,这时在源程序文件中就有 dll的框架程序。生成的两个函数不能修改。这时就可以在该程序中编写自己的DLL程序。注意函数格式:int __stdcall Function()。创建头文件用于声明dll函数。在Build菜单的TargetSettings中设置dll输出路径,在Exports中选择要输出函数所在的头文件。
4.如何在CVI中使用task来自动生成代码?
回答=首先,在MAX中配置好你的task,然后在CVI中创建一个空程序,然后使用Daqmx load task函数,配置好handle,然后在程序中,选中该函数,右键选择gennerate cvi example code,就可以自动生成代码了。
5.如何在CVI中调试用CVI编写的DLL由VC调用?
回答=首先应有VC写的调用程序。在CVI中需要进行的设置:在Specify External Process中选择调用dll的可执行文件。配置Target Settings为Debug,选择dll的目录为可执行文件所在的目录。就可以在CVI中进行调试工作了。
6.CVI8.0如何编写dll可以使用VC调用,包括节目.
回答=在编写dll时,需要注意两点:dll头文件的编写格式,由于VC使用的是C++,在dll头文件中需加入:#ifdef __cplusplus
extern "C" {
#endif#ifdef __cplusplus
}
#endif。在dll设置时选中Embed project。Uir,这样不需要拷贝uir文件到相应的目录中去。
1.DAQmx模拟触发信号有噪声怎么解决?
回答=可以使用迟滞模拟触发。可以有两种方式,一种正迟滞触发,一种负迟滞触发。对于前一种,只有当触发电平降低到迟滞电平以下后才可以进行下一次触发采集;对于后一种,只有当触发电平上升到迟滞电平以上后才可以进行下一次触发采集。LabVIEW中有hysteresis trigger的例子。参考:http://zone.ni.com/reference/en-XX/help/370592G-01/digitizers/hysteresis_triggers/
2.当调用CVI自带的与Matlab相关的程序运行时,会产生错误提示:类没有注册,错误代码-2147221164。
回答=这是由于CVI里的这些例子是针对较早的Matlab版本写的,当机器上的Matlab的版本与写例程时的版本不一致时,就会产生这样的错误。解决方法是在CVI中相关的Project中建立相应的ActiveX控件。下面的方法适用于Matlab 6.5 R13:1.使用Tools >> Create ActiveX Controller,删除当前MATLAB instrument,重新建立MATLAB Automation Server Type。 MATLAB instrument的名字为MATLAB Application Type Library。将新建立的ActiveX controller的名字设置成与原来例子中相同的名字。2.将 matlabdemo.c中的launch callback中的stat = MLApp_NewDIMLApp (NULL, &hMatlab)改为stat = MLApp_NewDIMLApp (NULL, 1, LOCALE_NEUTRAL, 0, &hMatlab);3.打开MATLAB instrument的原代码,将所有&MLApp_IID_DIMLApp替换为 &IID_IDispatch。由于新函数中修改了参数,因此还要修改调用该函数的地方。另外,所有&MLApp_IID_DIMLApp需要被替换为相应MATLAB版本的&IID_IDispatch。详细操作可以参考http://digital.ni.com/public.nsf/allkb/0FB80F59D0AF9A4F8625703E007BF78B
3.在Table控件中使用Ring如何获得当前选中的值?
回答=使用GetTableCellValue,但是该函数得到的是显示字符串的ASC值,调试相对应的值。
4.如何使用ActiveX Wizard使CVI能够使用matlab6.5
回答=1,选择Tools/Create ActiveX Automation Controller。2,next后选择应用程序(matlab)。选择即将生成的文件保存路径。next后即可得到 *.fp, *.c, *.sub, *.h, *.obj 文件。详情参考http://digital.ni.com/public.nsf/websearch/4B597F188B89B6DD862568970071F2FC?OpenDocument
5.LabVIEW 7.1如何实现将Chart的时间坐标与计算机系统时间一致
回答=Chart 属性 Format and Precision 选Absolute time,显示方式改System time format 和 System data format。程序框图里Get date/time in seconds获取当前时间,转换为双精度浮点型后输入到Waveform Chart的属性节点Xscale.Offset。属性节点Xscale.Format设为模式7。
6.CVS长时间工作出现死机现象
回答=可能的原因是CVS温度过高,CVS要求的工作温度为0 °C to 45 °C,垂直放置的时候可以为0 °C to 55 °C,当温度过高的时候,power ok的指示灯变为红色,CVS将会停止工作。
文章评论(0条评论)
登录后参与讨论