Authentic I2C Virtual Peripherals for SX-28 I2C    serial    bus    has    been    widely    used    for    over    a    decade    to    provide    economical
implementation
for board level interface between different devices.                                                                                                                                                                                      Software
implementations  of  I2C  Slave  protocol  would  not  be  an  easy  and  convenient  task  for
commonly used microcontrollers. However, this is not the case with SX-28 microcontroller.
The  advantage  of  fast  clock  (and  instructions)  rate  of  SX-28  microcontrollers  makes  it
possible  to  implement  the  I2C  with  very  little  burden  on  system  resources.  Authentic  I2C
Slave  VP  takes  only  1%  of  SX  CPU  resources  to  continuously  monitor  the  I2C  bus,  and
insures timely response to I2C bus Master requests.
I2CS.src (I2C Slave) virtual peripheral consists of four relatively independent subroutines: I2CS_Init subroutine provides correct configuration of  SX-28 I/O Ports. I2CS_Send_Byte – supports transmission of the data byte to the Master. I2CS_Get_Byte – supports reception of the data byte from the Master. I2CS_Send_Akcnowledgement – generates the ACK signal. Main I2CS module - I2CS_Execute executes the data transfer protocol based on 10-bit I2C
addressing mode. It is worth mentioning that I2CS subroutines may be combined to support
other modifications of I2C protocol.
I2CS allows Master directly access one RAM bank of the Slave SX microcontroller. Only one
byte of information can be transferred at a time.
I2CS supports bus clock rates up to 1.8 MHz, and will easily work with standard clock rate of
400 KHz.
Demo program I2CSdemo.src is provided as an example of implementation of I2CS VP. The
demo program supports simple read and write operations to one of the SX RAM banks using
RTCC interrupt to start the I2CS VP.
Extensive documentation and source files are included. Authentic I2CS by Authentic Engineering for Scenix Semiconductor Inc. © 1998