Pcf8574, Dig ital i /o i n ter face – Kontron pITX-SP User Manual
Page 25

KTD-S0003-C
Page 21
CPLD Interface
p
ITX-SP Software Guide
6.2.3
I2C with GPIOs Example
This example demonstrates the GPIO usage as an I2C bus.
V
DD
INT
A0
A1
A2
SCL
SDA
V
SS
P0
P1
P2
P3
P4
P5
P6
P7
PCF8574
GPIO0
GPIO4
GND
VCC
D
ig
ital I
/O
I
n
ter
face
N.C.
BIOS Setup settings (entry
Advanced/Onboard Device Configuration/GPIO Configuration):
GPIO
Pin
0
Tri-State
GPIO
Pin
4
Tri-State
Default
Output
State
High
#include
#include
#include
#define CPLD_BASE_ADDR
0xA80
#define GPIO_INPUT
0xA0
#define GPIO_OUTPUT
0xA1
#define I2C_CLOCK
0x10
#define I2C_DATA
0x01
#define I2C_DELAY_VAL
50
#define I2C_OK
0
#define I2C_ERR_NAK
1
#define TRUE
1
#define FALSE
0
#define DEVICE_PCF8574
0x40
int i2c_bits, i2c_error;
//*********************************************************
//* Sets clock line high
//*********************************************************
void SCL_High (void)
{
i2c_bits |= I2C_CLOCK;
outp (CPLD_BASE_ADDR+1, i2c_bits);
}
- CP3003-SA uEFI BIOS (72 pages)
- CP3003-SA (36 pages)
- CP3002 (38 pages)
- CP3002-RC uEFI (64 pages)
- CP-RIO3-05 (42 pages)
- CP3002-RC (30 pages)
- CP342 (52 pages)
- CP930 (46 pages)
- CP932 (52 pages)
- CP346 (72 pages)
- CP384 (66 pages)
- CP383 (74 pages)
- CP382 (58 pages)
- CP381 (60 pages)
- CP372 (64 pages)
- CP371 (60 pages)
- CP-RIO3-04S (38 pages)
- CP390 (36 pages)
- CPS3410 (9 pages)
- CPS3402 (9 pages)
- CPS3105 (9 pages)
- CPS3101 (9 pages)
- CPS3003-SA (19 pages)
- PB-SIO4 (34 pages)
- PB-SIO4A (34 pages)
- PB-DOUT8 (34 pages)
- VMOD-2 (82 pages)
- VSBC-32 (110 pages)
- VM42 (62 pages)
- Bootstrap Loader (24 pages)
- VMP1 with Netbootloader (120 pages)
- VMP1 (106 pages)
- NetBootLoader (86 pages)
- VMP2 (142 pages)
- VMP3 (154 pages)
- CP-RIO6-923 (32 pages)
- CP-RIO6-923-F (32 pages)
- CP-RIO6-001 (28 pages)
- CP-RIO6-001-HD-VGA (46 pages)
- CP-RIO6-M (20 pages)
- CP-RIO6-B (28 pages)
- CP6925 (42 pages)
- CP6002 uEFI BIOS (76 pages)
- CP6002 IPMI (40 pages)
- CP6002 (42 pages)