ArtGui.exe是32位嵌入式数据采集器软件系统的核心,主要功能实现与用户交互的操作界面;用户必须通过此程序才能对整个系统进行操作和控制。
启动EVC,选择“File->New”单击鼠标左键,启动新建工程向导,如图8.6-24所示。
单击鼠标左键,启动新建工程界面如图8.6-25所示。
在左侧的工程类型窗口中,选择“WCE MFC AppWizard(exe)”;在右侧的工程配置窗口中,“Project name”框中输入“ArtGui”,在“Location”框中会自动输入“F:\RTUPRO\ArtGui”,选中“Create new workspace”;单击“OK”,启动向导界面如图8.6-26所示。
工程类型,选择“Dialog based”,单击“Next”,启动包含组件选择界面如图8.6-27所示。
图8.6-24 启动EVC新建工程界面
图8.6-25 新建工程界面
图8.6-26 新建工程向导界面
图8.6-27 包含组件选择界面
在组件选择界面中,复选框都不选,在“Please enter a title for your dialog”框中输入“IDD_PANEL_DIALOG”,单击“Next”,启动工程属性选择界面如图8.6-28所示。
图8.6-28 新建工程属性选择向导界面
在右侧属性“Would you like to generate source file comments”单选框中,选择“Yes,please”,在“How would you like to use the MFC library?” 单选框中选择“As a shared DLL”。单击“Next”,启动类名修改窗口如图8.6-29所示。
类名使用默认值,单击“Finish”,弹出新建工程信息窗口如图8.6-30所示。
图8.6-29 类名修改窗口
图8.6-30 ArtGui.exe新建工程信息窗口
单击“OK”,弹出新建工程类目录浏览窗口如图8.6-31所示。
图8.6-31 向导完成生成目录窗口
选中对话框,单击鼠标右键,选中“Properties”如图8.6-32所示,单击左键,弹出对话框属性设置窗口如图8.6-33、图8.6-34所示。
图8.6-32 打开对话框属性界面
图8.6-33 对话框属性设置界面Styles
图8.6-34 对话框属性设置界面More Styles
在styles标签页中去掉复选框“Title”复选框,在“Border”和“Comobo Box”组件中选择“Visible”和“Center”,单击退出属性设置窗口。
添加组件“Tab Control”,如图8.6-35所示。
图8.6-35 添加“Tab Control”组件界面
用鼠标左键单击“Tab Control”,移动鼠标到合适位置单击左键,拖拽控件至合适大小,并放到合适位置,如图8.6-36所示。
图8.6-36 添加完“Tab Control”组件界面
此界面主要为了放置公司图标,所以“Tab Control”组件的位置最好下移,在界面中无法将控件的位置移出界面控制范围,要想将组件移出到界面外,可以通过修改资源文件来实现。
进入目录“F:\RTUPRO\ArtGui”下,选中“ArtGui.rc”,单击鼠标右键,选择打开方式,选择“记事本”,如图8.6-37所示。
图8.6-37 打开资源文件
用记事本打开ArtGui.rc文件,在其中查找IDC_TAB2如图8.6-38所示,将229改为279,即将组件下移50个单位,修改后的界面变成如图8.6-39所示。
图8.6-38 修改资源文件
图8.6-39 修改后的界面
添加公司图标的位图文件,选中“Insert->Resource”,如图8.6-40所示。
图8.6-40 增加资源界面
如图8.6-41所示,在资源类型中,选中“Bitmap”单击“Import”按键,在文件选择对话框中,如图8.6-42所示。
图8.6-41 添加位图
图8.6-42 查找公司标志位图文件
在“文件类型”列选框中选择“所有文件”,在“查找范围”框中定位到存储公司标识的目录,在文件列选框中选中位图文件,单击“Import”,弹出位图导入信息图如图8.6-43所示。
图8.6-43 位图导入信息
单击“确定”,完成位图导入。
添加“Picture”组件。选中“Picture”组件,如图8.6-44所示。
图8.6-44 选择“Picture”组件
用鼠标左键单击“Picture”组件,将鼠标移动到对话框任一位置,单击鼠标左键,如图8.6-45所示。
选中对话框上的“Picture”组件,单击鼠标右键,选中“Properties”,如图8.6-46所示,单击鼠标左键,弹出“Picture”组件属性对话框,如图8.6-47所示。
在“General”标签页的“Image”组合框中选择导入的位图。再将对话框调整到合适大小,最后形成界面如图8.6-48所示。
按照上述方法依次添加IDD_MAIN、IDD_SETUP、IDD_SENSORS、IDD_LOG和IDD_STATUS;其设置界面如下所示。
IDD_MAIN界面设计如图8.6-49所示,所用组件如表8.6-3所示。
图8.6-45 添加Picture组件
图8.6-46 设置Picture属性
图8.6-47 Picture属性设置界面
(www.xing528.com)
图8.6-48 公司徽标
图8.6-49 IDD_MAIN设计界面
表8.6-3 IDD_MAIN组件列表
IDD_SETUP设计界面如图8.6-50所示,所用组件如表8.6-4所示。
图8.6-50 IDD_SETUP设计界面
表8.6-4 IDD_SETUP组件列表
IDD_SENSORS界面设计如图8.6-51所示,所用组件如表8.6-5所示。
图8.6-51 IDD_SENSORS设计界面
表8.6-5 IDD_SENSORS组件列表
IDD_LOG界面设计如图8.6-53所示,所用组件如表8.6-6所示。
图8.6-52 IDD_LOG设计界面
表8.6-6 IDD_LOG组件列表
IDD_STATUS界面设计如图8.6-53所示,所用组件如表8.6-7所示。
表8.6-7 IDD_STATUS组件列表
图8.6-53 IDD_STATUS设计界面
在32位嵌入式数据采集平台中,任务流程的实现是在系统运行库Art-GuiSDK.dll中完成的,在界面设计当中,要将ArtGuiSDK.dll的具体实现方法与界面动作连接起来,以实现界面动作与Art GuiSDK.dll规定的具体行为统一起来。
启动Art Gui.exe的工程配置设置界面如图8.6-54所示。
图8.6-54 启动ArtGui.exe工程配置设置界面
选中“Project->Settings”,单击鼠标左键,或直接按“Alt+F7”,弹出工程配置设置界面如图8.6-55所示。
单击“Link”标签页,在“Output file name:”框中输入生成文件的存储目录,本项目使用“../ArmDll/ArtGui.exe”,在“Object/library modules” 输入生成lib文件的目录,本项目为“../ArtGuiSDK/ArtGuiSDK.lib”。
图8.6-55 ArtGui.exe工程配置设置界面
打开文件Std Afx.h,在文件的末尾增加几行,如图8.6-56所示。
图8.6-56 修改Std Afx.h文件
修改Std Afx.h文件之后,就可以在ArtGui.exe工程中使用ArtGuiSDK.dll中的方法和变量。
选中“开始按键”单击“Enter”按键,即可启动按键属性设置对话框,如图8.6-57所示。
图8.6-57 开始按键属性设置对话框
在“General”属性页中,“ID:”组合框中输入“IDC_START”,在“Caption”文本框中输入“开始”。退出属性设置界面后双击“开始”按键。启动“MFCClass Wizard”对话框,如图8.6-58所示。
图8.6-58 MFC Class Wizard启动界面
选中“Create a new class”,单击“OK”,弹出新建类名输入对话框如图8.6-59所示。
图8.6-59 新建类名输入对话框
在“Name:”栏中输入“CMain Dlg”,其他属性栏的输入值使用默认值即可,单击“OK”,弹出消息映射窗口如图8.6-60所示。
在“Message Maps”标签页的“Object IDs:”选择“IDC_START”,“Messages:”选择“BN_CLICKED”,单击“Add Function”,如图8.6-60所示,弹出如图8.6-61所示的增加映射函数对话框。
图8.6-60 增加消息映射界面
图8.6-61 增加映射函数界面
使用默认值,单击“OK”,则会在“Member functions:”栏中生成新的函数“OnStart”,如图8.6-62所示。
图8.6-62 功能函数生成界面
在“Member functions:”栏中选中新生成的函数“OnStart”。单击“Edit Code”,界面切换到编写功能函数代码界面,如图8.6-63所示。
图8.6-63 编写功能函数代码界面
其中,“AfxGet Engine()”函数就是在Art GuiSDK中实现的32位嵌入式数据采集器系统的全局函数,“AfxGetEngine()→Run()”函数是数据采集器系统平台实例运行的实现代码,通过调用该函数来启动数据采集任务,“AfxGetEngine()→Stop()”函数表示停止数据采集器系统中正在运行的任务,“AfxGetEngine()→IsRunning()”函数来判断系统任务的执行状态,“AfxGet Engine()→SaveTasks()”函数用来存储数据采集器系统正在执行的数据采集任务,“AfxGetTiming()→Init()”函数用来初始化采集器系统的校时任务,“AfxGetTiming()→Ter Minate()”函数用来退出采集器系统的校时任务,“UpdateStatus()”函数用来更新界面显示,通过外部函数调用的办法,将Art Gui.exe的界面显示同Art GuiSDK.dll中实现的实际行为联系起来,按照上述的办法依次实现其他界面的设计,最终实现的32位嵌入式数据采集器运行平台如下所示。
系统主标签页如图8.6-64所示,表示系统常用的显示元素,在数据采集器系统中包括时间、站名、显示栏和系统平台控制开关。
图8.6-64 标签页主界面
设置界面如图8.6-65所示,与系统有关的设置均在此页面,包括串口COM设置、系统数据采集任务设置、外接扩展设备Extend Module显示和系统Log文件显示。
图8.6-65 标签页设置界面
传感器界面如图8.6-66所示,主要对系统中正在运行的数据采集任务所用的传感器进行标示,可以对系统所用的传感器进行测量。
图8.6-66 标签页传感器界面
记录文件标签页如图8.6-67所示,通过该页面来浏览本地NAND Flash 盘存储的文件,查看NAND Flash盘存储的记录文件,包括系统的数据记录文件,系统的信息记录文件。
系统信息标签页如图8.6-68所示,用来显示整个系统的工作状态和调试信息,可用于系统调试和测试。
图8.6-67 记录文件
图8.6-68 系统状态信息界面
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。