The setup order for the different synchronization options

Synchronization (Option)

 

 

Example for data writing

SpcSetData (hDrv[0], 0, 0, 1024, pData[0]);

SpcSetData (hDrv[1], 0, 0, 1024, pData[1]);

SpcSetData (hDrv[2], 0, 0, 1024, pData[2]);

(4) Define the board(s) for trigger master

At least one board must be set as the trigger master to get synchronization running. Every one of the synchronized boards can be programmed for beeing the trigger master device.

Register

Value

Direction

Description

 

SPC_COMMAND

0

r/w

Command register of the board

 

SPC_SYNCTRIGGERMASTER

101

Defines the according board as the triggermaster.

Example of board #2 set as trigger master

 

 

 

 

 

 

 

 

 

SpcSetParam (hDrv[2], SPC_COMMAND,

SPC_SYNCTRIGGERMASTER);

// Set board 2 to trigger master

 

 

 

 

 

 

(4a) Define synchronization OR trigger

If you use synchronization with the starhub option you can even set up more than one board as the trigger master. The boards will be com- bined by a logical OR and therefore the boards will be started if any of the trigger masters has detected a trigger event.

The synchronization OR-trigger is not available when using the cascading option. It is also not available with starhub option prior to hardware version V4. See the initialization section of this manual to find out how to determint the hardware version of the starhub.

If you set up the boards for the synchronization OR trigger all boards that are set as trigger master must be programmed to the same trigger- mode. If the boards are using different trigger modes this will result in a time shift between the boards. It is of course possible to set different edges or different trigger levels on the channels.

It is only possible to use the synchronization OR trigger if the board carrying the starhub piggy-back module is one of the boards that is programmed as a trigger master.

To find out what board is carrying the starhub piggy-back module you make use of the board’s feature registers as described in the chapter about initialising the board.

Example of setting up three boards to be trigger master

SpcSetParam (hDrv[0], SPC_COMMAND,

SPC_SYNCTRIGGERMASTER);

// Set board 0

to trigger master

SpcSetParam

(hDrv[1],

SPC_COMMAND,

SPC_SYNCTRIGGERMASTER);

// Set

board

1

to

trigger

master

SpcSetParam

(hDrv[2],

SPC_COMMAND,

SPC_SYNCTRIGGERMASTER);

// Set

board

2

to

trigger

master

(5) Define the remaining boards as trigger slaves

As you can set more than one board as the trigger master (starhub option only) you have to tell the driver additionally which of the boards are working as trigger slaves.

Register

Value

Direction

Description

SPC_COMMAND

0

r/w

Command register of the board

 

SPC_SYNCTRIGGERSLAVE

111

Defines the according board as the trigger slave.

Each of the synchronized boards must be set up either as a trigger master or as a trigger slave to get the synchronization option working correctly. Therefore it does not matter if you use the cascading or starhub option.

It is assumed that only one of the three boards (board 2 in this case) is set up as trigger master, as described in (3)

SpcSetParam

(hDrv[0],

SPC_COMMAND,

SPC_SYNCTRIGGERSLAVE);

//

Setting

all the other boards to

SpcSetParam

(hDrv[1],

SPC_COMMAND,

SPC_SYNCTRIGGERSLAVE);

//

trigger

slave is a must !

 

 

 

 

 

 

 

It sometimes might be necessary to exclude one or more boards from the synchronization trigger. An example for this solution is that one or more output boards are used for continuously generating test patterns, while one or more acqusition boards are triggering for test results or error conditions. Therefore it is possible to exclude a board from the triggerbus so that only a synchronization for clock is done and the ac- cording boards are just using the trigger events they have detected on their own.

Register

Value

Direction

Description

SPC_NOTRIGSYNC

200040

r/w

If activated the dedicated board will use its own trigger modes instead of the synchronization trigger.

 

 

 

 

92

MC.31xx Manual

Page 92
Image 92
Spectrum Brands MC.31XX manual Example for data writing, Define the boards for trigger master