User manual

41 Appendix A
A.1.2 GPIO Example program-1
------------------------------------------------
/* Winbond 83627*/
#include <dos.h>
#include <conio.h>
#include <stdio.h>
#define SuperIO_A0 0x2E
#define SuperIO_A1 0x2F
#define DIO_A0 0x300
void main()
{
unsigned Temp;
unsigned ErrFlag;
ErrFlag=0;
clrscr();
/*---Winbond W83627--*/
outportb(SuperIO_A0, 0x87); /* External Function (Two Successive
writes of 0x87)*/
outportb(SuperIO_A0, 0x87); /* External Function (Two Successive
writes of 0x87)*/
/*--Global CR20--*/
outportb(SuperIO_A0, 0x20);
Temp-inportb(SuperIO_a1); /*Temp must be 0x52*/
/*--Global CR2A--*/
outportb(SuperIO_A0,0x2A);
Temp=inportb(SuperIO_A1);
Temp=Temp | 0xFC; /*set pin 121-128*/
outportb(SuperIO_A1, Temp);
/*--Configure Logical Device 7 GPIO Port1--*/
outportb(SuperIO_A0, 0x07);
outportb(SuperIO_A1,0x07);/*GP15 GP16 gp17*/
/*--CR30--*/