
KTD-S0023-A Page 15 CPLD Interface
KTLX800/pITX Software Guide
5.2.2 Digital I/O Example
#include <stdio.h>
#include <dos.h>
#include <conio.h>
#define CPLD_BASE_ADDR 0xB00
#define GPIO_INPUT_OFFS 0x00
#define GPIO_OUTPUT_OFFS 0x02
#define GPIO_DIRECTION_OFFS 0x04
void RouteDigitalIO (unsigned int value)
{
outpw (CPLD_BASE_ADDR+GPIO_DIRECTION_OFFS, value);
}
void WriteDigitalIO (unsigned int value)
{
outpw (CPLD_BASE_ADDR+GPIO_OUTPUT_OFFS, value);
}
unsigned int ReadDigitalIO (void)
{
unsigned int value;
value = inpw (CPLD_BASE_ADDR+GPIO_INPUT_OFFS);
return value;
}
void main (void)
{
unsigned int val;
RouteDigitalIO (0xFFFF);
WriteDigitalIO (0xAA55);
val = ReadDigitalIO ();
printf ("\nInput value = %04X\n", val);
}
Comentarios a estos manuales