




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
虚拟仪器问题集锦1.如何减少CVI程序的CPU占用率?回答=可以在OptionsEnviroment中进行设置,将Sleep Policy设置为Sleep More。或者在程序中进行设置,设置函数为:SetSleepPolicy (VAL_SLEEP_MORE)。2.在CVI中如何实现将这次面板参数作为下次的缺省值使用?回答=一般情况下可以使用文件将各参数保存下来,在下次调用面板时再调用这些参数。也可以使用CVI自带的函数SavePanelState和RecallPanelState。3.CVI中如何实现进度条功能?回答=CVI中可以使用slide控件实现进度条功能。也可以使用Programmers Toolbox里带的函数来创建进度条。4.CVI中的TUI文件?回答=TUI文件实际上是UIR文件的文本版本,在使用时同UIR文件的调用方式相同。5.CVI中使用控件的Tab顺序功能时如何略过某些控件?回答=将控件改变为Indicator控件,在CVI中Tab顺序是略过显示控件的;2、将控件灰掉,CVI会略过灰掉的控件;3、将下一个控件作为活动控件,从而略过一个控件。6.在LabWindows/CVI中如何用多个安全队列(SafeQueue)来实现对多个采集任务的数据保护?回答=一般来说,在编写一个多线程程序时,我们会在默认的线程池(DefaultThreadPool)中建立一个或多个SafeQueue;然后再建立2个新的线程池(NewThreadPool),分别用于数据的采集和处理;在用于采集的线程池中建立多个线程(Thread),分别对应各个板卡或通道;在用于数据处理的线程池(ThreadPool)中建立一个或多个线程来对进行相应的操作。7.在安装NI软件的过程中(包括LabVIEW, CVI, hardware drivers, 或使用了MSI installer进行安装的其它NI软件),出现错误2894致使安装程序被迫中止,如何解决该问题?回答=该问题是微软网站上已经公布的Microsoft Installer常出现的问题之一。已知有两个原因可能导致出现该问题:其一就是错误的或者被破坏了的Riched20.dll存在于用户的计算机上,或用户计算机上的的Riched20.dll文件丢失。其二就是用户的计算机被诸如W32.Nimda.Amm的病毒感染。针对第一种情况,用户需要从其他机器上拷贝正确版本的Riched20.dll文件或者重新安装MSI installer。如果用户的操作系统为Windows95,98或者ME,那么必须下载并安装Instmsi.exe,如果用户使用Windows NT4.0, 2000或者Xp,那么必须下载安装InstMsiW.exe。该执行文件将会修复用户系统里的所有损坏文件。针对第二种情况,用户则需要杀毒并重新安装上述文件。8.LabWindows/CVI中的堆栈大小?回答=LabWindows/CVI中的堆栈大小直接影响可以分配的数组大小。如果数组的大小超过堆栈大小,则会报告错误。该值可以在Options-Build Options中设置。缺省值为:250000。建议使用动态内存分配。9.CVI中如何画极坐标?回答=CVI中没有专门提供画极坐标的控件。可以使用Picture控件自己画,或者使用绘图软件绘制出极坐标图,然后保存为图片再使用canvas控件将图片导入。10.如何在启动CVS之后立即启动下载到CVS上的执行程序?一般有两种方式,其中一种你可以使用LV的工程项来把程序下载到CVS中,那么RTTarget.ApplicationPath=c:ni-rtstartupstartup.rtexe,RTTarget.LaunchAppAtBoot=True这两个设置就会自动被LV设置。如果你是通过FTP把程序下载到CVS上,上述两个标签就得手动设置。 11.CVI中如何进行二维指针的内存分配?回答=具体例子代码如下: p=(ComplexNum*)malloc(3*sizeof(int); for(i=0;i配置通道-设置采样率-设置触发-采集数据-停止任务-清除任务这样的基本顺序。15.CVI中如何使用UDP协议?回答=CVI中没有带有关于UDP协议的fp文件,需要使用winsock来写。16.CVI下如何编写多线程程序?回答=可以使用函数模版中的Utility Library目录下的函数,首先用CmtNewThreadPool (int Maximum_Number_of_Threads, int *Pool_Handle)函数创建一个线程池(也可以使用程序默认的线程池),然后使用CmtScheduleThreadPoolFunction (int Pool_Handle, ThreadFunctionPtr Thread_Function, void *Thread_Function_Data, int *Thread_Function_ID)函数来指定每个线程的回调函数,以实现不同的操作。最后,记住一定要在结束程序的时候调用CmtDiscardThreadPool (int Pool_Handle)函数释放这些线程的系统资源。17.在LabWindows/CVI中如何将自己编写的函数放在函数模版中,使它可以像函数模版中原有的函数那样使用?回答=先新建一个Function Tree,然后在这个Function Tree下新建一个Instrument,并在这个Instrument下建立函数分类(将函数分类管理),再建立一个Function Panel,在上面添加输入输出控件和帮助信息,(如果这个函数没有使用到数采硬件,那么在Option下面将IVI/VXIplug&play Style前的勾去掉)然后选择Tools下的Generate New Source for Fuction Tree,最后只要在自动生成的*.c文件中添加函数的代码并保存,然后就可以像函数面板中的其他函数一样调用了。(下次使用LabWindows/CVI时需要重新载入)18.在没有.LIB和.H文件时,CVI怎么调用DLL??回答=使用SDK中的LoadLibary和GetProcAddress以及FreeLibrary可以实现动态DLL的调用。19.CVI可以做不规则界面吗?回答=这是可以的,可以使用SDK函数实现,VC等编程语言实际上是使用SDK封装后的函数,使用SDK函数编程比较麻烦。20.如何处理PANEL的最大化和最小化问题?回答=有EVENT_PANEL_SIZE事件可以获得,然后可以读取当前panel的大小来确定区分MAXIMIZE盒MINIMIZE事件.21.如何在CVI中编写DLL?回答=首先建立一个新工程,然后创建一个源程序文件,作为dll主程序。利用CVI提供的编辑器功能插入DllMain,这时在源程序文件中就有dll的框架程序。生成的两个函数不能修改。这时就可以在该程序中编写自己的DLL程序。注意函数格式:int _stdcall Function()。创建头文件用于声明dll函数。在Build菜单的TargetSettings中设置dll输出路径,在Exports中选择要输出函数所在的头文件。22.如何在CVI中使用task来自动生成代码?回答=首先,在MAX中配置好你的task,然后在CVI中创建一个空程序,然后使用Daqmx load task函数,配置好handle,然后在程序中,选中该函数,右键选择gennerate cvi example code,就可以自动生成代码了。23.如何在CVI中调试用CVI编写的DLL由VC调用?回答=首先应有VC写的调用程序。在CVI中需要进行的设置:在Specify External Process中选择调用dll的可执行文件。配置Target Settings为Debug,选择dll的目录为可执行文件所在的目录。就可以在CVI中进行调试工作了。24.CVI8.0如何编写dll可以使用VC调用,包括节目.回答=在编写dll时,需要注意两点:dll头文件的编写格式,由于VC使用的是C,在dll头文件中需加入:#ifdef _cplusplus extern C #endif#ifdef _cplusplus #endif。在dll设置时选中Embed project。Uir,这样不需要拷贝uir文件到相应的目录中去。25.DAQmx模拟触发信号有噪声怎么解决?回答=可以使用迟滞模拟触发。可以有两种方式,一种正迟滞触发,一种负迟滞触发。对于前一种,只有当触发电平降低到迟滞电平以下后才可以进行下一次触发采集;对于后一种,只有当触发电平上升到迟滞电平以上后才可以进行下一次触发采集。LabVIEW中有hysteresis trigger的例子。参考:/reference/en-XX/help/370592G-01/digitizers/hysteresis_triggers/26.当调用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。详细操作可以参考/public.nsf/allkb/0FB80F59D0AF9A4F8625703E007BF78B27.在Table控件中使用Ring如何获得当前选中的值?回答=使用GetTableCellValue,但是该函数得到的是显示字符串的ASC值,调试相对应的值28.如何使用ActiveX Wizard使CVI能够使用matlab6.5回答=1,选择Tools/Create ActiveX Automation Controller。2,next后选择应用程序(matlab)。选择即将生成的文件保存路径。next后即可得到 *.fp, *.c, *.sub, *.h, *.obj 文件。详情参考/public.nsf/websearch/4B597F188B89B6DD862568970071F2FC?OpenDocument29.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。30.CVS长时间工作出现死机现象回答=可能的原因是CVS温度过高,CVS要求的工作温度为0 C to 45 C,垂直放置的时候可以为0 C to 55 C,当温度过高的时候,power ok的指示灯变为红色,CVS将会停止工作。31.问题=如何实现8位并口采集和输出?回答=8位并口不是指打印机的并口,而是指可并行的8位数字IO。 在CVI中,使用DAQmxCreateTask;DAQmxCreateDIChan;DAQmxCfgSampClkTiming这三个函数来创建并配置通道。推荐使用创建通道时使用port方式,而不用line方式。32.问题=PCI-8431 LV7.0 CVI7.0 是4口RS422串口卡,在LV和LABWINDOWS下如何编程.能否使用RS232的编程方式.回答=可以,在LV7.0下对于串口编程,已经都是统一的VISA编程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 现场救护与自救课件
- 2025年广西百色农林投资发展集团有限公司招聘考试笔试试题(含答案)
- 2025年福建东盟海产品交易所有限公司招聘考试笔试试题(含答案)
- 园林摄影与绘画培训课程创新创业项目商业计划书
- 2025年城市照明节能改造项目照明工程设计与施工一体化
- 2025年新能源汽车二手车市场流通市场前景研究报告
- 2025年工业互联网平台数据加密算法效能评估与信息安全技术市场前景展望
- 2025年秋季初级经济师职业资格考试 经济基础知识历2025年真题深度解析试卷
- 2025年英语四六级考试口语表达专项突破试卷
- 2025年高考生物进化论知识冲刺押题试卷
- 2025年全科医师转岗培训理论知识题库及参考答案
- 中药材种植与采购合同标准范本
- 2025年测绘专业技术中级职称考试试卷及答案
- 2025新租房合同范本(标准)
- 仓库盘点流程与库存管理技巧
- 厨房餐厅承包合同(标准版)
- 2025年《师德师风》测试题(附答案)
- 2025年甘肃高速公路处收费人员招聘考试(公共基础知识)历年参考题库含答案详解(5套)
- 加油站资金安全知识培训课件
- 2025年专职网格员笔试题及答案
- (高清版)DB11∕T 1455-2025 电动汽车充电基础设施规划设计标准
评论
0/150
提交评论