01-05-2010 12:52 PM
hi
I am using NI-5105 with Trigger at channel 7 , I and Q(phase) at chanel 1 and 2 respectively and now I want to configure another channel as a trigger such that one is Master triger and another is Slave triger.I will be gratefull if anyone help me.
regards zad
01-06-2010 11:21 AM
Hi Zad,
What do you mean when you say "master" and "slave" trigger? There are a number of input and output triggers that are available--the following diagram from the NI High Speed Digitizers Help should be helpful to visualize all of the signals that you may utillize on your 5105:
Red Arrows are Output Signals
Orange Arrows are transitions caused by hardware/software events
Black Arrows are transitions caused automatically by the device
Blue Arrows are transitions always caused by software events
If you could provide more information about what you need to do (a timing diagram would be extremely helpful) then I can be more specific--hopefully the state diagram will help you get started for now.
Best Regards,
01-11-2010 07:01 AM
Hi John
Actually i want to digitize a signal at 1MHz at sampling frequency of 3MHz by using example
of visual C++ MultiRecordFetchMoreThanAvailableMemor. Currently i am using chanel 0
and 1 for Data and channel 7 as trigger. Now i need another triger so that when pos edge
of one trigger occure then 2nd trigger starts.It means one trigger(slave) depends on another(Master).
or in simple what changes i made in the code of C++ example MultiRecordFetchMoreThanAvailableMemory
to get the 2nd trigger.I attached the example code.
01-11-2010 07:06 AM
Hi John
Actually i want to digitize a signal at 1MHz at sampling frequency of 3MHz by using example
of visual C++ MultiRecordFetchMoreThanAvailableMemor. Currently i am using chanel 0
and 1 for Data and channel 7 as trigger. Now i need another triger so that when pos edge
of one trigger occure then 2nd trigger starts.It means one trigger(slave) depends on another(Master).
or in simple what changes i made in the code of C++ example MultiRecordFetchMoreThanAvailableMemory
to get the 2nd trigger.I attached the example code.
Thanx for your kind help and waiting your reply
01-11-2010 08:53 AM
So it sounds like you're using channel 7 as an analog reference trigger. It sounds like you want to enable this trigger using another signal--if this is the case then there are 3 options (as shown in the above diagram):
Acquisition Arm Trigger
Arm Reference Trigger
Advance Trigger
You probably want to use the Arm Reference Trigger--this will prevent your Scope from triggering until it occurs for every record (the difference between the Arm Reference and Advance triggers is that pre-trigger samples are acquired while waiting for the Arm Reference Trigger).
To set the Arm Reference Trigger you can use the following function (for example):
niScope_SetAttributeViString (ViSession vi, "", NISCOPE_ATTR_ARM_REF_TRIG_SRC, NISCOPE_ATTR_ARM_REF_TRIG_SRCNISCOPE_VAL_PFI_0);
the first parameter is your instrument handle that is defined in niScope_init
For other sources for the Arm Reference Trigger you can refer to the NI-SCOPE Function Reference Help. This trigger is digital only so you need to have a TTL signal as an input.
I hope this is helpful, please let me know if you have any other questions.
Best Regards,
01-21-2010 12:48 AM
01-21-2010 09:32 AM
Hi zad,
Thanks for the diagram and clarification. In that case, I believe the best way for having the M-trig signal arm the S-trig signals is to use John's other option and configure it to be a Start (Acquisition Arm) Trigger. The only drawback to this method is that you need to make sure that between the time the M-trig signal occurs to the time the next S-trig signal occurs, you are satisfying the minimum pre-trigger sampling requirements that you have configured. Otherwise, the first S-trig signal after the M-trig signal will not be recognized and you will miss the record. Of course, there is always the possibility with asynchronous triggers that the two triggers will occur at almost the same time, in which case there is nothing much you can do beyond trying to take every single record (not using the M-trig) or somehow synchronizing the triggers.
Hope this helps!