首页 新闻 工控搜 论坛 厂商论坛 产品 方案 厂商 人才 文摘 下载 展览
中华工控网首页
  P L C | 变频器与传动 | 传感器 | 现场检测仪表 | 工控软件 | 人机界面 | 运动控制
  D C S | 工业以太网 | 现场总线 | 显示调节仪表 | 数据采集 | 数传测控 | 工业安全
  电 源 | 嵌入式系统 | PC based | 机柜箱体壳体 | 低压电器 | 机器视觉
MCGS通用版板卡驱动开发
北京昆仑纵横科技发展有限公司
收藏本文     查看收藏

l.   DLL文件存放路径的问题:  
     板卡厂商提供DLL库的存放路径可以有以下几种: 
与调用DLL库的程序文件同一路径,如MCGS要调用某个DLL库,就应该把这个DLL库存放到X:\MCGS\Program中,而不是和设备驱动放在同一路径; 
2. X:\windows\system下; 
3. X:\windows\system32下。 
三. 板卡驱动开发过程中的问题
a. 通常,如果一块板卡占用多个IO地址,这些地址都是连续的,一块板卡会有一个基地址,所有的IO地址都是在这个基地址的基础上加上一个偏移量构成。 
b. 要使驱动操作端口要把下面四个DLL库函数声明加入到代码的头部。这四个函数包括端口读写和打开/关闭端口的功能。 
Public Declare Function Inp Lib "mcgsext.dll" (ByVal Handle As Long, ByVal
PortAddress As Long) As Long 
Public Declare Function Outp Lib "mcgsext.dll" (ByVal Handle As Long, ByVal 
PortAddress As Long, ByVal Value As Long) As Long 
Public Declare Function OpenPort Lib "mcgsext.dll" (Handle As Long) As Long 
Public Declare Function ClosePort Lib "mcgsext.dll" (ByVal Handle As Long) As Long 
c.   端口打开后要及时关闭。如未关闭就退出进程,可能再次运行时不能正确打开端口,需要重新启动计算机才能恢复。 
d.   在WINDOWS2000下编写通用版板卡类设备构件需要读写端口时,要使用MCGS软件运行环境下联调的方式调试程序,而不是使用驱动开发工程里的调试工程(TestDev)。因为TestDev和MCGS运行环境不在同一个进程中,在不同的进程中创建的MCGSPORT句柄是不能互用的。 
四.windows2000下有关MCGSPORT不能打开问题
  设备属性页中的板卡基地址对应的变量名必须声明为如下形式
    Public DevBaseIO    As Long
  否则将无法由设备构件主动打开和关闭MCGSPORT端口,其结果是无法正确的操作端口读写数据。另外,使用此变量名在属性页中输入的地址值在属性页初始化代码中自动转换为16进制数。(注意:在某些情况下,例如由其他设备构件打开了MCGSPORT并且打开了与实际存在的板卡一致的端口地址并且端口地址范围也满足实际板卡的要求,则有可能在板卡基地址对应的变量名不符的情况仍能正确的操作端口,但仍不能正确的打开和关闭端口。)(上述问题原因尚不清楚)
  在某些情况下,虽然安装了MCGS,但是在设备管理器中仍找不到MCGSPORT,甚至重新安装MCGS也不能解决问题,这时可以用如下步骤打开MCGSPORT。
1) mcgsport.sys安装成功后,应能在\winnt\system32\drivers\mcgsport.sys找到,如果没有说明安装不成功,需要重新安装MCGS。 
2) 机器启动后,系统自动启动该内核对象服务,可用WIN2000提供的程序->管理工具->计算机管理->系统信息->软件环境->驱动程序->mcgsport.sys。 
3) 正常情况下,该内核对象服务应该是启动状态。如果停止,可在开始菜单->运行 下输入:net start mcgsport,确定,然后刷新软件环境,可以看到内核对象服务启动。 
  板卡通常都提供测试软件,而测试软件有时可能占用板卡设定的I/O端口。在WINDOWS 2000下尝试以上两步仍不能正确读写端口,可以检查一下板卡的端口是否被测试软件的虚拟设备驱动占用,如占用则禁用之。
  当MCGSPORT的端口地址与其他设备端口冲突可能导致MCGSPORT失效,在设备管理器的设备属性页中显示“驱动程序不存在或工作不正常”,在管理工具中查看内核对象服务处于停止状态,但此时使用net start命令(如前所示)也不能启动,此时只能用重装MCGS的方法才能解决。不知道是否有更好的方法。
 

状 态: 离线

公司简介
产品目录

公司名称: 北京昆仑纵横科技发展有限公司
联 系 人: 纵横科技
电  话: 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