首页 新闻 工控搜 论坛 厂商论坛 产品 方案 厂商 人才 文摘 下载 展览
中华工控网首页
  P L C | 变频器与传动 | 传感器 | 现场检测仪表 | 工控软件 | 人机界面 | 运动控制
  D C S | 工业以太网 | 现场总线 | 显示调节仪表 | 数据采集 | 数传测控 | 工业安全
  电 源 | 嵌入式系统 | PC based | 机柜箱体壳体 | 低压电器 | 机器视觉
MCGS嵌入式设备驱动开发
北京昆仑纵横科技发展有限公司
收藏本文     查看收藏
嵌入式驱动程序是运行在嵌入式操作系统平台上驱动程序。嵌入式操作系统如WinCE,其运行环境和Win2000在硬件和和软件方面都有很大不同,嵌入式操作系统主要运行在单板机上,嵌入式驱动是操作单板机的串口,网口等资源的程序。

一、嵌入式驱动的运行环境

  Mcgs嵌入式驱动程序是运行在WinCE操作系统平台上。由嵌入式Mcgs软件调用。
  在从上位机下载工程到嵌入机的同时,驱动程序(一般为*E.drv文件)也被下载,嵌入机中运行的Mcgs调用驱动程序,完成对数据的采集。

二、嵌入式驱动的编译过程

  1. 使用VC6.0编译能在组态环境下运行的驱动程序,文件名为*.DLL。
  2. 编译通过,调试成功后用_unicode重新编译,文件名为*U.DRV。
  3. 用模拟环境调试运行是否正常。
  4. 用ECV4.0建立工程,加入VC6.0中的所有文件,重新编译,文件名为*E.DRV。

  编译过程中的注意事项:

  1. 调试程序时用McgsSetE调试版,发行版本用Mcgs发行版,版本必须一致。
  2. 在调试unicode版时,经常会出现字符串编译错误,解决办法是用_T(“”)括起来。
  3. 在调试unicode版和EVC4.0编译时,有的函数不能使用,出现这种情况大多因为一些函数在Win2000和WinCE下不同而造成的,特别是一些函数WinCE下是不支持的。遇到这种问题,可以参考MSDN,选用适当的函数。
  4. 编码时要注意编码规范,可参阅编码规则。

三、嵌入式驱动的接口函数功能。

驱动中对外接口函数共有14个,编制驱动主要是编制各个函数,函数由主程序调用,不同的驱动在函数内部处理也不同。
SvrDoHelp
SvrGetProperty
SvrEnumPropertyValue
SvrSetProperty
SvrEditProperty
SvrEditCustomProperty
SvrInitDevSet
SvrInitDevRun
SvrCollectDevData
SvrDevIOCtrl
SvrExitDevRun
SvrGetChannel
SvrDoHelp
SvrGetDevInfo
部分函数的功能:
  1. SvrGetProperty()函数功能,设置设备属性列表,如图所示:

    函数主要是设置属性页中最小采样周期以后的设备属性名(strPropertyName[])、设备属性名(strPropertyValue[]),和是否有下拉框(bPropertyHasValueArray)。设置下拉菜单用SvrEnumPropertyValue()函数。

  2. SvrSetProperty()函数功能:设置设备属性列表,主程序在调通道连接和设备调试属性页之前运行,系统获取基本属性页中的数据。在SvrGetProperty()中设置的通道(每一行),必须保存。
  3. SvrCollectDevData()函数功能:采集数据显示到各个通道中,或者读取通道中的值对设备进行控制。
  4. SvrGetChannel()函数功能:设置通道个数。数组strChannelName中设置名称,数组tyChannelType中设置类型。VSINGLE为只读数值型,-VSINGLE为可写数值型,VSTRING为只读字符型,-VSTRING为可写字符型。如图,画面上显示11个通道。

四、嵌入式数据保存
  1. MCGS_DATA结构由MCGS负责分配,其中有许多系统信息,包括父设备类型(m_ParentType)等。
  2. MCGS_DATA结构中的void* m_pDevData指向DEV_DATA结构体,DEV_DATA结构体中保存设备信息用的自定义结构,设备编写者在设备初始化中分配,在设备退出时释放,也就是主属性页中添加的变量。
五、编辑客户自定义属性

  当调内部属性页函数SvrEditCustomProperty()时,情况比较复杂。由于是在DLL中调用对话框,需要装载资源,而对话框中的数据要让系统保存需要将数据流化到系统中,这部分可以参照PLC驱动程序。

六、CParentDevHelper是一个帮助类,其中集成了许多公用函数,比如对串口的操作Svr_WriteComm(),Svr_ReadComm()等。
七、CownerArchive是一个流化类,用于流化数据。

 

状 态: 离线

公司简介
产品目录

公司名称: 北京昆仑纵横科技发展有限公司
联 系 人: 纵横科技
电  话: 010-51659278
传  真: 010-51659278-101
地  址: 北京市海淀区上地7街1号汇众大厦212室
邮  编: 100085
主  页:
 
该厂商相关技术文摘:
HMIBuilder高级培训
常用DOS命令
加油机的科技进步及发展
人机界面(HMI)产品基本常识
人机界面在工业现场的位置分析
昆仑纵横SCADA系统在天津大学空调机组热交换设备中的应用
HMIBuilder宝典
HMIBuilder功能手册
HMIBuilder初级培训
HMIBuilder初级培训
TPC070TD-b说明书
TPC105TD-b说明书
更多文摘...
立即发送询问信息在线联系该技术文摘厂商:
用户名: 密码: 免费注册为中华工控网会员
请留下您的有效联系方式,以方便我们及时与您联络

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 不良信息举报
工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2022 Gkong.com, All Rights Reserved