Control parameters in SigmaStudio without MCU
Hi all,
I have used modules in sigmastudio to configure the DSP in ADAU1761.
Now, I want to write C program to control the module parameters.
I know that the files generated by sigmastudio can be integrated into the main controller(MCU)
But , here, I don't want to use an external master controller to control the module parameters
I just want to write programs in certain programming software to control parameters directly , without MCU !!
( I know the script in sigmastudio can be used, but I don't want to use c# language or Visual Basic )
Then, what programming software can I use to write C ? Can I use the codeblock?
best regards,
Thank you
Audio Signal Processors
sigmastudio
SigmaDSP Audio Processors
adau1761
Hello,
You will need to communicate with the DSP in the same way as the USBi, the USB Interface we use.
The USBi is simply a USB to I2C/SPI converter. I suggest you look into the Aardvark or the Promira product. It is made to do this and it has some SDKs and drivers to be able to control it from custom software. They are in the business of supporting these sorts of applications and so they do a good job doing it. I think this will be the best solution. We do not have any support for using our interface from external programs.
Aardvark I2C/SPI Host Adapter - Total Phase
You will still need to export the "System Files" in SigmaStudio after you compile your program. If you watch the "Capture" Window you will see what SigmaStudio does to program and to then control the part. Part of the system files output are headers that you can use for your program to know where the controls reside in the DSP memory.
The ADAU1761 does not selfboot so you will have to boot up the part as well as control it. This is a little more complicated. I am not sure if the ADAU1701 would work for you or perhaps some other parts? If you supply some of the details of your application then perhaps we can help you make this project simpler.
Thanks,
Dave T
Dave Thib,
Thank you
In fact,I will eventually use the external controller to control the parameters in ADAU1761, and I do not intend to use other chips such as ADAU1701.
Since there is no other way, I would like to directly use the main controller to control the parameters.
I find an example in other discussions about how to program a microcontroller to emulate SigmaStudioto communicate with a SigmaDSP IC in a real production system.
https://ez.analog.com/servlet/JiveServlet/download/20567-1-5355/ADAU1761_Demo.zip
But the design is a little different from mine.
My design as shown below
I want to select different processing paths according to different input sampling rate ( 8kHz 16kHz 32kHz )
Can I achieve three different sampling rates in a project ??
When the input sampling rate is different , how do I change the sample rate of the chip and whole project ??
Thank you for your time,
qiongzhuang
Hello qiongzhuang,
In this part you cannot have several different sample rates going on inside a project. You will have to sense the sample rate with the external system controller and then change all the sample rate registers in the part so it is running at a different rate. This will probably require changing the PLL settings so that means shutting down the part then restarting the PLL.
The other issue is that if you happen to have cells that use the sample rate as part of the calculations then you will have problems. For instance, Signal generators will need to use the sample rate. So if it was compiled with a 48kHz sample rate and you are now running it at 24kHz, the output frequency will be half of what is expected. Generally, filters will scale so no issues there. Any timers will have issues.
So you may have to actually have different projects that are loaded each time the sample rate changes. This all depends on your application and what is in your project. You may be able to just adapt by changing the settings of a timer or an oscillator knowing that it will be different. So you probably could work around this to some extent.
Dave T
Please log in to reply.

