
Issue 1.4
18/06/98
Page 4
2.7.
Function Description
2.7.1.
setup
Function specification
int setup(int baseaddress, int ownaddress, int sclk, int statuswait)
Parameters are:
int baseaddress
This has no function and any value may be passed to setup, The
baseaddress has been retained to enable applications written for the ISA Bus
ICA90 to be ported with a minimum of changes.
int ownaddress
This is the I2C address to which the adapter is to respond in slave mode. This
forms the upper 7 bits of the 8 bit address, the lowest bit being the read(1) or
write(0) bit. This means that if ownaddress = 57H the card will respond to a
write address of AEH and a read address of AFH.
int sclk
This is the clock rate (bit rate for the I2C serial bus) when operating as a
master.
Value of sclk
Approximate SCL-KHz
0
90
1
45
2
11
3
1.5
int statuswait
This is a period of time (in micro seconds) to wait for the required bus status.
If this time-out expires the I2C functions will exit returning an error code.
Parameters returned
If the software fails to find the driver error code 9001H is returned otherwise
the status is returned.
Prerequisites
None.
Functional description This function characterises the PC and initialise adapter ready for I2C
transfers.
2.7.2.
sendaddress
Function specification
Int sendaddress(int slaveaddress, int setnack)
Parameters are:
int slaveaddress
This is the address to be accessed via the I2C, e.g. A0H.
int setnack
This controls whether the Parallel I2C Communications Adapter transmits an
Acknowledge down the I2C Bus on reception of a byte. The last byte received
during a transfer must not be acknowledged, in all other cases acknowledge
must be enabled. If setnack = 0 then acknowledge is enabled, if setnack = 1
then acknowledge is disabled. Therefore, if a read (odd numbered) address is
being sent AND only 1 Byte is to be read, setnack should be set to = 1; in all
other cases it must be clear = 0.
Parameters returned
int ErrCode
.
If the software fails to open a handle to the driver 0x9000 is returned.
If the transfer time out occurs error code 8001H is returned otherwise the
status is returned.
Prerequisites
The adapter must be configured for PC and application by running
setup
.
Functional description The function waits for the bus to be free. Then sends the slave address with
the appropriate acknowledge.