I´ve got a diagram-program which works with the card dio-6533. With this I can write and read a bit to the card. Now I´ve to change the card to DIO-96 and the programm doesn´t work. First it writes a signal to the one cable connector (with 50 pins)than to the ohter cable connector (with 50 pins). What can I do to make the programm correct?
The problem is that Labview is new for me. I´ve taken a working programm to write. It has got a DIO Port Write.vi. Do you mean this by perform a Port Write? What is a line mask. I´ve never heard it. The ports I´ve checked, they are ok.
I don't know what it is (maybe I'm stupid ??) but I find NI's digital functions a monumental pain in the t*ts to work with for several reasons;
1) for simple devices such as the pci-6503 you can configure individual channels to READ individual bits with no problem (assuming you set the 'read' VI's port width to 1)- try and configure individual channels to WRITE individual bits and you have a problem (basically all of the other bits on that port get set to 'zero' when you write the bit - even when you write a value other than zero to the iteration terminal, and even with the port width set to 1!!) in other words 'read' seems to work fine on a bit-by-bit basis but 'write' only seems to work on a port basis
2) several of NI's card do not give you the optio n to set the startup condition of the digital lines - they deafult to 'high' meaning you have to switch a 0V input to them and then invert the value to get a high reading (when a switch makes normally you expect a 'high' signal ??)
3) you can only have bits and ports configured as read or write - even such 'low end' board such as Arcom's PCIB-40 allows you to set a bit value and then read it back!!!
Errrmm ... starting to run out or complaints here (well it is nearly 1:00 AM on Saturday morning 🙂
If anyone can point out something that I'm doing very wrong here then I'd love to hear, otherwise I think NI should give some consideration to the basic functionality of their low-end digital stuff.
Port Write allows one to write to a particular bit or a set of bits with Line mask.
i.e if your are writing (set) to Bit 0 of a port
Line pattern = x1 Line mask=x1
likewise for reset the bit
Line pattern = x0 Line mask =x1
And, with Port write, it eliminates the problem of having the entire port reset. Line mask is allowing particular bit(s) to be changed leaving the rest untouched.
In conlcusion, NI's DIO is still doing well. Read the help context, get helps from NI FAEs.
my mistake - I was using ''Write to Digital Port.vi' from the Digital /O palette, didn't think think to look in the 'Advance Digital I/O' palette - appologies to NI. Now it all makes sense I can use named channels as well - makes my vi's much easier to read.