|
Abstract This paper describes mini-project I2CLIB. I2C is a low-bandwidth two-wire serial bus for inter-integrated circuit communication, abbreviated I2C or I2C standing for I-two-C or I-squared-C. See following website by I2C designer and manufacturer Philips Semiconductors. Outstanding problem: there are no software programming interfaces for high-level interaction with hardware via I2C bus. ‘High level’ here refers to programmer-level interfacing. Programmers need not concern their work with electrical and mechanical details of the bus. The bus is just a means of interaction between two devices and two pieces of software running on either side of the bus. The programmer just wants to design the interactions using high-level abstractions then attach the implementation corresponding to the actual hardware used. Of course, the implementation can easily change. This does not affect the higher-level abstractions. In short, you want to interact with devices via I2C but do not want to handle all the details. Your project budget can accommodate purchasing an I2C-to-serial adaptor or similar so that software can talk using a standard computer serial port or other standard interfacing hardware such as USB. However, the adaptor manufacturer provides software for Microsoft Windows but your project plans using an Open Source operating system like GNU/Linux. This is where I2CLIB steps in. The I2CLIB mini-project aims to fill the missing requirements:
Latter item starts with the iPort/AITM [2] product by www.mcc-us.com but not constrained to this implementation. Project will add other implementations in future. Target languages include but not constrained to: C++ and Ruby.
|