Search found 97 matches

by markB
Wed Aug 08, 2007 12:55 pm
Forum: PicoScope 6 for Windows
Topic: Spectral Analysis in 6.0.10
Replies: 8
Views: 12048

Hello Jom I've looked into this this morning and I've increased the dynamic range of the spectrum view for the PS5000 series. You should now be able to see your noise floor and harmonics. We expext to be releasing 6.0.11 in the next week or two so you can look forward to the update then. Many thanks...
by markB
Tue Aug 07, 2007 7:08 am
Forum: C and C++
Topic: Bug in PS3000con.c driver
Replies: 1
Views: 4616

Your are quite correct. I've modified the example program so it should be fixed in future releases
by markB
Tue Aug 07, 2007 7:07 am
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

Zero corresponds to zero volts: 32767 and -32767 correspond to the minimum and maximum voltage on the currently selected range. It is therefore not hard to see that: Scaled Volts = 16bitAdcCount * RangeMax / 32767 eg. For an Adc Count of 3277 on the +/-10V range: Scaled Volts = 3277 * 10 / 32767 = 1V
by markB
Mon Aug 06, 2007 3:04 pm
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

The buffer is scaled in 16bit adc counts.

The best place to look is the ps3000con.c C example. This will give you examples of all the operating mode and value scaling.
by markB
Mon Aug 06, 2007 1:59 pm
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

Sorry, I didnt see your code before I posted the reply. You need test the return value of PICO.Ready() to see if the device is ready yet: PICO.RunBlock(NumOfSamples, timaBase, overSemple, out timeIndesposedMs); while(!PICO.Ready()) ; PICO.GetValues(bufferA, bufferB, bufferC, bufferD, out overflows ,...
by markB
Mon Aug 06, 2007 12:20 pm
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

I dont understand what your problem is.

Your buffers will not be modified by PS3000.dll unless there is a call to ps3000_get_values or ps3000_get_times_and_values. If you make a call to these functions without first calling run, then undefined behaviour will occur.
by markB
Fri Aug 03, 2007 1:29 pm
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

I cannot repeat your problem. If B is disabled, the buffer does not get modified after the call to GetValues.

In both of your code snippets, you enabled then disable ch A, ch B is never set. Could this be your problem?
by markB
Fri Aug 03, 2007 12:01 pm
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

Firstly, you need to check that you have only one channel enabled: SetChannel(PS3000.Channel.ChannelA, true, PS3000.Coupling.AC, PS3000.Range.Range1V); SetChannel(PS3000.Channel.ChannelB, false, PS3000.Coupling.AC, PS3000.Range.Range1V); Secondly, you have one too many zeros in your NumOfSamples, th...
by markB
Fri Aug 03, 2007 11:34 am
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

Which device do you have?

How many channels have you enabled?
by markB
Fri Aug 03, 2007 10:53 am
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

GetTimebase would return zero if one of your paramters is out of range. Possible reasons for this could be the number of samples is out of range or the timebase is not valid for the number of channels that you have enabled. Before calling GetTimebase, you should set up the channels using ps3000_set_...
by markB
Thu Aug 02, 2007 8:36 am
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

I've attached a class that wraps the dll for you. You now shouldnt need to worry about the marshalling. The wrapper class should be pretty self explainitory to use. This will modify your get_timebase code snippet to PS3000 p = new PS3000(); try { short timebase = 0; int no_of_samples = 1000; int tim...
by markB
Wed Aug 01, 2007 1:59 pm
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

You get the marshalling for free beacuse of the 'out'. The marshaller will spot that its an out parameter and automatically pass it to the unmanaged code as a pointer. You dont have to worry about the pointers at all.
by markB
Wed Aug 01, 2007 11:56 am
Forum: PicoScope 5
Topic: Can't make get_timebase() work from my C# class
Replies: 26
Views: 27928

At first glance, I see no reason why you code should not succeed but I cannot see your definition of ps3000_get_timebase and there could be a problem here. There should be no need to use fixed blocks in this instance. Use the following function definition. [DllImport("ps3000.dll")] private static ex...
by markB
Fri Jul 27, 2007 7:18 am
Forum: Serial Port Products
Topic: RH-02 humidity.
Replies: 5
Views: 10403

Humidity is returned as relative. The rolling average filter is performed of 16 cycles. It is not possible to get the last cycle time from the dll but is is possible to get the cycle number. Your application could detect any hardware errors that you describe if the cycle number has not incremented i...
by markB
Thu Jul 26, 2007 3:43 pm
Forum: VB and VBA (Excel, Access)
Topic: VB6 Sample Project
Replies: 10
Views: 17620

Hello Micheal I'm afraid I cant work out what you have done here. Firstly, I've no idea why are doing sum (value * 2500) / 65535 on every timer event. If you intend to convert to mv you should use the equation (5 * raw value/max ADC value) -2.5, as you say later on in your post. Your equation, (5 * ...