Kithara驱动合辑

硬件相关编程和驱动程序开发的函数库

Kithara驱动合辑为硬件相关编程和硬件组件的驱动开发提供所有重要的函数机制。

在普通编程环境下通过简单地调用API函数就可访问硬件组件,并且和经过很大努力开发出来的真正的硬件没什么不同。

根据已知的访问详细信息,通过I/O端口,物理内存和硬件中断处理程序,可以处理PC系统的每一个硬件组件。对于硬件无关编程,支持所有已知的总线类型:ISA,PCI,PCIe、PCMCIA,CardBus和ExpressCard,甚至是USB设备都可以编程。此外,这个综合性的产品通过UART端口可实现定时器,键盘操作和串行通信功能。

Kithara驱动合辑的极大普及度表明,许多用户特别赞赏它应用范围的广泛。虽然产品不提供实时功能,但和许多硬件产品配合使用就可实现实时。

一些特点

  • 直接访问PC的所有I/O寄存器(8位,16位和32位)
  • 直接访问物理内存
  • 中断编程的高性能机制
  • 与USB设备(通过USB1.1,USB2.0,USB 3.0和USB 3.1)通信功能
  • 包括通用的即插即用的WDM驱动
  • 包含一个与通信设备的Windows编程接口(ReadFile,WriteFile,DeviceIoControl)
  • 侦听系统事件功能,例如故障处理
  • PS/2键盘事件的处理 功能
  • 实时串口UART通信功能
  • 高度精确的系统时间和短延时记录
  • 运行时文件的无限分发
  • 支持C/C++和Delphi代码内核级执行

注意:该功能模块的各个组合,以及实时性是由 Kithara实时套件提供的。Kithara驱动合辑由以下几个模块组成,属于 Kithara实时套件的模块具有实时功能。

基本功能

基本/内核模块

  • 支持以下操作系统:Windows 7、8和10(32位和64位)、Server 2008 R2、Vista、Server 2003和XP、以及嵌入式版本
  • 支持PIC和APIC硬件、多处理器的PC、超线程、多内核等。
  • 功能为:打开驱动程序、设备处理、版本信息、调试支持、系统信息
  • 应用程序线程、事件、回调、共享内存、数据和消息管道、快速互斥对象
  • 在内核级别实现实时代码
  • 实时内存管理、内存拷贝功能
  • 只与C/C++或Delphi连接
  • 包括通用的即插即用的WDM驱动器

更多信息 …

系统模块

  • 系统事件的截取,例如故障和内核级的系统崩溃(如防故障处理程序/“蓝屏处理程序”)

更多信息 …

硬件接口

IoPort模块

  • 访问PC应用程序或DLL的所有I / O寄存器
  • PCI配置数据和资源数据的测定

更多信息 …

内存模块

  • 访问外部物理内存(双端口RAM)
  • 提供用于外部硬件的PC存储器(DMA存储器)

更多信息 …

中断模块

  • 在应用程序或内核级别处理硬件中断
  • 使用操作系统机制进行中断处理
  • 通过使用PCI或PCIe硬件的实时模块处理中断

更多信息 …

数据通信

串行/ UART模块

  • 通过UART16550兼容硬件上的特殊硬件驱动程序实时串行通信
  • 可以直接控制信号和握手线
  • 用于实时的所有接口事件的处理器

更多信息 …

设备模块

  • 包含通信设备的Windows编程接口(ReadFile,WriteFile,DeviceIoControl)
  • 任何可能的设备名称,例如虚拟“COM端口”

更多信息 …

USB驱动模块

  • 与USB设备进行通信,包括USB 3.1
  • 低速,全速,高速
  • 控制,批量,中断和等时传送
  • 响应所有即插即用和电源管理事件

更多信息 …

定时器

时钟模块

  • 在不同的时间和用户特定的格式监测系统时间,分辨率高达0.10微秒
  • 高精度的短的时间延迟
  • 系统时钟长期同步,用的EtherCAT分布式时钟(DC)和IEEE1588同步

更多信息 …

Timer Module

  • Simple timer in millisecond resolution based on Windows-mechanism (no real-time

平台

实时功能只能在内核级别上实现。为此,需要一种能够生成本地x86或x64机器码的编程语言,例如C/C++或者Delphi。当然, Kithara实时套件支持各种平台,例如.NET环境。解决方案是将时间关键型代码转换成一个DLL,该DLL将直接加载到内核级别的实时上下文中。Kithara实时套件可以提供所有这些功能。上述平台的即时可用程序框架是每个软件交付的一部分。


系统需求

Kithara RealTime Suite产品支持广泛的 硬件软件组合。如果你对系统支持有疑问, 请联系我们!

操作系统

该软件支持以下操作系统:

  • Windows 10 (32位和64位, 64位 only by using the dedicated mode)
  • Windows 8 and 8.1 (32位和64位,64位只能使用专用模块)
  • Windows Server 2012 (64位, only using by the dedicated mode)
  • Windows 7 (32位和64位) 和 Windows Embedded Standard 7
  • Windows Server 2008 R2 (64位)

硬件环境

该软件在以下硬件上运行:

  • CPU:AMD(Athlon)或Intel(Pentium 2),32 位或64位
  • 单核或多核,超线程,普通版的Kithara支持8个CPU逻辑核(通过Kithara拓展包,最多可以支持32个逻辑核,根据需要还可以支持更多的逻辑核)
  • 推荐的ACPI(Advanced Control and Power Interface),推荐的APIC(Advanced Programmable Interrupt Controller)。 某些功能需要ACPI-APIC
  • 使用千兆以太网卡,一般都支持Intel和RealTek两个品牌,其他的可以根据用户需要来支持

编译器

Kithara提供如下编程语言/编译器编写的程序框架(其他编程语言可以根据用户需要提供支持):

  • Visual Studio的20xx年的C++ MFC用户界面(提供 VS 2005/08/10/12/13/15工程文件)
  • C++ Builder(Embarcadero公司,原Borland公司)VCL用户界面
  • Delphi(Embarcadero公司,原Borland公司)VCL用户界面
  • Visual Studio的20XX C#WPF用户界面(实时代码采用C++ DLL,提供 VS 2005/08/10/12/13/15工程文件)

对于在实时上下文中执行代码,一般情况任何编译器,只要可以以DLL形式生成本地机器代码,那都可以使用。另外,不在实时层执行的Windows应用程序可以采用其他语言,如C#。


EtherCAT®EtherCAT Technology Group的一个注册商标。
CANopen®CAN in Automation e. V.的一个注册商标。
GigE Vision®Automated Imaging Association的一个注册商标。