PROGRAMMING ADAU1787 WITH STM32
Hi iam trying to program my ADAU1787-eval using STM32L496-EVAL using I2C.My control register values are getting updated in the memory of ADAU1787 when i try to program but my sigmaDSP and fastDSP RAM registers LIKE 0X5000 and 0x2000 are not getting updated properly.Later i found my PLL control registers are not getting update properly. The PLL control registers are behaving intermittently.Iam using I2C SCLK at 100kHz.
hardware
ADAU1787
Integrated/Special Purpose A/D Converters
Audio CODECs
Hello veda16,
There can be a couple of reasons.
A customer reported a bug with exported system files where some register information is missing in the file which led to SigmaDSP boot failure. I will attach that thread here, please have a look and verify that your files have those registers.
It can be a communication issue between the two parts, please attach the hardware schematics.
veda16 said:
Later i found my PLL control registers are not getting update properly. The PLL control registers are behaving intermittently.Iam using I2C SCLK at 100kHz.
Please attach the schematics,and project, maybe we can find something in there.
Also note that, the IOVDD max of this DSP is 1.8V, if your MCU is outputting 3.3V then you will need a level translator.
Since you are using the Eval board, you will have the USBi. Have you tried programming the part via USBi (sigmastudio) and verified that the part is working? does programming via USBi seem fine?
Please get back to us with your observation.
Regards,
Harish
ADADU1787_ST.zip
Hi ,thanks for reply Harish..
--My standalone design of ADAU1787 had worked with USBi (sigmastudio)
--I am not using the sigma studio exported MCU file since it had bugs
in it i'am directly exporting the capture window data
since to avoid the conflict with VDDIO of 3.3V I Have upgraded my kit STM32L496G-DISCO which had a option of choosing my VDDIO as 1.71V or 3.3V but anyway i'am only using the external pull-up provided on ADAU1787 kit and disabling the the pul-lup provided in my STM32.
I observe the same kind of result even after programming with the working code provided in the previous zip.
Harishgowtham said:
here
--Once i tried of selbooting my ADAU1787 and try to read the corresponding (0x5000,0xC000,0xC001,0xC002) register values and was successful in it.
similarly when i try to program with the register dump with the MCU, i'am able to read the registers(0xC000,0xC001,0xC002)by commenting (0x5000 and 0x2000).
but where as by loading the entire register dump i read the value is zero and also iam not able to see any output at the DSP.
Hello veda16,
I am a little confused, You say it is working then you say it is not working so I am not sure exactly what is not working?
Please supply the hardware schematics!!
You mentioned voltage issues and pull up issues so the hardware may be a significant part of this not software.
This staement of yours is very confusing?
"similarly when i try to program with the register dump with the MCU, i'am able to read the registers(0xC000,0xC001,0xC002)by commenting (0x5000 and 0x2000).
but where as by loading the entire register dump i read the value is zero and also iam not able to see any output at the DSP."
What is meant when you say "by commenting"???
So is this working when you load it in via SigmaStudio "link/Compile/Download?
You also mentioned using the capture window. Do you capture that and create a file for your MCU to load in and that works?
Are you trying to selfboot?
Is the STM32 running at an IOVDD of 3.3V?
The screenshot you provided did show a 1.8V IOVDD.
So the lack of a response from either Harish or a couple of other engineers who know this part is probably due to all this confusion. So I am chiming in here to try to clear this up.
Again, a hardware schematic will be helpful and a description of how everything is interconnected.
Thanks,
Dave T
Hi Dave
My sincere apology for the situation .May be there are multiple problem statements and their solution & test cases in the query, the statements would have look bit confusing.
I have here by attached my error description and test cases in detail, I hope it may find helpful to you and your team.
So is this working when you load it in via SigmaStudio "link/
Compile/Download? ---YES
Do you capture that and create a file for your MCU to load in and that works?
--I tried to load the reg & data sequence that is present in capture window & also used the option that is present in sigma studio to export
export system files for microcontroller programming both the cases didn't work for me.
Are you trying to selfboot?
--NO
Is the STM32 running at an IOVDD of 3.3V?
--NO IOVDD of STM32 is 1.8V
"Again, a hardware schematic will be helpful and a description of
how everything is interconnected"
--The hardware schematic is already attached in the zip of previous post (schematic is present in data-sheet of stm32-disc),anyway i will export the pages and attach the same to avoid confusions.
--
ERROR_DETAILS.zip
hi
Thanks Harishgowtham and DaveThib for your support.
The previous ideology did'nt work for me.. i tried writing data (hex file)to my EPROM present on Eval through my STM32 via i2c and tried to self boot my Eval...to the suprise it started working.
Hello veda16,
Great! I have not had time to download and study your files. There must be some simple detail causing the issue like a missing wait period so I am glad that the selfboot option seems to be helping you move forward. Selfboot state machine in the part takes care of all the wait states required for things like PLL locking etc.
Thanks,
Dave T
Please log in to reply.