Omega 1002 User Manual Page 27

  • Download
  • Add to my manuals
  • Print
  • Page
    / 48
  • Table of contents
  • BOOKMARKS
  • Rated. / 5. Based on customer reviews
Page view 26
The sample program code is shown below:
/* Step1: Detect all OME-PCI-1002 card first */
wRetVal=P1002_DriverInit(&wBoards);
printf("There are %d OME-PCI-1002 Cards in this PC\n",wBoards);
/* Step2: save resource of all OME-PCI-1002 cards installed in this PC */
for (i=0; i<wBoards; i++)
{
P1002_GetConfigAddressSpace(i,&wBase,&wIrq,&wPLX);
printf("\nCard_%d: wBase=%x, wIrq=%x, wPLX=%x", i,wBase,wIrq,wPLX);
wConfigSpace[i][0]=wBaseAddress; /* save all resource of this card */
wConfigSpace[i][1]=wIrq; /* save all resource of this card */
wConfigSpace[i][2]=wPLX; /* save all resource of this card */
}
/* Step3: control the OME-PCI-1002 directly */
wBase=wConfigSpace[0][0]; /* get base address the card_0 */
outpw(wBase+0x20,wDoValue); /* control the D/O states of card_0 */
wDiValue=inpw(wBase+0x20); /* read the D/I states of card_0 */
wBase=wConfigSpace[1][0]; /* get base address of card_1 */
outpw(wBase+0x20,wDoValue); /* control the D/O states of card_1 */
wDiValue=inpw(wBase+0x20); /* read the D/I states of card_1 */
wPLX=wConfigSpace[2][2]; /* get PCI-interface base address of card-2 */
_outpd(wPLX+0x4c,0x41); /* channel_1, interrupt active_Low */
_outpd(wPLX+0x4c,0); /* disable all interrupts */
27
Page view 26
1 2 ... 22 23 24 25 26 27 28 29 30 31 32 ... 47 48

Comments to this Manuals

No comments