编辑: 戴静菡 | 2016-08-29 |
2 北京阿尔泰科技发展有限公司
第二节、如何管理 PCI 设备 由于我们的驱动程序采用面向对象编程,所以要使用设备的一切功能,则必须首先用CreateDevice函数创 建一个设备对象句柄hDevice,有了这个句柄,您就拥有了对该设备的绝对控制权.然后将此句柄作为参数传 递给其他函数,如InitDeviceDA可以使用hDevice句柄以程序查询方式初始化设备的DA部件,WriteDeviceDA函 数可以用hDevice句柄实现对DA数据的采样读取.最后可以通过ReleaseDevice将hDevice释放掉.
第三节、如何实现 DA 波形数据输出 当您有了hDevice设备对象句柄后,便可用InitDeviceDA函数初始化DA部件,关于频率等参数的设置是由 这个函数的pDAPara参数结构体决定的.您只需要对这个pDAPara参数结构体的各个成员简单赋值即可实现所 有硬件参数和设备状态的初始化.然后调用WriteDeviceDA将准备好的DA数据写入板载RAM中,接着开始DA 输出,TrigDeviceDA函数以触发DA,用户可以根据其状态作出相应的处理.
第四节、哪些函数对您不是必须的? 公共函数如CreateFileObject, WriteFile,ReadFile等一般来说都是辅助性函数,除非您要使用存盘功能. 如果您使用上层用户函数访问设备,那么GetDeviceAddr , WriteRegisterByte , WriteRegisterWord , WriteRegisterULong, ReadRegisterByte, ReadRegisterWord, ReadRegisterULong等函数您可完全不必理会, 除非您是作为底层用户管理设备.而WritePortByte, WritePortWord, WritePortULong, ReadPortByte, ReadPortWord, ReadPortULong则对PCI用户来讲,可以说完全是辅助性的,它们只是对我公司驱动程序的一 种功能补充,对用户额外提供的,它们可以帮助您在NT、Win2000 等操作系统中实现对您原有传统设备如ISA 卡、串口卡、并口卡的访问,而没有这些函数,您可能在新操作系统中无法继续使用您原有的老设备(除非您 自己愿意去编写复杂的硬件驱动程序).
第三章 PCI 即插即用设备操作函数接口介绍
第一节、设备驱动接口函数列表 (每个函数省略了前缀 PCI8304_ ) 函数名 函数功能 备注 设备对象操作函数 CreateDevice 创建 PCI 设备对象(用设备逻辑号) 上层及底层用户 CreateDeviceEx 创建 PCI 设备对象(用设备物理号) GetDeviceCount 取得同一种 PCI 设备的总台数 上层用户 GetDeviceCurrentID 取得指定设备句柄指向的设备 ID 号 上层用户 ListDeviceDlg 列表所有同一种 PCI 设备的各种配置 上层用户 ReleaseDevice 关闭设备,且释放 PCI 总线设备对象 上层及底层用户 DA 数据采样操作函数 InitDeviceDA 初始化 PCI 设备上的 DA 部件准备传输 上层用户 WriteDeviceDA 写DA 数据 上层用户 TrigDeviceDA 触发 DA 输出 上层用户 使用需知: 要使用如下函数关键的问题是: Visual C++ &
C++Builder:
3 PCI8304 WIN2000/XP 驱动程序使用说明书 版本:6.001 首先, 将PCI8304.h 和PCI8304.lib 文件从 Visual C++的源程序目录下的任意一个子目录下复制到您的源程 序目录下(若有 Advanced 高级源程序目录,则最好选择它),然后在您的源程序中包含如下语句(若想在整 个工程的所有源代码文件中使用本驱动,请您最好在 StdAfx.h 全局头文件中包含如下语句): #include PCI8304.H 那么对于导入库 PCI8304.lib 文件您则可以不必再加入您的工程,因为 PCI8304.h 头文件已帮助自动完成了. C++ Builder: 首先,将PCI8304.h 和........