Test and Measurement Forum

Is runBlock a blocking call?

Post general discussions on using our drivers to write your own software here

Is runBlock a blocking call?

Postby Jansen » Tue Sep 08, 2015 1:54 pm

Hi,
I'm writing a software which manages two devices. A remote board and a picoscope (6402B).

When starting a capture the software sets up the scope and sends a command to the board, which then sets a pin to high level as a trigger.

Sometimes it happens that the scope seems to miss the trigger signal and I'm currently investigating why. One of my thoughts is, that the scope wasn't yet ready to capture.
I'm wondering if the call to ps6000RunBlock blocks until the scope is ready or if i have to wait some time before activating the board?
The documentation says that the scope needs up to 50ms to be ready when using the normal block mode.
Jansen
Newbie
 
Posts: 0
Joined: Tue Jun 17, 2014 2:56 pm

Re: Is runBlock a blocking call?

Postby Hitesh » Wed Sep 09, 2015 1:30 pm

Hi Jansen,

The ps6000RunBlock function uses a callback to indicate when the device has completed collection of data (or alternatively poll the ps6000IsReady function), so it is possible to execute other commands after calling ps6000RunBlock (although the signal generator cannot be started while waiting for a trigger).

It can take a few milliseconds to setup the device for data collection so you may wish to incorporate a small delay before instructing the remote board to set the pin to a high level.

I hope this helps.
Hitesh

Technical Specialist
Pico Technology
Hitesh
Site Admin
Site Admin
 
Posts: 2058
Joined: Tue May 31, 2011 3:43 pm
Location: St. Neots, Cambridgeshire

Re: Is runBlock a blocking call?

Postby Jansen » Wed Sep 09, 2015 3:18 pm

Hi Hitesh,

thanks for the fast response. I'm already using the callback function.

Hitesh wrote:It can take a few milliseconds to setup the device for data collection so you may wish to incorporate a small delay before instructing the remote board to set the pin to a high level.

I hope this helps.


Yes, this helps. I've added a 50ms delay after calling runBlock and now every trigger gets captured! :)
Jansen
Newbie
 
Posts: 0
Joined: Tue Jun 17, 2014 2:56 pm


Return to General Software Discussions

Who is online

Users browsing this forum: No registered users and 0 guests