




免费预览已结束,剩余28页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录1. 介绍31.1 概述31.2 I/O 接口31.3 针脚定义31.4 模拟量输入连接51.4.1 单端通道连接51.4.2 差分输入连接51.5 模拟量输出连接(电压)61.6 触发源连接71.6.1 内部脉冲触发连接71.6.2 外部触发源连接72. 研华设备驱动应用73. 函数参考83.1 USB系列函数支持列表83.1.1 Device 函数组83.1.2 模拟量输入函数组83.1.3 模拟量输出函数组83.1.4 数字量输入/输出函数组83.1.5 Counter 函数组84. 使用函数94.1 设备函数组94.1.1 DRV_DeviceOpen114.1.2 DRV_DeviceClose114.2 模拟量输入函数组124.2.1 DRV_AIConfig134.2.2 DRV_AIVoltageIn144.2.3 DRV_AIBinaryIn154.2.4 DRV_AIScale164.3 模拟量输出函数组174.3.1 DRV_AOConfig184.3.2 DRV_AOVoltageOut194.3.3 DRV_AOBinaryOut214.3.4 DRV_AOScale224.4 Counter 函数组234.4.1 DRV_CounterEventStart244.4.2 DRV_CounterEventRead254.4.3 DRV_CounterReset265. VC中使用研华设备驱动编程指南275.1 添加必要文件295.2 编写代码305.3 测试程序311. 介绍1.1 概述USB-4711A系列包括即插即用数据采集模块,因此无需再打开您的计算机机箱来安装板卡。仅需插上模块,便可以采集到数据,简单高效。USB-4711A是给任何带有USB端口的计算机增加测量和控制能力的最佳途径。它通过USB端口获得所有所需的电源,因此无需连接外部的电源。USB-4711A在一块卡上包含了所有的数据采集功能,如:16路AI,2路AO,8路DI,8路DO,1路32位计数器,其中A/D数据采集为12位。USB-4711A板卡如图1.1所示。图1.1 USB-4711A板卡1.2 I/O 接口USB-4711A 配有插入式螺丝端子接口,因此连接模块时无需另外准备端子板或电缆。1.3 针脚定义图1.2为USB-4711A 上五个10针I/O 接口的针脚定义。两个接地参考AGND 和DGND 的用途不同,因此应分开使用。不要将两者进行连接。表1.1为I/O 接口信号的描述。图 1.2 I/O 接口针脚定义表 1.1 I/O 接口信号描述信号名参考方向描 述AIAGND输入模拟量输入通道0 15。AO0/AO1AGND输出模拟量输出通道0/1。AGND-模拟量输入输出接地DIDGND输入数字量输入通道。DODGND输出数字量输出通道。DGND-数字量接地。GATEDGND输入A/D 外部触发门。将GATE 连接至+5 V 将禁用外部触发信号的输入。EXT _TRGDGND输入A/D 外部触发。此针脚为A/D 转换的外部触发信号。低- 高沿将触发A/D转换。EVT_INDGND输入外部事件输入通道。P_OUTDGND输出脉冲输出通道1.4 模拟量输入连接USB-4711A支持16 路单端/8路差分输入。每个输入通道都可通过软件方式进行选择。1.4.1 单端通道连接单端输入配置只为每个通道提供1根信号线,且被测电压(Vm)是以公共地为参考的线缆电压。没有接地端的信号源称为“浮动信号源”。将单端通道连接至浮动信号源尤为简单。在这种模式下,USB-4711A 为外部浮动信号源提供一个参考地。图1.3为浮动信号源与USB-4711A的1个输入通道的单端通道连接。图1.3 单端输入通道连接1.4.2 差分输入连接差分输入为每个通道提供两根信号线,两根信号线之间的电压差是可测量的。在USB-4711A中,当所有通道都配置为差分输入,最多可有8个模拟通道。如果信号源的一侧连接到地面,信号源作为参考地。因此,信号源的地与板卡地将形成不完全相同的电压。地面之间的电压差异,形成了一个共模电压(Vcm )。为了避免共模电压引起的接地回路噪声的影响,您可以连接到低输入信号地面。注:在差分输入模式,输入通道n应使用通道n +1。(N =0,2,4. 14)图1.4为 USB-4711A的1个输入通道的差分输入通道连接。图1.4 差分输入通道连接1.5 模拟量输出连接(电压)USB-4711A提供了2个模拟量输出通道,即AO0和AO1。图1.5 为USB-4711A的模拟量输出通道连接。图1.5 模拟量输出通道连接1.6 触发源连接1.6.1 内部脉冲触发连接USB-4711A提供了2个16-bit计数器,可以连接至1个10MHz 时钟。计数器0负责输入通道的事件计数。计数器1是1个16-bit定时器,用于脉冲触发。计数器1输出的上升沿信号(低高)将触发USB-4711A的A/D 转换。1.6.2 外部触发源连接除脉冲触发以外,USB-4711A还为A/D 转换提供了外部触发。将GATE信号连接至+5VDC 源时,外部触发功能即被禁用。断开与+5VDC源的连接即可启用外部触发功能。2. 研华设备驱动应用研华Windows设备驱动是动态链接的。以下列出了开发应用时必需的文件:3. 函数参考3.1 USB系列函数支持列表3.1.1 Device 函数组DRV_DeviceOpenDRV_DeviceCloseDRV_DeviceGetFeaturesDRV_DeviceGetPropertyDRV_DeviceSetProperty3.1.2 模拟量输入函数组DRV_AIConfigDRV_AIGetConfigDRV_AIBinaryInDRV_AIScaleDRV_AIVoltageInDRV_AIVoltageInExpDRV_MAIConfigDRV_MAIVoltageInDRV_MAIVoltageInExpDRV_MAIBinaryIn3.1.3 模拟量输出函数组DRV_AOConfigDRV_AOScaleDRV_AOBinaryOutDRV_AOVoltageOut3.1.4 数字量输入/输出函数组AdxDioGetCurrentDoPortsStateAdxDioReadDiPortsAdxDioWriteDoPortsDRV_DioReadBitDRV_DioWriteBitDRV_DioReadPortByteDRV_DioWritePortByteDRV_DioReadPortWordDRV_DioWritePortWordDRV_DioReadPortDwordDRV_DioWritePortDwordDRV_DioGetCurrentDOBitDRV_DioGetCurrentDOByteDRV_DioGetCurrentDOWord3.1.5 Counter 函数组DRV_CounterEventStartDRV_CounterEventReadDRV_CounterReset4. 使用函数函数描述函数部分包括模拟量输入函数,模拟量输出函数,数字量输入函数,数字量输出函数等等。研华的每个函数都将以如下形式出现:status = FUNCTION_Name (parameter 1, parameter 2,. , parameter n)(n0),每个函数都会返回一个状态,表明函数执行成功还是失败(保存在status变量中)。Status (Value)结 果UNSUCCESS (0)遇到错误,函数执行失败SUCCESS (=0)函数执行成功Status是一个4字节的整型变量,在DRIVER.H里被定义。4.1 设备函数组进行所有I/O 操作时,必须首先调用DRV_DeviceOpen,通过设备号(Device Number)打开设备得到设备句柄,以使用户访问该设备,然后调用一系列函数执行相应的功能。结束操作时,调用DRV_DeviceClose关闭设备,释放由DRV_DeviceOpen分配的资源,基本流程如图4.1所示。图4.1 设备函数组应用流程Device Number (Type: Unsigned Long,Size: 4 bytes)指定要进行I/O操作的设备,即要打开的设备的设备号。设备号在Advantech Device Manager中初始化设备的时候分配。比如“000:Advantech DEMO I/O=1H”,这个设备的设备号就为000,用户可以直接在DRV_DeviceOpen函数中指定要打开的设备号,也可以通过调用DRV_SelectDevice 函数打开一个对话框选择需要的设备,从而取得相应的设备号。DRV_DeviceOpen 和 DRV_DeviceClose 函数 DRV_DeviceOpen 打开设备号(Device Number)指定的设备。在I/O操作中,其它函数执行前必须先调用此函数。与之对应,DRV_DeviceClose 函数用来关闭设备。Driver Handle (Type: Long,Size: 4 bytes) 指向的缓存保存了设备的设置信息。函数DRV_DeviceOpen返回句柄(Driver Handle),其它进行I/O相关操作的函数使用该句柄来指定设备。Error Code(Type: Unsigned Long,Size: 4 bytes) 驱动函数返回错误代码(Error Code)来表明函数执行是否成功。当返回代码非零时,函数执行失败。DRV_GetErrorMessage函数 DRV_GetErrorMessage函数通过错误代码获取出错信息。 4.1.1 DRV_DeviceOpenLRESULT DRV_DeviceOpen (ULONG DeviceNum,LONG * DriverHandle );用途:通过指定的设备号(DeviceNum)来打开一个已经安装的设备,返回设备句柄DriverHandle以备后续操作。与指定设备相关的所有操作都必须使用指向该设备的句柄(DriverHandle) ,所以用户在使用与设备所分配资源相关的任何一项操作,如DIO、AO、AI等之前,必须先调用此函数。参数:返回值:1. SUCCESS:执行成功。2. LoadLibraryFailed:动态链接库装载失败,请尝试重新安装驱动程序。3. MemoryAllocateFailed:驱动程序内部内存分配失败。4. ConfigDataLost:从注册表获取设备配置信息失败,这些信息可能已经丢失,请尝试重新安装驱动程序。5. GetProcAddressFailed:无法获得驱动程序函数地址,请尝试更新驱动程序。注意事项:与设备所分配资源相关的任何一项操作,如DIO、AO、AI等,执行完毕后,用户必须调用DRV_DeviceClose函数来释放由该设备通过DRV_DeviceOpen 分配的资源,为设备再次操作做好准备。4.1.2 DRV_DeviceClose LRESULT DRV_DeviceClose ( LONG * DriverHandle );用途:关闭由设备句柄 DriverHandle 指向的设备,释放为该设备分配的资源。所有与设备分配资源相关的操作,如:DIO、AO、AI等完成后需要关闭该设备,以释放由函数 DRV_DeviceOpen 为该设备分配的资源。参数:返回值:1. SUCCESS:执行成功。2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。4.2 模拟量输入函数组软件方式: 该组函数通过软件命令触发数据转换。设备驱动为单通道和多通道数据采集分别提供了不同的函数,两种数据采集都是一次完成。可以使用软件定时器来周期性地调用这些函数,对单通道或多通道周期性地进行采样。对于大块数据的连续高速采样,可以采用中断或DMA传输方式。单通道采样:DRV_AIConfig 函数为指定通道设置输入值范围。如果在运行期需要改变输入值范围,则需要再次调用DRV_AIConfig函数。DRV_AIVoltageIn函数读取输入通道当前电压值。设备驱动通过函数DRV_AIBinaryIn读取输入通道的当前二进制值,DRV_AIScale函数可以把它转化成电压值。4.2.1 DRV_AIConfigLRESULT DRV_AIConfig (LONG DriverHandle, LPT_AIConfig lpAIConfig );用途:在设备句柄 DriverHandle 指向的设备上,通过设置 GainCode来配置指定AI(Analog Input)通道(Channel)的电压输入范围。参数:在 lpAIConfig 指向的结构 PT_AIConfig 中保存的参数包括:所要设置的通道 (DasChan) 和 GainCode (DasGain)。返回值:1. SUCCESS:执行成功。2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。3. InvalidChannel:指定的通道 (chan of lpAIConfig) 超出有效范围。4. InvalidGain:GainCode (DasGain of lpAIConfig) 超出有效范围。5. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。注:PT_AIConfig Typedef struct tagPT_AIConfig USHORT DasChan; USHORT DasGain; PT_AIConfig,* LPT_AIConfig;函数 DRV_AIConfig使用到PT_AIConfig。成员描述:gain code列表Gain Code输入电压范围410V05V12.5 V21.25 V30.625V4.2.2 DRV_AIVoltageInLRESULT DRV_AIVoltageIn (LONG DriverHandle,LPT_AIVoltageIn lpAIVoltageIn );用途:在设备句柄 DriverHandle 指向的设备上,读取指定AI(Analog Input)通道的电压值。参数:此函数等同于依序调用 DRV_AIBinaryIn 与 DRV_AIScale。在 lpAIVoltageIn 指向的结构 PT_AIVoltageIn 中保存的参数包括:采样通道 (chan)、GainCode (gain)、触发模式 (TrigMode) 和返回电压值 (voltage)。返回值:1. SUCCESS:执行成功。2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。3. DataNotReady:使用外部触发模式时(TrigMode 为 1),在特定时间内,驱动没有检测到外部触发信号。4. AIConversionFailed:使用内部触发模式时(TrigMode 为 0),在特定时间内,设备未准备好数据。5. InvalidChannel:指定的通道 (chan of lpAIVoltageIn) 超出有效范围。6. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。注:PT_AIVoltageIn typedef struct tagPT_AIVoltageIn USHORT chan; USHORT gain; USHORT TrigMode; FLOAT *voltage; PT_AIVoltageIn,* LPT_AIVoltageIn;函数 DRV_AIVoltageIn使用到PT_AIVoltageIn 。成员描述:4.2.3 DRV_AIBinaryInLRESULT DRV_AIBinaryIn ( LONG DriverHandle, LPT_AIBinaryIn lpAIBinaryIn );用途:在设备句柄 DriverHandle 指定的设备上,读取指定AI(Analog Input)通道的当前二进制值,函数DRV_AIScale 可用来将原始数据换为相应的电压值。参数:在 lpAIBinaryIn 指向的结构 PT_AIBinaryIn 中保存的参数包括:所要设置的通道 (chan)、触发模式 (TrigMode) 和返回的原始数据 (reading)。返回值:1. SUCCESS:执行成功。2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。3. DataNotReady:使用外部触发模式时(TrigMode 为 1),在特定时间内,驱动没有检测到外部触发信号。4. AIConversionFailed:使用内部触发模式时(TrigMode 为 0),在特定时间内,驱动检测到数据没有做好准备。5. InvalidChannel:指定的通道 (chan of lpAIBinaryIn) 超出有效范围。6. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。注:PT_AIBinaryIn typedef struct tagPT_AIBinaryIn USHORT chan; USHORT TrigMode; USHORT *reading; PT_AIBinaryIn,* LPT_AIBinaryIn; 函数 DRV_AIBinaryIn使用到PT_AIBinaryIn。 成员描述:4.2.4 DRV_AIScaleLRESULT DRV_AIScale (LONG DriverHandle, LPT_AIScale lpAIScale );用途:把二进制原始数据(通常得自函数DRV_AIBinaryIn)转换为相应的电压值,或用户需要的其它模拟量值。参数:在 lpAIScale 指向的结构 PT_AIScale 中保存的参数包括:最大输入模拟量值(MaxVolt)、最大计数值(MaxCount)、零点偏移量(offset)、输入数字量值(reading)和返回模拟量值(voltage)。返回值:1.SUCCESS:执行成功。2.AIScaleFailed:输入参数有误,致转换无法进行。注:PT_AIScale Typedef struct tagPT_AIScale USHORT reading; FLOAT MaxVolt; USHORT MaxCount; USHORT offset; FLOAT *voltage; PT_AIScale,* LPT_AIScale;函数DRV_AIScale使用到PT_AIScale。成员描述:4.3 模拟量输出函数组该组函数实现模拟量输出的功能。采样方式分为单通道,多通道同步输出,及DMA方式的波形输出等。软件方式:单通道单次转换DRV_AOVoltageOut函数用于电压输出:DRV_AOVoltageOut 函数接收到一个浮点电压值,并把它转化成二进制数写入模拟量输出通道来改变电压输出值。电压输出范围取决于Advantech Device Manager 中DA参考电压的设置。在运行态可以调用DRV_AOConfig 函数改变电压范围的设置。设备驱动也提供了二进制数据输出函数DRV_AOBinaryOut,函数接收到二进制数值并把它写入模拟量输出通道。先通过DRV_AOScale 函数可以把想得到的模拟量输出值转换成二进制数,再通过函数DRV_AOBinaryOut 输出。 4.3.1 DRV_AOConfigLRESULT DRV_AOConfig( LONG DriverHandle, LPT_AOConfig lpAOConfig );用途:在设备句柄 DriverHandle 指向的设备上,改变所指定AO(Analog Output)通道的输出范围默认配置 (未调用本函数前,AO通道的输出范围默认参考的是用户在研华设备管理器 Advantech Device Manager 的设置数据,这个数据保存在注册表Registry中)。本函数改变的配置数据只是执行时的暂存信息,保存在注册表的配置数据并没有被改变。参数:在 lpAOConfig 指向的结构 (PT_AOConfig) 中保存的参数包括指定通道(chan) ,指定参考源(RefSrc) ,参考电压上限(MaxValue)和参考电压下限 (MinValue)。返回值: 1. SUCCESS:执行成功。 2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。 3. InvalidChannel:指定的通道号(chan of lpAOConfig)超出有效范围。4. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。 5. FunctionNotSupported:DriverHandle 指向的设备不支持本功能,请参阅相关硬件手册。注:PT_AOConfig typedef struct tagPT_AOConfig USHORT chan; USHORT RefSrc; FLOAT MaxValue; FLOAT MinValue; PT_AOConfig,* LPT_AOConfig;函数DRV_AOConfig使用到PT_AOConfig。成员描述:4.3.2 DRV_AOVoltageOutLRESULT DRV_AOVoltageOut( LONG DriverHandle, LPT_AOVoltageOut lpAOVoltageOut );用途:在设备句柄 DriverHandle 指向的设备上,以设置浮点型的电压值,来改变指定 AO (Analog Output) 通道的输出状态。参数:此函数等同于依序调用 DRV_AOScale 与 DRV_AOBinaryOut。在 lpAOVoltageOut 指向的结构 PT_AOVoltageOut 中保存的参数包括:指定的AO通道(chan)和所要设置的浮点型电压值(outputValue)。返回值: 1. SUCCESS:执行成功。 2. InvalidChannel:指定的通道号(chan of lpAOVoltageOut)超出有效范围。 3. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。 4. InvalidAnalogOutValue:设置的输出值 (OutputValue) 超出硬件支持的范围,请参阅相关硬件手册正确设置。 5. FunctionNotSupported:DriverHandle 指向的设备不支持本功能,请参阅相关硬件手册。 6. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。注:PT_AOVoltageOut typedef struct tagPT_AOVoltageOut USHORT chan; FLOAT OutputValue; PT_AOVoltageOut,* LPT_AOVoltageOut;函数DRV_AOVoltageOut使用到PT_AOVoltageOut。成员描述:4.3.3 DRV_AOBinaryOutLRESULT DRV_AOBinaryOut( LONG DriverHandle, LPT_AOBinaryOut lpAOBinaryOut );用途:在设备句柄 DriverHandle 指向的设备上,以直接设置二进制数值来改变指定AO (Analog Output)通道的输出状态。DRV_AOScale可用于把浮点型电压或电流值的模拟量转换为所需的二进制数。参数:在 lpAOBinaryOut 指向的结构 PT_AOBinaryOut 中保存的参数包括指定的AO通道(chan)和所要输出的二进制数(BinData)。返回值: 1. SUCCESS:执行成功。 2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。 3. InvalidChannel:指定的通道号(chan of lpAOBinaryOut)超出有效范围。 4. FunctionNotSupported:DriverHandle 指向的设备不支持本功能,请参阅相关硬件手册。 5. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。注:PT_AOBinaryOut typedef struct tagPT_AOBinaryOut USHORT chan; USHORT BinData;PT_AOBinaryOut,* LPT_AOBinaryOut;函数DRV_AOBinaryOut使用到PT_AOBinaryOut。 成员描述:4.3.4 DRV_AOScaleLRESULT DRV_AOScale ( LONG DriverHandle, LPT_AOVoltageOut lpAOScale );用途:在设备句柄 DriverHandle 指向的设备上,根据指定通道默认的模拟量输出范围设置,将输入的浮点型模拟量值转换为相应的二进制数据。调用 DRV_AOConfig可改变默认的模拟量输出范围设置。在未调用函数 DRV_AOConfig 前,该函数参考的是用户在研华设备管理器 Advantech Device Manager 对个别板卡所作的设置数据,这个数据保存在注册表Registry中。参数:在 lpAOScale 指向的结构 PT_AOScale 中保存的参数包括指定的AO通道(chan),所要转换的模拟量值(outputValue)和转换后相应的二进制数值 (BinData)。返回值: 1. SUCCESS:执行成功。 2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。 3. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。 4. FunctionNotSupported:DriverHandle 指向的设备不支持本功能,请参阅相关硬件手册。注:PT_AOScale typedef struct tagPT_AOScale USHORT chan; FLOAT OutputValue; USHORT *BinData;PT_AOScale, * LPT_AOScale;函数DRV_AOScale使用到PT_AOScale。成员描述:4.4 Counter 函数组Counter 函数组包含三种操作方式:事件计数,脉冲输出和频率测量。中断方式的Counter和Q Counter(PCL-833)都属于事件计数组。事件计数函数普通Counter (Intel 8254 或 AMD 9513A)DRV_CounterEventStart启动counter操作。当counter开始计数时,可以反复调用DRV_CounterEventRead函数读取计数值。操作完成后可以调用函数DRV_CounterReset停止计数。4.4.1 DRV_CounterEventStart LRESULT DRV_CounterEventStart ( LONG DriverHandle, LPT_CounterEvenStart lpCounterEventStart );用途:在设备句柄 DriverHandle 指向的设备上,将指定的计数器配置为事件计数并启动该操作。启动后,可调用函数DRV_CounterEventRead 读取计数值与状态。对于PCI1780/MIC3780/PCM3780/MIC3756,必须先使用函数 DRV_CounterConfig 进行功能配置,然后通过本函数 DRV_CounterEventStart 启动操作;如果直接调用 DRV_CounterEventStart,则使用默认的计数模式:PCI1780/MIC3780/PCM3780采用计数模式D;MIC3756采用无门控、DO00作为计数终止输出的模式。参数:在 lpCounterEventStart 指向的 PT_CounterEventStart 结构中,保存的参数包括:目标计数器通道号(counter)和门控模式(GateMode)。返回值: 1. SUCCESS:执行成功。 2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。 3. InvalidChannel:指定的计数器通道号超出有效范围,请查阅相关硬件手册以确定计数器通道数。 4. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。 5. ResourceConflict:资源冲突,可能该计数器正在被其它应用程序使用。注:PT_CounterEventStart typedef struct tagPT_CounterEventStart USHORT counter; USHORT GateMode; PT_CounterEventStart,* LPT_CounterEventStart;函数DRV_CounterEventStart使用到PT_CounterEventStart。成员描述:4.4.2 DRV_CounterEventRead LRESULT DRV_CounterEventRead ( LONG DriverHandle, LPT_CounterEventRead lpCounterEventRead );用途:在设备句柄 DriverHandle 指向的设备上,读取指定计数器的当前计数值和溢出状态标志。此操作将不影响计数器的持续工作。参数:在 lpCounterEventRead 指向的 PT_CounterEventRead 结构中,保存的参数包括:目标计数器通道号(counter),读回的溢出标志(overflow),以及读回的当前计数值(count)。返回值: 1. SUCCESS:执行成功。 2. InvalidDriverHandle:设备句柄 DriverHandle 为 NULL。 3. InvalidChannel:指定的计数器通道号(counter)超出有效范围。 4. CardTypeIDNotSupported:驱动无法识别DriverHandle 指向的设备,请更新驱动程序。 5. ResourceConflict:资源冲突,可能该计数器正在被其它应用程序使用。注:PT_CounterEventRead typedef struct tagPT_CounterEventRead USHORT counter; USHORT *overflow; ULONG *count; PT_CounterEventRead,* LPT_CounterEventRead;函数DRV_CounterEventRead使用到PT_CounterEventRead。成员描述:4.4.3 DRV_CounterReset LRESULT DRV_CounterReset ( LONG DriverHandle, LPARAM counter );用途:在设备句柄 DriverHandle 指向的设备上,重置计数器以停止当前的操作。本函数适用于所有与计数器相关的函数(包括:DRV_CountEventStart,DRV_CounterFreqStart,DRV_QCounterStart,DRV_CounterPulseStart,DRV_CounterPWMEnable,DRV_TimerCounterSetting 等等),
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 世界经典活动方案
- 业主农场活动方案
- 业主火锅活动方案
- 圣诞线上互动活动方案
- 地产项目公司策划方案
- 地产跨界联动活动方案
- 城关花园理发店活动方案
- 大公司活动策划方案
- 夏季观摩活动方案
- 大学网上商城活动方案
- 陪伴孩子的成长课件
- 你的名字叫什么-音乐教案
- 《员工的七个习惯》课件
- 分布式光伏危险源辨识清单
- 南开大学商学院管理综合历年考研真题汇编(含部分答案)(1)合集
- 上海上海市实验学校西校小升初数学期末试卷测试题(Word版-含解析)
- 有限空间作业审批制度
- (新插图)人教版五年级下册数学 6-3-1 分数加减混合运算 知识点梳理课件
- 家庭教育环境与小学生心理健康的关系 论文
- 蒸汽机的原理
- 人教版初中物理实验目录详表
评论
0/150
提交评论