最新WinIO驱动测试GPIO口

前言

  1. 首先,对于WinIo这个驱动的介绍你可以参考这个博客利用winIO3.0进行windows10 64bit端口读取,我的测试能够成功,很大部分也是参考了这个。
  2. 所谓WinIo驱动程序呢,就是通过使用一种内核模式的设备驱动器和其它几种底层编程技巧,绕过了Windows系统的保护机制,允许在32位的Windows应用程序中直接对I/O端口和物理内存进行存取操作,而在64位Windows程序中有诸多前提条件的驱动程序。
  3. 而大家其实现在在用的很大一部分都是Window10,64位的,也很少见到32位了。所以,这篇博客的意义就显而易见了,我会尽自己所能,将整个需要讲解的东西全都详细的讲明白,所有过程都是我自己亲自试验成功的,你可以跟着一步一步来。

实验环境

首先,我使用的编译环境是Win10 64位 +VS2015 +QT5.12,使用的语言是QT。我的试验成功也打破了网上某些人对于编译环境说要求在VS2013及以下的一种错误想法,不过,也有可能是环境不一样。程序的试验环境是Win10 64位的工控机。所以,后面我的程序还会涉及到应用程序的打包。

第一步:准备实验环境

第一步首先准备好你要实验的工控机的环境吧。我就直接摘抄上面那个博客了。

  1. 首先,先下载WinIo驱动程序,现在网上已经很多都已经不具有什么参考价值了,我就自己在网上下载了一个:WinIO驱动程序。我如果后面有讲到什么需要的文件的话,我都放在那里了。去下载就可以了,如果失效请留言。
  2. 接下来,就是在你要测试的机器上开启测试模式了。你可以参考这个利用winIO3.0进行windows10 64bit端口读取进行测试模式的开启。还有就是安装WinIo64.sys的测试签名。这些你参考一下这个博客应该都可以解决。我主要讲需要注意的点:首先就是你要把WinIo64放在你运行程序的目录之前下,然后进行安装。
  3. 然后把WinIo.h,WinIo64.lib,WinIo64.sys,WinIo64.dllWINIO.VXD这些文件都放在程序的当前目录之下,这些在我给的链接里面都有的。反正可以参考下面这个图片:
    在这里插入图片描述
  4. 经过上面的步骤,基本可以说关于WinIo这部分的环境就已经配置完毕了。下面讲一下代码,然后再讲一下打包方面的事情。

第二步:代码实现

就我自己的代码来说,我使用的是以插件的形式来实现我的测试程序。

初始化

这个测试程序的初始化很简单,你只需要调用InitializeWinIo()这个函数就可以了,然后看一下返回值。可以在插件中弄一个QMessageBox去弹出是否初始化成功。

int  HTKIOTest::openDevice()
{
   
    int retValue = 0;//非0代表的是失败,所以先暂时赋值为0
    retValue = 
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值