ΣSigmaStudio Ask AI Русский Log in

adau 1452 index selectable mulitplexer not working?

SigmaDSP & SigmaStudio paular Aug 13, 2020 00:00 14 replies Original on forum ↗
Subscribe
paular Question
Aug 13, 2020 00:00

Hi Guys,

I want to select different filter settings with an external push button connected to uC connected to DSP GPIO and use chimes to indicate which program was selected.. The attached works like a charm as long as I have 3 channels on the Mux.

But this will always sound the chimes. Adding 3 more channels which stream without the chimes enable selecting the channel without the chimes by selecting another index. But now it is like the Mux index selection no longer functions. The chime changes into a very short bip sound on one channel, it connects channel 4 when it should connect channel 1. very strange.

The short bip already appears when I add only 1 channel to the Mux (3 to 4).

Any suggestions? Attached are the schematic with 3 and 6 channel mux and the pulsecounter.

Thanks for your support as always

Paul

tone3.PNG
tone3.PNG
tone6.PNG
tone6.PNG
pulsecount.PNG
pulsecount.PNG
ADIApproved Reply
Aug 13, 2020 00:00

Hi Paul,

Please refer to this post, and let me know if it answers your questions. It details how to use the index selectable filter and there is some info on the chime there too.

https://ez.analog.com/dsp/sigmadsp/f/q-a/166939/lookup-filter-index

Thanks,

Joshua

paular Reply
Aug 13, 2020 00:00

Hi Joshua,

That was an earlier conversation between us where you suggested the pulse widht detector. But it was more reliable to use a pulse counter. We did not discuss the MUX though?

paul.

paular Reply
Aug 13, 2020 00:00

What is the output format of the Hold and what does the Mux expect?

paular Reply
Aug 13, 2020 00:00

Looks like it is 32.0 for both, so the problem is elsewhere I think?

ADIApproved Reply
Aug 13, 2020 00:00

You're right.

Can you zip up your project and attach it here? I will take a look later today.

Thanks,

Joshua

paular Reply
Aug 13, 2020 00:00

thanks, how can I attach a zip file?

ADIApproved Reply
Aug 13, 2020 00:00

You can either select Insert -> image/video/file

Or, drag the zip file into the editor window.

pastedimage1597336119522v1.png
pastedimage1597336119522v1.png
paular Reply
Aug 13, 2020 00:00

ok, it looked like it only took the image. Let me know if this works?

Mux.zip

Mux.zip31.5 KB
ADIApproved Reply
Aug 13, 2020 00:00

The Value Hold works like this...

The signal on the green pin passes through to the output UNLESS the orange pin is 0. When the orange pin is 0, the value from the green pin is frozen. So it's not exactly a 32.0 input; the hold is either On or Off.

The mux expects a 32.0 integer value to specify the selection.

ADIApproved Reply
Aug 13, 2020 00:00

Thanks, I can open it.

I'm having some trouble deciphering exactly what you are trying to do in those feedback loops. What are the Timers for?
Can you explain the GPIO timing you use on the input?

paular Reply
Aug 13, 2020 00:00

The GPIO receives pulses with 1ms high, 1ms low etc and I use 1 pulse for index one, 2 pulses for index 2 etc.

So in order to make sure pulsecounter only counts 1 pulse and not 48 (48kHz sample f) for a 1ms long pulse I use a feedback loop to only count the edges basically.

The loop in the bottom is to set a total time during which pulse counter counts, set by the timer.

Then there is also a timer loop above to make sure the hold holds the signal just before the pulse counter resets.

And then all above is a timer to set the total chime time.

You can probably do this more elegant then I, but it works :-) At least for 3 inputs mux. Just reduce the algo in the mux to three and try and no problem. Problem comes when adding channels to the mux.

Hope it is more clear now

Paul

paular Reply
Aug 13, 2020 00:00
pulsecount.jpg
pulsecount.jpg
paular Reply
Aug 13, 2020 00:00
tone6.jpg
tone6.jpg
paular Reply
Aug 18, 2020 00:00

Hi Joshua, I changed to the toggle and that works. new problem though, I will post seperately.