LabVIEWwilliam hill官网
直播中

zhihuizhou

13年用户 7005经验值
擅长:测试与测量
私信 关注
[讨论]

labview每日一练【11.9】

本帖最后由 zhihuizhou 于 2011-11-16 10:02 编辑

1.  任务
编写一个LabWindows/CVI程序,功能自定(可以是课堂或者书上的例子),程序有菜单或多种控件,用程序改变控件值或属性。
在本实验中,我们制作两数值型控件,当一控件值改变时,另一控件值也随之改变。同时,设计一命令控件,当点击它时即可退出用户接口界面。
2.实验步骤
步骤1:新建一工程,选择File→New→Project(*.prj),如图1-1所示。
11.jpg
图1-1 创建一工程
步骤2:新建一用户界面。从工程(Project)窗口中选择File→New→User Interface(*.uir),创建一个用户界面文件(*.uir),编辑器将自动产生一个空面板,如图1-2所示。
                                                   12.jpg
图1-2 用户界面编辑器窗口
步骤3: 在用户界面编辑器窗口中Untitled Panel 的灰色区域中单击鼠标右键,弹出如图1-3所示的控件选择的快捷菜单。在本实验中我们选择两数值型控件(Numeric)和一命令按钮(Command Button),其属性设置见图1-4~1-6。图1-7为面板属性编辑窗口,最后生成如图1-8所示界面。
                                                                           13.png
                                                                                图1-3 控件菜单
                                                       14.jpg
                                                                      图1-4 “编辑数值控件1”对话框
                                                       15.jpg
                                                                        图1-5 “编辑数值型控件2”对话框
                                                       16.jpg
图1-6 “编辑命令按钮”对话框
17.jpg
图1-7 面板属性编辑窗口
18.jpg
图1-8 最终用户界面
步骤4:用代码生成器生成程序框架。选择Code→Generate→All Code,显示如图1-9所示的生成所有代码对话框。
首先必须确定程序启动时要显示的面板。对本实验来说,在.uir文件里只有一个面板。选择该面板作为程序启动时首先显示的面板。
此对话框下部分显示.uir 文件里的回调函数列表。在面板的属性中已经设置QuitCB作为程序终止执行的函数,其旁边出现一个“√”号。
选择OK 按钮,触发代码生成器建立程序源代码,如图1-10所示。
在源代码窗口里选择File→Save,以文件名ex1.c保存源文件。
                                                      19.jpg
图1-9 生成所有代码对话框
20.jpg
图1-10 程序源代码
步骤5:使用函数面板和函数库开发ChangeValueCB回调函数。
    把光标置于ChangeValueCB函数的case语句中,然后选择Library→Uer Interface Library→Controls/Graphs/Strip Charts….→General Function→Get Control Value,弹出如图1-11所示的Get Control Value函数面板。在面板的控件里输入如图1-11所示的值。在面板的灰色地带点击右键,可获得函数的说明文档。
    在源代码里插入函数Get Control Value前,必须声明变量value。选择Code→Declare Variable,并选中复选框Add declaration to current block in target file “ex1.c”,这样将在源代码当前段插入一行代码声明回调函数ChangeValueCB里的变量value。
    选择Code→Insert Function Call,将函数Get Control Value 插入源代码窗口光标所在位置,关闭函数Get Control Value面板,可以看到函数Get Control Value 的调用出现在源代码的case EVENT_COMMIT语句后。
    选择Library→Uer Interface Library→Controls/Graphs/Strip Charts….→General Function→Set Control Value,在函数面板各控件里输入如图1-12所示信息。
    选择Code→Insert Function Call,将函数 Set Control Value 插入源代码。
    最后所生成代码如图1-13 所示。
                                                            21.jpg
                                                                        图1-11 Get Control Value函数面板
                                                             22.jpg
图 1-13 最终代码

步骤6:保存并运行程序。选择Run→Debug ex1_dbg.exe,开始运行程序。

选做:
    把回调函数ChangeValueCB中的EVENT_COMMIT 事件改为EVENT_VAL_CHANGED,保存后运行程序,观察效果有什么不同。




更多每日一练请查看汇总贴:https://bbs.elecfans.com/jishu_207331_1_1.html

回帖(43)

zhihuizhou

2011-11-9 11:39:48
顶一个
举报

a0632110

2011-11-9 13:08:40
楼主今天怎么是LabWindows/CVI了?我貌似没有装这个啊
举报

尹航

2011-11-9 18:41:44
感觉突然就上了一个档次
举报

zhihuizhou

2011-11-10 09:25:24
引用: B07050406 发表于 2011-11-9 18:41
感觉突然就上了一个档次

跟着一起做实验而已啦 今天不搞这个了 哈哈

举报

更多回帖

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