Discussion:
Synchronized I/O with DIO-32HS and DAQmx
(too old to reply)
jrjones
2006-06-12 19:40:11 UTC
Permalink
I am using LabVIEW 7.1.1 and a DIO-32HS w/ SCB-68 (connection reference label P/N 185754B-01).  I am trying to communicate with the Serial Control Interface of a custom ASIC.  I need to generate an internal clock for the data in & out of the chip (see attached timing diagram).  I have much LabVIEW experience, but am not a frequent user of I/O cards or DAQmx.  I'm unable to produce the desired results and the problems are related to having the external clock for the output available at the SCB terminals while also used as the clock for the input.
 
The attached VIs are two versions of the same basic code with slightly different setups.
The HW setup for ASIC SCI_2.vi only has a connection between P0.2 & P2.0 to loopback a signal for testing the code.
The HW setup for ASIC SCI_3.vi adds another connection between PFI 4 and PFI 5 intended to loopback the clock.
 
Thanks for any suggestions on how to correct my problem.
 
James
 
PS.  To run the VI, just delete the case with the missing VI, there is default data in the false case.


ASIC SCI_3.vi:
http://forums.ni.com/attachments/ni/70/5034/1/ASIC SCI_3.vi


ASIC SCI Timing.jpg:
http://forums.ni.com/attachments/ni/70/5034/2/ASIC SCI Timing.jpg


ASIC SCI_2.vi:
http://forums.ni.com/attachments/ni/70/5034/3/ASIC SCI_2.vi
McKala[DE]
2006-06-13 21:40:09 UTC
Permalink
Hello jrjones,

You'll want to put a DAQmx Wait Until Done VI between starting your
Task and Clearing it, this will wait for the generation to end before
clearing the task, otherwise it will clear immediately after
starting.  You might want to take a look at the example programs:
Handshaking Output Waveforms-8255 VI and Handshaking Input Waveforms or
the Cont Handshaking Input/Output -82550Nin-Buffered shipping examples
as you get started.

Post again if you have further questions!
Regards,
jrjones
2006-06-14 17:10:14 UTC
Permalink
Micaela,
The problem I have is NOT related to a need for a WAIT.  I can view the signals show on my graphs with an o-scope on the SCB-68 terminals.  The problem is related to creating a sample clock that is available at the terminals (to connect to my hardware) and used internally as the sample clock for the DAQmx Read function.  The two VIs show illustrate the problem, on one the clock is available externally and the other internally.  How can I make it work for both an external burst clock and an internal sample clock for the the read?
Thanks in advance for additional suggestions,
James
McKala[DE]
2006-06-19 19:10:10 UTC
Permalink
Hi James,

I read that wrong - I must have written that during an afternoon
lowl.  I think I see what you are asking now, with the burst mode
timing you have to configure both the Pause Trigger Polarity (Pause
When) level and the Ready for Transfer Event Active Level.  The
Pause Trigger pauses an ongoing acquisition or generation and the Ready
for Transfer Event signals that the device is ready for transfer (data
is on the lines or space is available in the device FIFO).  You
will also need to configure the Input Task Pause Trigger Source and the
DAQmx Ready for Transfer Event Output Terminal Source.  To
configure the Pause Trigger Source is configured through the DAQmx
Trigger Property Node >> More >> Pause >> Digital
Level >> Source and the Ready for Transfer Event is configured
through the DAQmx Export Signal >> Events >> Ready for
Transfer Event >> Output Terminal. 

I found an example of <a href="http://sine.ni.com/apps/we/niepd_web_display.display_epd4?p_guid=F64B35E9AFD96CF1E0340003BA7CCD71&amp;p_node=201193&amp;p_source=External" target="_blank">Bidirection Burst Mode I/O in DAQmx on two computers</a>,
while I know that you are not doing exactly this, I thought the code
showed how to configure the Trigger and Event sources and levels
clearly.&nbsp;

Let me know if you are still having trouble after setting the sources
and the levels of the Pause Trigger and the Ready for Transfer Event.

Regards,
jrjones
2006-06-26 14:40:13 UTC
Permalink
Problem Solved...
Just in case someone reads this thread in the future with a similar problem.&nbsp; I hate it when I find an old thread that matches my problem and the solution isn't shared.&nbsp; So here's my VI that solved my particular problem, maybe it will help someone else.
James
&nbsp;


653x Read-Write with Burst (Export Clock).vi:
http://forums.ni.com/attachments/ni/70/5094/1/653x Read-Write with Burst (Export Clock).vi
Loading...