- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ACR控制器上位机程序开发(MFC)
PAGE
PAGE 23
ACR控制器上位机程序开发(MFC)
Parker为ACR系列控制器提供了ComACRSrvr.dll动态链接库供我们开发其上位机程序。下面对使用MFC开发上位机程序做一个简要说明。
首先,将ACR-View软件安装到PC机上。这里我们使用的ACR-View软件版本号为5.5.5。MFC开发工具为VC++6.0英文版。
新建工程
下面我们新建一个MFC工程,我们为工程起名为“ACR9000”。如图1-1所示:
图1-1
单击“OK”按钮,我们这里建立一个基于对话框的工程。根据向导完成工程创建。
添加动态链接库
我们先要找到ComACRSrvr动态链接库文件。
我们在安装ACR-View时,软件会自动在 “C:\WINDOWS\system32”文件夹下安装“ComACRsrvr.dll”及“ComACRsrvr.tlb”文件,我们将这两个文件复制到
刚才新建的MFC工程所在的文件夹中。这里我们将这两个文件复制到“E:\VC\ECET”(工程所在路径见图1-1)文件夹中。如图2-1示:
图2-1
下面添加动态链接库:
在MFC开发环境中,选择“View”菜单下的“ClassWizard”,弹出“MFC ClassWizard”对话框,单击该对话框右上角的“Add Class”按钮,从中选择“From a type library”。如图2-2所示:
图2-2
在弹出的“Import from Type Library”对话框中,选择刚才添加的“ComACRSrvr.dll”或“ComACRSrvr.tlb”文件,单击“打开”按钮,如图2-3示:
图2-3
弹出“Confirm Classes”对话框。如图2-4示:
图2-4
该对话框列出了ComACRSrvr动态链接库为我们开放的接口,我们从中选择需要用到的接口。
注:ComACRSrvr为我们开放了四个接口
IStatus:用于控制器中数据的读取
IUtility:用于程序的上传、下载
ITerminal:用于发送、接收字符串数据
IControl:用于对控制器中的数据赋值,发送控制指令
详细的接口说明请参考ComACRSrvr.pdf手册
这里我们添加IStatus及IControl接口,这两个接口也是最常用的。MFC会自动生成“ComACRsrvr.h”及“ComACRsrvr.cpp”文件。单击“OK”按钮,完成动态链接库的添加。
方法2:采用Import加载类库文件。
在StdAfx.h加入下面这条语句:
#import ..\ComACRsrvr.tlb no_namespace named_guids
注:要将ComACRsrvr.tlb文件放到工程文件的外面。如下图示:
初始化工作
我们可以参考Parker为我们提供的demo程序,比如MFCJOG,打开“Find In Files”对话框,在“Find what”中输入“**ADDAD**”,来查看编程人员自己添加的内容。
下面我们开始编写自己的MFC程序
在CACR9000App类的InitInstance()成员函数中添加下段代码:
AfxOleInit();
如图3-1所示:这一步是COM组件初始化所必须的。
图3-1
2.添加ReadStatus类
为了方便我们读取控制器中的数据,Parker为我们提供了ReadStauts类。ReadStatus.cpp及ReadStatus.h文件可以在Parker提供的demo程序中找到,并将其拷贝到工程所在文件夹(ACR9000)下。下面我们把这两个文件加入到自己的工程中。
依次选择菜单项“Project”-“Add To Project”-“Files”,如图3-2示:
图3-2
从弹出的对话框中选则ReadStatus.cpp及ReadStatus.h文件并选中,单击“OK”按钮,如图3-3示:
这样ReadStatus类就加入到我们的工程中。
图3-3
3.添加头文件
在ACR9000Dlg.cpp文件中包含“ReadStatus.h”文件。如图3-4示:
#include ReadStatus.h
图3-4
在ACR9000Dlg.h文件中包含“ComACRsrvr.h”文件及ReadStatus类的声明。如图3-5示:
#include ComACRsrvr.h
class ReadStatus;
图3-5
4.创建对象
首先,在CACR9000Dlg类中添加三个指针型成员变量,分别指向IControl、IStatus接口及ReadStatus对象:如图3-6所示:
IControl* m_Cntl;
IStatus* m_Stat;
ReadStatus * m_workerEvent;
图3-6
方法2:
您可能关注的文档
- 522成为领导者的9种性格为将之道.doc
- 5307基于企业社会责任的实习绩效管理模式探索.doc
- 5317绩效考核专业人员绩效评价样表(综合素质).doc
- 5639职位分析调查问卷(附录1).doc
- 555定时器工作原理及应用引脚图.doc
- 57冶金尘泥烧结工艺回收利用现状分析及发展趋势江汇.doc
- 5关键岗位素质模型暨课程设计依据.doc
- 5市场分析报告-销售集团.doc
- 5年高考试题文综(全国卷2)解析版.doc
- 5制造技术课程设计指导书(修改).doc
- 2024《S市夜间餐饮发展现状与完善对策研究(附问卷)》11000字.doc
- 2024《教师参与学校管理的成功经验的调研分析报告》4600字.docx
- 2024《立高食品公司会计岗位的职责设计6200字》.docx
- 2024《抖音直播带货发展中存在的问题及完善对策研究》10000字.doc
- 2024《滁州新天地童装公司应收账款管理问题及对策》15000字.docx
- 2024《劲仔食品公司绩效管理研究6600字》.docx
- 2024《S公司销售人员薪酬方案设计》9300字.docx
- 2024《卡萨帝电子企业存货管理的优化策略》开题报告任务书5300字.docx
- 2024《衡水老白干公司基层员工绩效管理现状、问题和完善对策研究》15000字.docx
- 2024《基于JIT企业存货管理问题及对策研究—以海尔集团为例》12000字.docx
最近下载
- 汽车车身附件拆装考试试题.pdf VIP
- 2023年06月新疆轻工职业技术学院面向高校毕业生人才引进公开招聘(18人)笔试题库含答案详解版.docx
- 陕14J17_建筑无障碍设计.pdf
- 用电位差计测量电池的电动势.doc VIP
- 推进共同富裕,增强全民财富创造力和全社会凝聚力参考答案.docx VIP
- 浙江省湖州市、衢州市、丽水市三地市2022-2023学年高三下学期4月教学质量检测试地理试题(含答案解析).pdf VIP
- 汽车制动系统的故障检修分析.doc
- 2022-2023学年北京市东城区八年级(下)期末英语试卷(附答案详解).docx VIP
- 直流电及直流电药物离子导入疗法课件.ppt
- 初中英语中考必考单词速记表(共1600词,分28天记忆).doc
文档评论(0)