eCosCentric Ltd. has contributed the generic I2C bus infrastructure from its eCosPro product line for inclusion within the public eCos project.
According to Alex Schuilenburg, Managing Director at eCosCentric, support for the I2C bus, a two-wire interface originally conceived by Philips Semiconductor, was created as part of eCosCentric's ongoing development programme, and is incorporated into custom and off-the-shelf eCosPro Developer's Kits.
The I2C package includes an abstraction layer to enable eCos application developers to make use of devices attached to the bus, without needing to concern themselves with the implementation details of the bus.
Typical devices attached via the I2C bus include real-time clocks, serial EEPROMS, smart-cards and infrared controllers. The package incorporates support for both generic "bit-banging" I2C drivers and dedicated I2C hardware drivers.
"The generic implementation supplies all of the timing and protocol handling for bit-banging mode," said Schuilenburg, "and requires a minimal amount of platform-specific code to be written for GPIO line manipulation."
By comparison, although traditional dedicated hardware drivers reduce processor loading through their use of hardware specific interrupt driven I/O and DMA modes, they can be more complex to write.
The contribution includes detailed documentation with the source code, specifying how I2C device drivers should be written, and is packaged using the Component Description Language.
eCosPro is a stable, fully tested and supported version of the eCos open source real-time operating system and RedBoot bootstrap firmware. The eCosPro Developer's Kit is a distribution of eCosPro which includes prebuilt eCos host tools and compiler toolchains, full documentation, an Eclipse-based integrated development environment to streamline eCos application development and a
libstdc++ implementation for selected architectures.
+44 1223 245571