I am looking for a node to generate an 80kHz signal (rectangular). “clock” (via flip-flop) and “waves” give a maximum of 500Hz (checked on an oscilloscope). The “tone” node gives a maximum of about 50 kHz. Are there other options?
Use the square wave node for the rectangular signal.
You may need to use interrupts, or perhaps even additional hardware to get such a high frequency. Arduino boards have hard limits on how quickly they can process data. The Micro, UNO, and Mega boards run at 16Mhz. Other models can have faster AVR chips allowing them to process higher frequencies (like the Due which runs at 84Mhz)
I’ve created a node that will generate rectangular waveforms up to 1MHz:
https://xod.io/libs/wayland/rectangular-waveform/
However, as the period of the waveform is specified in microseconds, it will not give you a frequency of exactly 80kHz. You’ll get quite close with a period or 12 or 13 microseconds:
1,000,000 / 12 = 83.3kHz
1,000,000 / 13 = 76.9kHz
This node uses Paul Stoffregen’s TimerOne library (https://github.com/PaulStoffregen/TimerOne). For a list of supported boards see https://www.pjrc.com/teensy/td_libs_TimerOne.html.
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.