ImageVerifierCode 换一换
格式:DOC , 页数:35 ,大小:81KB ,
资源ID:2081412      下载积分:12 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-2081412.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(labwindows使用基础教学教材.doc)为本站会员(小**)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

labwindows使用基础教学教材.doc

1、#*LabWindows/CVI 基础教程 1 LabWindows/CVI 是 National Instruments 公司推出的一套面向测控领域的软件开发平台.它以 ANSI C 为核心,将功能强大, 使用灵活的C 语言平台与数据采集,分析和表达的测控专业工具有机地接和起来 .它的集成化开发平台, 交互式编程方法,丰富的控件和库函数大大增强了 C 语言的功能 ,为熟悉 C 语言的开发人员建立检测系统, 自动测量环境,数据采集系统,过程监控系统等提供了一个理想的软件开发环境.本教程面向的是那些从未使用过 LabWindows/CVI 的读者, 但是假设读者以有了 C 语言的基础并且熟悉 W

2、indows 2000/9x/NT 操作系统.在每一章节的学习中,作者都是通过一个具体的实例让读者迅速的掌握本章的知识点;而不是长篇大论,述及边枝细叶, 反而使读者望而却步,只见树木,不见森林. 想信通过对本教程的学习,读者可迅速掌握 LabWindows/CVI 编程思想及步骤 ,为读者日后进一步学习打下基础. 本书约定: “FilePage SetupOptions“ File 这一种黑色斜体字是指多级菜单名,按扭名 ,窗口名或者是关键性词汇. “ 是指打开一个多级菜单或对话框.如:FilePage SetupOptions 是指你首先打开 File 菜单,然后选择 Page Setup

3、项, 最后从弹出的对话#*框中选择 Options 项 . “说明:通过这种方式你可以修改 Panel 顶端所显示的名字.“ 该种字体所写的文字是值得读者注意并记忆的内容 . “ “ 该椭圆形框所框住的内容是读者需修改的地方 . 第一部分 CVI 快速入门 本部分通过编制一个简单的 LabWindows/CVI 程序, 使读者对 CVI 编程环境 ,思想及步骤有一初步的认识. 第一章 初步认识 CVI 程序设计 从一个例子开始 我们的第一个示例将很简单,我们所要做的是创建一个如下的图形用户界面(User Interface). 当我们按下 Acquire 按扭,计算机会自动产生一个正弦波形并画

4、在图形显示区中;当按下 Clear 按扭后则清除正弦波形; 当按下 Quit 按扭后退出该程序. 现在我们就开使创建该程序.首先按下面步骤起动 CVI: 开始程序National Instrument CVICVI IDE 或者直接从桌面起动 CVI 的快捷方式,双击桌面 National Instrument CVI 图标 当 LabWindows/CVI 打开后你就会见到如下所示的一个空的项目(Project)窗: 第一步:创建用户界面 #*创建控件元素: 从 Project 窗中选择:FileNewUser Interface(*.uir)创建一个用户接口文件(*.uir),CVI 会自

5、动弹出如下所示的窗口 : 在该窗中 Untitled Panel 的灰色区域中单击鼠标右键,变会弹出一个快捷菜单如下所示 : 从该菜单中选择:Command ButtonSquare Command Button 点击左键后便会创建一个方形的按扭 . 由于本程序总共需要三个按扭,所以按照上面的步骤再创建两个方形按扭.从该菜单中选择:GraphGraph ,创建一个用于图形显示的Graph. 现在我们已经建好了用户界面所需的控件元素,请使用鼠标把它们拖到如下图所示的位置 . 修改用户界面中各控件元素的属性 : 修改 Panel 的属性: 在 Untitled Panel 中双击一下 ,便会弹出

6、Panel 的一个 Edit Panel 窗,如下图所示: 将 Panel Title 项中的 Untitled Panel 改为 Demo Panel. 说明:通过这种方式你可以修改 Panel 顶端所显示的名字. 将 Auto-Center Vertically(when loaded)项 与 Auto-Center Horizontally(when loaded)项前的矩形框选中. 说明:当选中后 ,程序运行时,面板会自动居中 . 修改后的 Edit Panel 应如下图所示: #*点击 OK 按扭,完成对 Panel 属性的修改. 修改 Graph 的属性: 在 Untitled C

7、ontrol 的蓝色区域中双击一下,便会弹出 Graph 的一个Edit Graph 窗,如下图所示: 将 Label 项中的 Untitled Control 改为 ShowWave. 说明:通过这种方法可以修改 Graph 的标签名. 点击 OK 按扭,完成对 Graph 属性的修改. 3.修改 Command 按扭的属性: (1)Acquire 按扭: 双击左上方的 OK 按扭,便会弹出 Command 的一个 Edit Command窗,如下图所示: 将 Constant Name 项改为 ACQUIRE 说明:Constant Name 是程序中用来标识该控件元素的常量,在后面的编程

8、中会用到. 将 Callback Function 项改为 AcquireCallback 说明:Callback Function(回调函数)是程序中用来响应界面中的Windows 消息, 也就是说:当 该按扭被点击之后,程序会调用 AcquireCallback 函数来作为 对按扭被按下这一消息的响应 . 将 Label 项改为 Acquire #*说明: 通过这种方法可以修改按扭名字,Acquire 中 A 字母前有下画线,是指可 以通过 Alt + A 即可达到按下该按扭的效果(即热键). 修改后的 Edit Command Button 窗应如下图所示: 点击 OK 按扭,完成对 C

9、ommand Button 属性的修改. (2)Clear 按扭: 与以上步骤相同,双击左下方的 OK 按扭,弹出 Command 的一个 Edit Command 窗. 将其 Constant Name 改为 CLEAR 将 Callback Function 项改为 ClearCallback 将 Label 项改为 Clear 修改后的 Edit Command Button 窗应如下图所示: 点击 OK 按扭,完成 Command Button 属性的修改. (3)Quit 按扭: 与以上步骤相同,双击右方的 OK 按扭,弹出 Command 的一个 Edit Command 窗. a

10、. 将其 Constant Name 改为 QUIT b. 将 Callback Function 项改为 QuitCallback c. 将 Label 项改为 Quit 修改后的 Edit Command Button 窗应如下图所示: 点击 OK 按扭,完成 Command Button 属性的修改. 当完成以上工作后,Panel 应该如下图所示 : #*选择:FileSave 保存 UIR 文件,命名为 FirstSample.uir. 到目前为止我们已经完成了用户界面(user interface)的设计, 当程序运行时所显示的界面就是我们刚才上图看到的那样 . 下面我们要做的就是真

11、正的程序编制工作,其实 CVI 可以自动生成许多的代码以及缺省消息的处理函数,你只需添加一些你自己所需的一些代码. 第二步:完成程序的编制 产生程序代码: 现在请你让图形用户界面窗口为当前响应状态, 如下图所示: 从用户图形界面窗口中选择:CodeGenerateAll Code 然后会显示出如下的界面 : 请用你的鼠标点击 Select QuituserInterface Callback 中的QuitCallk 项,确保其前面出现一个小钩 . 说明:1. 当你想让你的程序的主函数为 Win Main 而不是 Main 时你可以选择 Generate WinMian( ) instead o

12、f Main( )项前的矩形框. 2.Select panels to load and display at startup 项是指你选择那一个Panel 作为最初 装入并显示的 Panel,当你创建多个 Panel 时你就需要选择一个Panel 作为最初显 示的面板.由于本程序只有一个 Panel 所以该 Panel 就被缺省的作为最初显示 #*的面板而不再需要你去选择 . 3.Select QuituserInterface Callback 项是指你选择那一个函数作为退出程序的终 止函数 .本程序是让 QuitCallback 作为退出函数的. 点击 OK 按扭,便会弹出如下图所示的源

13、代码(Code)窗: 其窗中的程序代码如下所示 : #include #include #include “FirstSample.h“ static int panelHandle; int main (int argc, char *argv ) if (InitCVIRTE (0, argv, 0) = 0) return -1; /* out of memory */ if (panelHandle = LoadPanel (0, “FirstSample.uir“, PANEL) Advanced Analysis 在弹出的对话框中选择 : Signal GenerationSine

14、 Pattern 便会弹出如下图所示的一个函数面板 : 请在 Number of Elements 项中填上 512;把 Number of Cycles 项改为 3;Sine Pattern 项中填上用来装正弦信号的数组 Wave,由于#*Wave 是一个数组变量,故我门需要声明该变量: 选择 CodeDeclare Variable 会弹出一个如下图所示的对话框: 请在 Number of Elements 项中填上 512,并选择了最下面的矩形框 , 然后点击 OK 按扭完成. 返回到函数面板后,选择 CodeInsert Function Call 完成函数的插入,这时 Code 窗中

15、的 AcquireCallback( )函数应如下所示: int CVICALLBACK AcquireCallback (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) double Wave512; switch (event) case EVENT_COMMIT: SinePattern (512, 1.0, 0.0, 3.0, Wave); break; return 0; 我们已经的得到了正弦信号, 现在需要将该信号画到 Graph 上去: 1).请将鼠标放在

16、 SinePattern( )函数下面的空白行上,如上面所示那样. . 请选择: #*LibraryUser Interface 在弹出的对话框中选择 : Controls/Graph/Strip ChartGraph and Strip ChartGraph Plotting and DeletingPlot Waveform 把函数面板中的对应各项填写成如下所示 : PanelHandle: panelHandele Control ID : PANEL_GRAPH Y Array: Wave Number of Points: 512 选择 CodeInsert Function Cal

17、l 完成函数的插入 ,这时 Code 窗中的 AcquireCallback( )函数应如下所示: CVICALLBACK AcquireCallback (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) double Wave512; switch (event) case EVENT_COMMIT: SinePattern (512, 1.0, 0.0, 3.0, Wave); PlotWaveform (panelHandle, PANEL_GRAPH, Wave

18、, 512, VAL_DOUBLE, 1.0, 0.0, 0.0, 1.0, VAL_THIN_LINE, VAL_EMPTY_SQUARE, #*VAL_SOLID, 1, VAL_RED); break; return 0; 到现在为止我们已经完成了 AcquireCallback( )函数的的程序代码. 添加 ClearCallback( )函数的程序代码: ClearCallback( )函数完成以下功能:当 Clear 按扭按下后, 计算机会清除 Graph 上所画的正弦图形. 现在请将鼠标放在 ClearCallback( )函数 Event_Commit: 下面的空白行上 ,如下

19、图所示: 请选择: LibraryUser Interface 在弹出的对话框中选择 : Control/Graph/Strip ChartGraph and Strip ChartGraph Plotting and DeletingDelete Graph Plot 把函数面板中的对应各项填写成如下所示 : PanelHandle: panelHandele Control ID : PANEL_GRAPH PlotHandle: -1 选择 CodeInsert Function Call 完成函数的插入 ,这时 Code 窗中的 ClearCallback( )函数应如下所示: int CVICALLBACK ClearCallback (int panel, int control, int event,

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。