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

Using one rotary to control a couple of values in ADAU 1445

SigmaDSP & SigmaStudio MarkusS Jun 8, 2010 00:00 4 replies Original on forum ↗
Subscribe
MarkusS Question
Jun 8, 2010 00:00

Hi,

I'm new in using Sigma Studio and Sigma DSP products. Here is my question I'd like to control a couple of functions like a index selectable Filters and something like that with only one rotary and switch between the functions with buttons. Is there a possibility to have a demultiplexer for logic signals. Thanks in advance.

Markus Schmidt

bagitom Reply
Jun 8, 2010 00:00

Hello

I've a solution, but it has a known issue, I/you/we should solve in order to have full functionality.

Please find attached my design file. It has 3 inputs. GPIO1 and GPIO2 are attached to the rotary encoder at HW side. GPIO3 is attached to a pushbutton (I have a rot.enc. with a built-in pushbutton.) If you push and hold the button, you can rotate the rotary and change between the functions. If you relase the pushbutton, you can use the rotary encoder for that partial task, you've selected just before.

If you have LEDs on GPIO8-11, you can see what position you are.

Let's begin from the inputs:

You have GPIO1-2, these signals are coming from rotary enc. The main component is DMX2. This is for changing the functions, you are able to controll with the rotary. You can see, the GPIO1-2 are connected to the DMX2's input. On the output side you can connect anything you want to controll, in this sketch there is a rotaryVolumeControll on the first output pair. You have 4 output pairs, but you can have more of course if you want.

But how to select between functions? For that reason is GPIO3 connected. The state machine is only because I connected phisicaly the pushputton as a zero active button. This is only a software solution for a PCB design mistake...

So if the pushbutton is active(that means it is in GPIO3 is in zero state) and only then, the rotary encoder is connected to the UpDown1 and it changes it's value. The actual value can be seen on the LEDs. And because the output of the state machine is connected to the DMX2 as well, the signal path of GPIO1-2 is also changed, but only then, when pushbutton is pushed and hold.

OK.... what about the known issue?

If you push the button and turn the rotary encoder then you make a change in that component's input wich is controlled with the rotary controller, just before DMX2 is stepped. So... if you have two volume controll connected to DMX2 0-1 and 2-3 output pairs, and you set up a volume level with the first volume controller, and after that you change to another volume controller(with pushing the button and turning the rotary), then with the turning of the rotary encoder you steps one row in the table of the first volume controller, and only with the next step of the rotary you change the signal flow for GPIO1-2 so there is no more chance to step more rows at the table of the first volume controller, but if you relase the pushbutton you can controll the second volume controller...

Oh my english is not enough to explain it exactly, but I hope you can understand...

The quick&dirty solution: you can begin your volume controll tables with two zeros on the first 2 row. This issue is the most disturbing when you want to mute the first volume controll and then switch to the other. You can solve this problem whith the 2 zeros in the first.

Tamas

MarkusS Reply
Jun 9, 2010 00:00

Thank you Tamas,

I was just wondering that the Inputs wich are specified for Audiosignals in the DMX could be used for logic signals.

But it seems to be a good method. And if I change the state machine for a up down button modul with a second button the know problems should be gone. I will check it if I have completed my PCB.

thanks

Markus

ADIApproved Reply
Jun 9, 2010 00:00

Hi Tamas,

Thanks for helping out with this question!

Hi Markus,

I was just wondering that the Inputs wich are specified for Audiosignals in the DMX could be used for logic signals.

Yes. A "wire" in SigmaStudio can carry any signal, audio or logic. You just have to make sure that the wire connects two cell "pins" that use the same number format for signal processing. Most logic signals are in 28.0 format, and most audio signals are in 5.23 format. Try to make sure that your source and sink pins are expecting data in the same format. Of course, with a few extra cells, it's possible to convert between the two formats without too much trouble.

Please read AN-951 Using Hardware Controls with SigmaDSP GPIO Pins for more details about logic and audio number formats, as well as how they can be used and converted in SigmaDSP.

EZAdministrator Reply
Apr 29, 2019 00:00

This question has been closed by the EZ team and is assumed answered.