![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Driver
WavesLine
这个作者很懒,什么都没留下…
展开
-
添加INF驱动
为板卡添加Windriver生成的驱动,其过程稍有别于其他常见设备。主要过程如下:打开设备管理器,找到板卡:【注】PCI卡在设备管理器中并不显示为未知设备而是在“系统设备”中显示为PCI RAM控制器;如图:果断右键,Update Driver -> Browse ; 然后,注意了:选择从列表中添加驱动!!!系统会给出所列设备,点击“Have Disk”,找到之前生原创 2015-02-24 08:34:12 · 1274 阅读 · 1 评论 -
本机调试
本机调试原创 2015-09-06 10:08:58 · 603 阅读 · 0 评论 -
Hello World
Hello World原创 2015-08-19 19:32:14 · 1178 阅读 · 1 评论 -
再谈WDK环境配置
之前用Win10+VS2015+WDK10的开发环境,发现编译非常慢;老志强处理器+8G内存的机器被拖得一塌糊涂。无奈,格式化C盘,重装系统,重新配置低版本的WDK。1,安装Win7 x642,安装VS20123,安装WDK8.04,安装WdfCoinstaller下面是虚拟机,这次用的是VMware11。1. 安装VMware112. 创建一个new mach原创 2015-08-19 09:56:08 · 670 阅读 · 0 评论 -
资源配置
PCI的配置空间为4KB,具体格式如下表。0x030x020x010x00AddressDevice IDVendor ID0x000x070x060x050x04 Cmd RegStatus Reg0x040x0B0x0A0x090x08 Class原创 2015-08-27 17:35:19 · 1043 阅读 · 0 评论 -
主程序
主程序原创 2015-08-21 17:20:43 · 1331 阅读 · 0 评论 -
利用Virtual Box安装Win10
利用虚拟机安装windows 10原创 2015-08-12 19:16:42 · 1392 阅读 · 0 评论 -
Hello World驱动
编写第一个UWD KMDF 驱动:利用Visual Studio 开发驱动程序,然后 部署到目标 计算机上。1. 新建一个空KMDF工程2. 在解决方案管理器中,查看工程属性:Driver Settings > General > Target Platform 确认为Universal3. 添加一个“C++文件”:Driver.C4. 插入以下代码:#incl原创 2015-08-12 15:11:07 · 694 阅读 · 0 评论 -
WDK开发环境
WDK开发环境原创 2015-08-12 14:24:22 · 1050 阅读 · 0 评论 -
为WDF做准备
为WDF做准备:基本名词解释原创 2015-08-12 14:13:10 · 624 阅读 · 0 评论 -
error-2
昨天写到一半的程序,编译原本是成功的,今天打开再编译,就报错:2> Errors:2> 22.9.7: DriverVer set to incorrect date (postdated DriverVer not allowed) in \kmdfpci.inf. The current date (UTC) is 8/21/2015.看来是时间的问题;这个不难解决:原创 2015-08-22 07:20:58 · 533 阅读 · 0 评论 -
使用VCS2008编译Windriver工程
前面折腾了那么久,现在终于可以进入代码阶段了。遵照Windriver的quick start guide,本文也以显卡为例。首先:打开Windriver,找到目标设备:显卡是不需要我们安装驱动的,因此不用生成inf,直接进入下一步操作即可。Next:在Windriver主窗口中点击生成代码按钮:本文选取的平台是C#,VS2008;至于是x86还是x64,根据需要吧。原创 2015-02-24 08:35:31 · 2548 阅读 · 0 评论 -
中断
两个函数就可以搞定:UInt32 dwStatus = dev.EnableInterrupts(new USER_INTERRUPT_CALLBACK(DISPLAYADAPTE_IntHandler), dev.Handle);UInt32 dwStatus = dev.DisableInterrupts();原创 2015-02-24 08:37:22 · 530 阅读 · 0 评论 -
按地址读取数据
对已知的地址进行数据读取,需要用到下面读取函数:UInt32 wdc_lib_decl.WDC_ReadAddr8(WDC_DEVICE_HANDLE hDev, UInt32 dwAddrSpace, uint dwOffset, ref byte val) //1 byteUInt32 wdc_lib_decl.WDC_ReadAddr16(WDC_DEVICE_HANDLE h原创 2015-02-24 08:36:12 · 2045 阅读 · 0 评论 -
Windriver的VCS开发环境
折腾了一整天,终于能成功编译了。话说,WinDriver真操蛋,即使最新版的V11.7,配合Win7 x64和VCS2012,生成的C#工程虽然能够编译成功,但是运行时却总是报错[WDC_PciGetDeviceInfo()]等函数都找不到;硬件设备连接无法打开,更不用说数据读写了。难道这是试用版的限制但想想也不应该,因为其提供的演示程序C:\WinDriver\csharp.net\pci_原创 2015-02-24 08:34:59 · 2166 阅读 · 0 评论 -
使用Windriver生成PCI驱动
首先安装Windriver,这里用的是V10.2,据说这个版本支持Win7 X64。 安装前,我还注意看了一下,ISE14.7用的也是这个版本。将PCI卡插入到计算机主板上,然后启动。貌似卡的检测需要用到BIOS,因此建议先安装Windriver,然后再插卡,开机;否则可能检测不到PCI卡。启动Windriver,新建工程:在列表中,找到PCI卡,并选中点击右侧原创 2015-02-24 08:33:36 · 4176 阅读 · 6 评论 -
向给定地址写入数据
与读数据相似,写数据可以通过下面函数实现:UInt32 wdc_lib_decl.WDC_WriteAddr8(WDC_DEVICE_HANDLE hDev, UInt32 dwAddrSpace, uint dwOffset, ref byte val) //1 byteUInt32 wdc_lib_decl.WDC_WriteAddr16(WDC_DEVICE_HANDLE hD原创 2015-02-24 08:36:42 · 2692 阅读 · 0 评论 -
打开,关闭设备
首先添加引用:using Jungo.wdapi_dotnet;using Jungo.yourapp_lib;获取PCI设备列表:private YourApp_DeviceList pciDevList;//Declare PCI Device ListpciDevList = YourApp_DeviceList.TheDeviceList();//NewUInt3原创 2015-02-24 08:35:46 · 1072 阅读 · 0 评论 -
inf
inf原创 2015-08-20 21:26:56 · 729 阅读 · 0 评论