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.       用DeviceSearch( )函数来搜索指定的设备,开发人员需要将device ID 和Vendor ID 指定。

2.       用DeviceInit( )函数来初始化搜索到的指定设备。

2.1    使能I/O。(如果在构建框架时选择了I/O映射)

2.2     将物理内存地址,寄存器地址进行映射,这杨,开发人员对设备寄存器的访问就如同对数组的访问一样简单。

2.3     根据需要,对设备寄存器进行相应的配置。

3.       用RtQueryPciMsiCapability( )函数来探测板卡是否支持MSI或MSI-X中断。

4.       根据中断类型来设置参数,包括IST和ISR。

5.       用RtAttachInterrupt( )函数来挂接中断。

以上是驱动的大致框架,开发人员可以根据需要,封装成自己的函数,以方便应用层的开发。驱动程序可以被编译成RTSS文件或RTDLL文件。若不希望驱动代码泄露,可以编译成RTDLL文件,只需提供函数接口即可。

有兴趣的人可以发邮件到product_gao@163.com,我们可进行进一步的沟通。公司网址:www.hxsolution.com