05-04-2022 09:38 PM
Hi All! I am fairly new to LabView but wanted to create a DTMF encoder. Using the buttons in the VI, pressing each button will generate a waveform that has its high and low tone added together. However I want to be able to add multiple signals together. For example pressing 1 then 2 would produce a waveform graph with the added frequencies for "1" and the frequencies for "2" next to each other. This is depicted in the LVM Waveform graph on the left side of the front panel.
Any help for this beginner would be great.
05-05-2022 10:36 AM
@JimmyT1324 wrote:
... However I want to be able to add multiple signals together. For example pressing 1 then 2 would produce a waveform graph with the added frequencies for "1" and the frequencies for "2" next to each other. This is depicted in the LVM Waveform graph on the left side of the front panel.
'add' vs 'next to each other' ?
If a user presses one key, they get both tones associated with that number added together. If a user presses a sequence of numbers, you want to append the waveforms for each button push, right?
Try 'Append Signals'
You can store the appended signal in a shift register and append the signal from the latest button push.
P.S. add "stop" value change event case to your event structure.
05-05-2022 12:31 PM
I haven't tested your solution yet but yes appending the signals is what I want. Do you mind telling me what is serving as the initial input to the shift register, I don't think I've seen that block before?
Thanks!
05-05-2022 03:50 PM
The input to the shift register is an empty constant created from the Added Sine Waves indicator terminal. It shows you the underlying datatype for the dynamic data type (DDT) which is the dark blue wire output from the Express VIs.
05-05-2022 04:32 PM
Is there any way you can attach a snippet of your screenshot? If not that's okay. Whenever I try and create a constant from the "added sine waves" terminal it's just a double numeric constant.
05-05-2022 04:56 PM
try creating a copy of Added Sine Waves indicator, and then change your copy to a constant.