@@ -269,16 +269,26 @@ def create_camera_task(self, channel_key):
269
269
camera_trigger_out_line = self .configuration ["configuration" ]["microscopes" ][
270
270
self .microscope_name
271
271
]["daq" ]["camera_trigger_out_line" ]
272
- camera_high_time = 0.004
273
- sweep_time = self .sweep_times [channel_key ]
274
- camera_low_time = sweep_time - camera_high_time
275
- camera_delay = self .camera_delay
272
+
273
+ # apply waveform templates
274
+ camera_waveform_repeat_num = self .waveform_repeat_num * self .waveform_expand_num
275
+
276
+ if self .analog_outputs :
277
+ camera_high_time = 0.004
278
+ camera_low_time = self .sweep_times [channel_key ] - camera_high_time
279
+ elif camera_waveform_repeat_num == 1 :
280
+ # if no ao tasks, let the camera task occupy the full sweep time
281
+ camera_high_time = self .sweep_times [channel_key ] - self .camera_delay
282
+ camera_low_time = 0.004
283
+ else :
284
+ camera_high_time = self .sweep_times [channel_key ] - 0.004
285
+ camera_low_time = 0.004
276
286
277
287
self .camera_trigger_task .co_channels .add_co_pulse_chan_time (
278
288
camera_trigger_out_line ,
279
289
high_time = camera_high_time ,
280
290
low_time = camera_low_time ,
281
- initial_delay = camera_delay ,
291
+ initial_delay = self . camera_delay ,
282
292
)
283
293
284
294
# apply waveform templates
0 commit comments