PA1012 wrote: I have the DDK for 6602 counter card in which they have defined registers only for 4 channels. could you please provide me DDK for 8 channels? |
The DDK for 4 channel devices also works with devices that have 8 channels.
The 6602 device has a second TIO ASIC, and it uses a higher offset [1]. If you want to use the counters on the second ASIC, create a tTIO object with the corresponding offset. The register names are the same, so the examples work with both ASICs.
void test(iBus *bus)
{
const int TIO0_offset = 0x0;
const int TIO1_offset = 0x800;
tAddressSpace Bar1 = bus->createAddressSpace(kPCI_BAR1);
tTIO *TIO0 = new tTIO(Bar1 + TIO0_offset);
tTIO *TIO1 = new tTIO(Bar1 + TIO1_offset);
/* Use TIO0 and TIO1 for counter operations */
delete TIO1;
delete TIO0;
bus->destroyAddressSpace(Bar1);
}
[1] NI 660X Register-Level Programmer Manual :: page 11, page 35
http://digital.ni.com/manuals.nsf/websearch/4CE1C778F442B01386256C870060F9F3
Joe FriedchickenNI Configuration Based Software |
---|
Get with your fellow OS users [ Linux ] [ macOS ] | Principal Software Engineer :: Configuration Based Software Senior Software Engineer :: Multifunction Instruments Applications Group (until May 2018) Software Engineer :: Measurements RLP Group (until Mar 2014) Applications Engineer :: High Speed Product Group (until Sep 2008) |