I bought a very old oscilloscope and although it works, I have my doubts about refreshing the screen (the electron beam fades away very slowly or is not showing up consistently across the screen).
I tested a bit with digitalWrite
and anlogWrite
, but this only sends either 0 or 5V out. Is there a way to make a preferably sine or triangle wave of 0 to 5V or -5 to +5V... I guess the Arduino should be capable of it, but so far I only get 0V or 5V out, nothing in between.
According to lesson 8 I should get a variable voltage of 0-5V on a pin with analogWrite
, but all I get is 0 or 5V.
For what I see:
- PWM gives with
analogWrite
a pulse signal of 0V or 5V with a duty cycle. - non PWM pins give either 0V or 5V (
analogWrite
of 0-127 appr: 0V,>127: 5V).
2 Answers 2
You can convert the PWM output of analogWrite()
into an (approximate) analog voltage by adding a low-pass filter. That is, a resistor in series followed by a capacitor to ground.
The values to choose depend on the frequency response you want.
- RC Filter Calculator (second section).
For anything more complex or accurate you will need a DAC. I often use the MCP4822 SPI DAC chip.
-
Thank you very much .... it worked, still the scope is very slow (meaning the old signals fade away very slowly), but it works.... guess my scope is 'kind of' usable now. I only needed to test my oscilloscope so a 'good' DAC is not needed (yet), But I put the component in my wish list for future use :-) ... I already ordered a wave generator IC (8038) for later possible use for my project.Michel Keijzers– Michel Keijzers2017年04月29日 23:47:52 +00:00Commented Apr 29, 2017 at 23:47
a few ways:
1) you can generate a square wave of a known frequency to test the time base of the scope;
2) you can generate an analog signal to test for the vertical. that can be done via pwm or dds.
-
Thanks ... a square wave is not really useful since it is not 'moving' vertically enough, so it's a bit hard to see if there is a problem with the scope ... I assume DDS is with the low pass filter as the accepted answer from Majenko.Michel Keijzers– Michel Keijzers2017年04月30日 23:59:23 +00:00Commented Apr 30, 2017 at 23:59