Omega OME-PIO-D144 manual Demo1 Use D/O of CN1

Page 37

4.2 Demo1: Use D/O of CN1

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

*/

/* demo 1 : D/O demo

*/

/* step 1 : connect a OME-DB-24C to CN1 of OME-PIO-D144

*/

/* step 2

: run DEMO1.EXE

*/

/* step 3

: check the LEDs of OME-DB-24C turn on sequentially

*/

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

*/

#include "PIO.H"

int main()

{

int i;

WORD wBoards;

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

clrscr();

PIO_DriverInit(&wBoards,0x80,0x01,0x00); /* for OME-PIO-D144 */ printf("\n(1) Threr are %d OME-PIO-D144 Cards in this PC",wBoards); if ( wBoards==0 )

{

putch(0x07); putch(0x07); putch(0x07);

printf("(1) There are no OME-PIO-D144 card in this PC !!!\n");

exit(0);

}

printf("\n(2) The Configuration Space -> wBase"); for(i=0; i<wBoards; i++)

{

PIO_GetConfigAddressSpace(i,&wBase,&wIrq,&wSubVendor,&wSubDevice, &wSubAux,&wSlotBus,&wSlotDevice);

printf("\nCard_%d:wBase=%x,wIrq=%x,subID=[%x,%x,%x],SlotID=[%x,%x]" ,i,wBase,wIrq,wSubVendor,wSubDevice,wSubAux,wSlotBus,wSlotDevice);

}

/* select card_0 */

PIO_GetConfigAddressSpace(0,&wBase,&wIrq,&wSubVendor,&wSubDevice, &wSubAux,&wSlotBus,&wSlotDevice);

printf("\n(3) *** Card_0 D/O test, wBase=%x ***",wBase);

/* step 1: make sure which ports

are D/O

ports

*/

/* in this demo --> only CN1_PA, CN1_PB,

CN1_PC are D/O port */

/* step 2: enable all D/I/O port

 

 

*/

outp(wBase,1);

/* enable D/I/O

 

*/

/* step 3: select the active port

 

 

*/

outp(wBase+0xc4,0);

/* select CN1_PA

 

*/

/* step 4: send initial-value to D/O latch register of

active port */

outp(wBase+0xc0,0);

/* set CN1_PA0 to CN1_PA7 to 0

*/

/* step 5: repeat for all D/O ports

*/

outp(wBase+0xc4,1);

/* select CN1_PB

*/

outp(wBase+0xc0,0);

/* set CN1_PB0 to CN1_PB7 to 0

*/

outp(wBase+0xc4,2);

/* select CN1_PC

*/

outp(wBase+0xc0,0);

/* set CN1_PC0 to CN1_PC7 to 0

*/

/* step 6: configure all

I/O port

*/

outp(wBase+0xc8,0x00);

/* CN1 to CN2 port are all output */

OME-PIO-D144 User’s Manual (Ver.2.1, Sep/2001)

----- 35

Image 37
Contents User’sGuide Mexico CanadaBenelux Czech RepublicOME-PIO-D144 Table of Contents Demo Program All signals are TTL compatible SpecificationsProduct Check List Board Layout Hardware configurationI/O Port Location Enable I/O OperationRefer to DEMO1.C for demo program O Architecture Interrupt Operation If INT signal is Low now Æ select the non-inverted inputMake sure the initial level is High or Low Refer to DEMO3.C for source code Refer to DEMO4.C for source code CN1PC0 CN1PC1 CN1PC2 CN1PC3 If PC1 is active OME-DB-37 Daughter BoardsOME-DN-37 & OME-DN-50 OME-DB-8125OME-ADP-37/PCI & OME-ADP-50/PCI OME-PIO-D144 OME-DB-24P/24PD Isolated Input BoardOME-DB-24P OME-DB-24PD OME-DB-24R/24RD Relay Board OME-DB-24PR OME-DB-24PR/24POR/24CCOM OME-DB-24PR Daughter Board Comparison Table VCC Pin AssignmentGND OME-PIO-D144 User’s Manual Ver.2.1, Sep/2001 Resource-allocated information How to Find the I/O AddressPIO/PISO identification information PC’s physical slot informationOME-PISO-P32C32 OME-PIO-821OME-PISO-P32A32 OME-PISO-P8R8PIODriverInit&wBoards, wSubVendor,wSubDevice,wSubAux PIODriverInitPIOGetConfigAddressSpace ShowPIOPISO Slot5 0x0A Slot6 0x08 Slot7 0x09 Slot8 0x07 Assignment of I/O AddressOME-PIO-D144 User’s Manual Ver.2.1, Sep/2001 RESET\ RESET\ Control RegisterI/O Address Map Address Read WriteAUX data Register AUX Control RegisterINT Mask Control Register CN1PC3 CN1PC2 CN1PC1 CN1PC0Interrupt Polarity Control Register Aux Status RegisterActive I/O Port Control Register Read/Write 8-bit data Register CN2PC CN2PB CN2PA CN1PC CN1PB CN1PA 9 I/O Selection Control Register CN4PC CN4PB CN4PA CN3PC CN3PB CN3PA CN6PC CN6PB CN6PA CN5PC CN5PB CN5PA\TC\LARGE\LIB\ \TC\LARGE\\TC\LARGE\DEMO?\ \TC\LARGE\LIB\PIO.HOME-PIO-D144.H Demo1 Use D/O of CN1 CN3 CN4 Demo2 Use D/O of CN1~CN6 PA/PB/PC COUNT=0 Demo3 Interrupt demo1Refer to Sec .5.1 for more information Demo4 Interrupt demo2 Refer to Sec .5.2 for more information Demo5 Interrupt demo3 CN1PC1 OME-PIO-D144 User’s Manual Ver.2.1, Sep/2001 Demo 6 Outport of CN1-CN6 OME-PIO-D144 User’s Manual Ver.2.1, Sep/2001 Demo10 Find Card Number OME-PIO-D144 User’s Manual Ver.2.1, Sep/2001 WARRANTY/DISCLAIMER Temperature