RTX是Windows的实时扩展,RTX的出现,使得用户既可以利用Windows的良好界面,又使应用具有了微秒级的实时特性。
RTX不仅支持PCI,ISA总线的板块,也支持PCI-E总线板卡。在驱动开发上,PCI,ISA和PCI-E板卡开发方法没有任何区别,RTX提供了良好驱动开发框架,通过设置向导,用户可以选择需要的功能模块,如:内存映射,I/O映射,ISR,IST等。
RTX对中断类型的支持,不仅包括line-based类型,还包括MSI和MSI-X中断类型。当然,对MSI和MSI-X中断类型,需要硬件板卡具有此中断功能。目前,符合PCI2.2协议的板卡和PCI-E板卡一般都支持MSI和MSI-X中断。
下面简单介绍RTX的驱动框架,
1. 用搜索函数来搜索指定的设备,开发人员需要将device ID 和Vendor ID 指定。
2. 用初始化函数来初始化搜索到的指定设备。
2.1 使能I/O。(如果在构建框架时选择了I/O映射)
2.2 将物理内存地址,寄存器地址进行映射,这杨,开发人员对设备寄存器的访问就如同对数组的访问一样简单。
2.3 根据需要,对设备寄存器进行相应的配置。
3. 检测板卡是否支持MSI或MSI-X中断。
4. 根据中断类型来设置参数,包括中断服务程序。
5. 挂接中断。
以上是驱动的大致框架,开发人员可以根据需要,封装成自己的函数,以方便应用层的开发。驱动程序可以被编译成RTSS文件或RTDLL文件。若不希望驱动代码泄露,可以编译成RTDLL文件,只需提供函数接口即可。
有兴趣的人可以发邮件到product_gao@163.com,我们可进行进一步的沟通。
本文详细介绍了RTX驱动的实现方式,包括设备搜索、初始化、中断支持、功能封装等关键步骤,以及如何编译成RTSS或RTDLL文件。提供了一套完整的驱动开发流程,适用于PCI、ISA和PCI-E总线的板块卡。
1450

被折叠的 条评论
为什么被折叠?



