Demo 1: Use D/Oof Cn1 - Omega OME-PIO-D144 Hardware Manual

Pci-bus digital i/o board
Table of Contents

Advertisement

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);
printf("\n(1) Threr are %d OME-PIO-D144 Cards in this PC",wBoards);
if ( wBoards==0 )
{
putch(0x07);
printf("(1) There are no OME-PIO-D144 card in this PC !!!\n");
exit(0);
}
printf("\n(2) The Configuration Space ->
for(i=0; i<wBoards; i++)
{
PIO_GetConfigAddressSpace(i,&wBase,&wIrq,&wSubVendor,&wSubDevice,
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,
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);
/* step 3: select the active port
outp(wBase+0xc4,0);
/* step 4: send initial-value to D/O latch register of active port */
outp(wBase+0xc0,0);
/* step 5: repeat for all D/O ports
outp(wBase+0xc4,1);
outp(wBase+0xc0,0);
outp(wBase+0xc4,2);
outp(wBase+0xc0,0);
/* step 6: configure all I/O port
outp(wBase+0xc8,0x00);
OME-PIO-D144 User's Manual (Ver.2.1, Sep/2001)
putch(0x07);
putch(0x07);
&wSubAux,&wSlotBus,&wSlotDevice);
&wSubAux,&wSlotBus,&wSlotDevice);
/* enable D/I/O
/* select CN1_PA
/* set CN1_PA0 to CN1_PA7 to 0 */
/* select CN1_PB
/* set CN1_PB0 to CN1_PB7 to 0 */
/* select CN1_PC
/* set CN1_PC0 to CN1_PC7 to 0 */
/* CN1 to CN2 port are all output */
/* for OME-PIO-D144 */
wBase");
*/
*/
*/
*/
*/
*/
*/
*/
*/
*/
*/
*/
*/
----- 35

Advertisement

Table of Contents
loading

Table of Contents