Kithara Driver Collection
硬件相关编程和驱动程序开发的函数库
Kithara Driver Collection为硬件相关编程和硬件组件的驱动开发提供所有重要的函数机制。
在普通编程环境下通过简单地调用API函数就可访问硬件组件,并且和经过很大努力开发出来的真正的硬件没什么不同。
根据已知的访问详细信息,通过I/O端口,物理内存和硬件中断处理程序,可以处理PC系统的每一个硬件组件。对于硬件无关编程,支持所有已知的总线类型:ISA,PCI,PCIe、PCMCIA,CardBus和ExpressCard,甚至是USB设备都可以编程。此外,这个综合性的产品通过UART端口可实现定时器,键盘操作和串行通信功能。
Kithara Driver Collection的极大普及度表明,许多用户特别赞赏它应用范围的广泛。虽然产品不提供实时功能,但和许多硬件产品配合使用就可实现实时。
一些特点
-
直接访问PC的所有I/O寄存器(8位,16位和32位)
-
直接访问物理内存
-
中断编程的高性能机制
-
通过 USB 1.0、USB 1.1、USB 2.0、USB 3.0、USB 3.1、USB 3.2、USB4 与 USB 设备通信
-
包括通用的即插即用的WDM驱动
-
包含一个与通信设备的Windows编程接口(ReadFile,WriteFile,DeviceIoControl)
-
侦听系统事件功能,例如故障处理
-
PS/2键盘事件的处理 功能
-
实时串口UART通信功能
-
高度精确的系统时间和短延时记录
-
运行时文件的无限分发
-
支持C,C++和Delphi代码内核级执行
模块
Kithara Driver Collection由以下几个模块组成。如果模块是
Kithara RealTime Suite的一部分,那么只提供所上述实时功能。
基本功能
Base/Kernel Module
-
支持以下操作系统:Windows 10和11(32位和64位)、Windows Server 2016,2019 和 2022、每个都有专用模式
-
支持多核处理器,超线程和NUMA多处理器PC
-
功能为:打开驱动程序、在内核级别实现实时代码、实时内存管理、设备处理、版本信息、调试支持、系统信息
-
应用程序线程、事件、回调、共享内存、数据和消息管道、快速互斥对象
更多信息 …
System Module
-
系统事件的截取,例如故障和内核级的系统崩溃(如防故障处理程序/“蓝屏处理程序”)
更多信息 …
硬件接口
IoPort Module
-
访问PC应用程序或DLL的所有I / O寄存器
-
PCI配置数据和资源数据的测定
更多信息 …
Memory Module
-
访问外部物理内存(双端口RAM)
-
提供用于外部硬件的PC存储器(DMA存储器)
更多信息 …
Interrupt Module
-
在应用程序或内核级别处理硬件中断
-
使用操作系统机制进行中断处理
-
如果存在RealTime Tasking模块,实时中断也可以在PCI或PCIe硬件上实现
更多信息 …
数据通信
Serial/UART Module
-
通过UART16550兼容硬件上的特殊硬件驱动程序实时串行通信
-
可以直接控制信号和握手线
-
用于实时的所有接口事件的处理器
更多信息 …
Device Module
-
包含通信设备的Windows编程接口(ReadFile, WriteFile, DeviceIoControl)
-
任何可能的设备名称,例如虚拟COM端口
更多信息 …
USB Driver Module
-
与USB设备进行通信,包括USB 3.1
-
低速,全速,高速
-
控制,批量,中断和等时传送
-
响应所有即插即用和电源管理事件
更多信息 …
定时器
Timer Module
-
在不同的时间和用户特定的格式监测系统时间,分辨率高达0.1 μs
-
高精度的短的时间延迟
-
系统时钟的长期同步,与EtherCAT分布式时钟(DC)和IEEE 1588 同步。
-
创建简单的 Windows 计时器
更多信息 …
平台
实时功能只能在内核级别上实现。为此,需要一种能够生成本地机器码的编程语言,例如C, C++或者Delphi。当然,
Kithara实时套件支持各种平台,例如.NET环境。解决方案是将时间关键型代码转换成一个DLL,该DLL将直接加载到内核级别的实时上下文中。Kithara实时套件可以提供所有这些功能。上述平台的即时可用程序框架是每个软件交付的一部分。
系统需求
Kithara RealTime Suite产品支持广泛的 硬件软件组合。如果你对系统支持有疑问,
请联系我们!
操作系统
该软件支持以下操作系统:
-
Windows 10和11(32位和64位), dedicated mode
-
Windows Server 2016,2019 和 2022, dedicated mode
硬件环境
该软件在以下硬件上运行:
-
CPU:AMD(Athlon)或Intel(Pentium 2),32 位或64位
-
双核或多核;可选的超线程多核,目前多达48个逻辑CPU,可根据要求提供更高的性能
-
推荐的ACPI(Advanced Control and Power Interface),
-
PC必须能够支持PAE(页面地址扩展)
-
使用高达200 Gbit/s的千兆以太网,通常支持Intel和RealTek的控制器
编译器
Kithara提供如下编程语言/编译器编写的程序框架(其他编程语言可以根据用户需要提供支持):
-
Visual Studio的20xx年的C++ MFC用户界面(提供 VS 2010/12/13/15/17/19/22工程文件)
-
C++ Builder(Embarcadero公司,原Borland公司)VCL用户界面
-
Delphi(Embarcadero公司,原Borland公司)VCL用户界面
-
Visual Studio的20XX C#WPF用户界面(实时代码采用C++ DLL,提供 VS 2010/12/13/15/17/19/22工程文件)
对于在实时上下文中执行代码,一般情况下,任何能够以DLL形式生成本地机器代码的编译器都可以使用。另外,不在实时层执行的Windows应用程序可以采用其他语言,如C#。
EtherCAT®与Safety over EtherCAT®是由德国倍福自动化有限公司(
Beckhoff Automation GmbH )授权许可的注册商标和获得专利保护的技术。
CANopen®是
CAN in Automation e. V.的一个注册商标。
GigE Vision®是
Automated Imaging Association的一个注册商标。
USB3 Vision®是
Automated Imaging Association的一个注册商标。