Discussion:
How to generate CLOCK signal!!!
(too old to reply)
swami1
2006-12-18 15:10:12 UTC
Permalink
hi! Erik,
Thanks, You have solved my problem.
I need again your help. I am making one test system .I am new in this kind of programming.  Few lines of DIO are connected to Decoder which works according to DIO o/p. can you help me how to interface DIO and Decorder through software.
Thanks
 
 
swami1
2006-12-20 22:10:09 UTC
Permalink
Thanks fro your reply.
 
Actually, what I have to do, I have DIO. Which is connected to Analog MUX. So after passing data bit by bit Shifting, which will select appropriate lines of the MUX. 4 bits are required for selecting any lines out of 8 lines of one IC. Than after shifting the bits for selecting another inputs of another IC. Total 17 ICs. connected serially so 136 inputs and needs 68 bits for finishing one cycle.
 
Thanks
 
 
swami1
2006-12-22 15:40:11 UTC
Permalink
Hi!Yardow,
Thanks for your reply.
 
I have to shift 20 bits through DIO. Each 4 bits select one line of Multiplexer. Total 5 lC, connected in series. We can send one bit at a time when clock is high. so each 4 lines makes truth table and select one line at a time of MUX.
e.g. If I have to select INP0 line of MUX1 that I will have to shift 20 bits and make pattern of 1000 0000 0000 0000 0000 so it wil select MUX 1 and Line 0 (INP0). If, I have to select INP9 lines than pattern should be 0000 1001 0000 0000 0000 of MUX2.
4 bits select 7 lines of each IC (Meance INP0 to INP7) like that.
how to  send bit pattern so i can select each line at a time.
 
Thanks
Erik J
2006-12-27 17:10:10 UTC
Permalink
Hey swami, If you want to output a bit on each clock high, then you are going to want to do correlated DIO, but I am a little confused by your pattern logic.You say that 1000 0000 0000 0000 0000 is MUX 1 and Line 0 (INP0).  Does this imply that 1000 = Line 0?You also say that 0000 1001 0000 0000 0000 is MUX 2 and Line 9 (INP9).  I take this to mean that 1001 = Line 9.  1000 = Line 0 and 1001= Line 9 does not make sense.I can write example that allows you to select the MUX # and Line # and will return according to the following logic:MUX 1, Line 1: 1000 0000 0000 0000 0000
MUX 2, Line 9: 0000 1001 0000 0000 0000Can you provide further examples to help clarify what logic you need?Thank you,Erik J.National Instruments
swami1
2006-12-27 19:40:15 UTC
Permalink
Hi! Erik,
thanks for ur reply.
As I told you, 5 Mux IC connected Serially. For Selecting One IC I need 4 bits. That 4 bits make truth table and select INP0 - INP7. for selecting any input of those 5 IC I need 20 bits which are shifting one by one. If I talk abt only first MUX and 4 bits the pattern should be, 1000 - INP0, 1001-INP1......1111-INP7. like that. All five IC connected serially, we can select only one input at a time. If i want to select INP0, I have to shift 20 bits and pattern should be 1000 0000 0000 0000 0000. It will select only INP0 and gives the analog voltage of INP0. like that I have to measure INP0 - INP39.
second example, If I want to select INP8, than line 0 of second mux- so pattern should be 0000 1000 0000 0000 0000.
"1" shows Enable.  for INP17, line 1 of MUX3, so pattern should be 0000 0000 1001 0000 0000.
For INP 39, line 7 of MUX 5, so pattern should be 0000 0000 0000 0000 1111.
This works automatically one by one and select each line and write the status of each line.
thanks
Erik J
2006-12-28 16:10:09 UTC
Permalink
Hi swami, Thank you for the clarification, I understand now!  I have written a small example that executes the bit logic that you demonstrated here in LabVIEW.  I believe this example is a good starting point for you, I hope it helps!Regards,Erik J.


mux_selector.vi:
http://forums.ni.com/attachments/ni/70/6090/1/mux_selector.vi

Continue reading on narkive:
Loading...