05-28-2010 03:59 PM
How do I programmatically determine the PCI base address of a non-NI board?
05-30-2010 01:39 PM - edited 05-30-2010 01:40 PM
05-30-2010 04:33 PM
Thanks for your reply.
It is Windows XP, but will likely become Windows XP embedded.
PC/104+ form factor.
I wonder if anyone has done this (called Windows API functions OR a custom DLL) for LabVIEW already and is willing to post code?
05-31-2010 01:23 PM
Red Sox Fanatic wrote:Thanks for your reply.
It is Windows XP, but will likely become Windows XP embedded.
PC/104+ form factor.
I wonder if anyone has done this (called Windows API functions OR a custom DLL) for LabVIEW already and is willing to post code?
I'm sure it has been done and I'm equally sure nobody will post a complete ready made solution. If you want to do this the right way (TM) you will write a DLL in C/C++ and call that from LabVIEW. The SetupAPI is really not a good candidate to interface to through the Call Library node.
06-01-2010 10:27 AM
I think you can find it manually on the "driver details" page under windows. I believe this same information is stored in the drivers *.inf file. I have done work on PCI register level but i did not use the base address programmatically. I think i went through a procedure for creating a VISA driver for said device under max, which then enabled you to get a handle directly to the PCI device. From there you can read the base address and offset into the correct registers. Here is my original thread which may cover some of those details.
http://forums.ni.com/ni/board/message?board.id=170&message.id=300577#M300577
Craig
06-01-2010 10:31 AM