Omega Vehicle Security OME-PIO-D56 manual DEMO3, COUNT=0

Models: OME-PIO-D56

1 53
Download 53 pages 55.1 Kb
Page 45
Image 45

4.4DEMO3

/* demo 3

: Count high pulse of PC0

*/

/*

(initial Low & active High)

*/

/* step 1

: run DEMO3.EXE

*/

/* --------------------------------------------------------------

 

*/

#include "PIO.H"

 

 

#define A1_8259

0x20

 

#define A2_8259

0xA0

 

#define EOI

0x20

 

WORD init_low();

WORD wBase,wIrq;

static void interrupt irq_service(); int COUNT,irqmask,now_int_state;

int main()

{

int i,j;

WORD wBoards,wRetVal,t1,t2,t3,t4,t5,t6;

WORD wSubVendor,wSubDevice,wSubAux,wSlotBus,wSlotDevice; char c;

clrscr();

 

 

/* step1 : find address-mapping of PIO/PISO cards

*/

.

 

 

.

/* select card_0 */

/* step2 : enable all D/I/O port

/* /RESET -> 1

*/

outportb(wBase,1);

*/

/* step3 : configure I/O direction

 

*/

outportb(wBase+0xcc,0x00);

/* set CON3 as D/I ports */

COUNT=0;

 

 

init_low();

 

 

printf("\n\n***** show the count of High_pulse *****\n");

 

for (;;)

 

 

{

 

 

gotoxy(1,8);

 

 

printf("\nCOUNT=%d",COUNT);

 

 

if (kbhit()!=0) break;

 

 

}

/* disable all interrupt */

outportb(wBase+5,0);

PIO_DriverClose();

 

 

}

 

 

/* Use PC0 as external interrupt signal

 

*/

WORD init_low()

 

 

{

 

 

disable();

/* disable all interrupt */

outportb(wBase+5,0);

if (wIrq<8)

 

 

{

 

 

OME-PIO-D56/OME-PIO-D24 User Manual (Ver.2.1, Oct/2003)

---- 43

Page 45
Image 45
Omega Vehicle Security OME-PIO-D56 manual DEMO3, COUNT=0