I am new to ARM Cortex 4 and to ADSP-CM403F. I worked with AVR stuff and was able using SD cards with SPI, AVR-GCC. I am working on a schematic for the 120pin ADSP-CM403F chip. To be able to code for MicroSD I will have to connect the right pins of the card to the CPU. Unfortunately I did not find an example yet to see if its possible using 4 data lines as SDIO offers. In the data sheet Rev. A november 2015 there are signals like SPI clock, SPI data 2, SPI data 3. I cannot see SPI data 0 or data 1.
Can anybody please give me a hint where to find an example how to add a MicroSD card (and also a QSPI flash, SRAM) to this chip including a simple C example code? Thank you very much !
I guess this is the same question: https://www.mikrocontroller.net/topic/478451 ?
Yes. Unfortunately they have not been able yet answering my question related to this ADSP chip with Cortex M4 and QuadSPI. May be only some people are interested in this chip at all.
So what would you do here?Leave this chip?Take another one with more support?Find another forum?
So why did you choose this particular chip?
Why is QSPI important?
Is Cortex-M4 important?
I wanted to use this chip because of the more precise 16bit AD converter in comparison to others. Also I wanted getting some experience with Cortex M4. There are other projects with Cortex M4 which seem to work well even for beginners to use like Adafruit or Teensy. I wanted to use 4 data lines for MicroSD like many others showed doing. Clearly also this ADSP chip should be able doing so according to description.
Matt007 said:I wanted to use 4 data lines for MicroSD
For that, you need an SDIO peripheral, not QSPI - don't you?
I am not so sure about that. STM uses the term SDIO. ADI does not use this term. In the ADI description I found the hint: "In quad mode data transmit the SPI_MISO, SPI_D2, and SPI_D3 signals are also outputs. In quad mode data receive, the SPI_MOSI, SPI_D2, and SPI_D3 signals are also inputs.There are signal names there like:SPI0_CLKSPI0_D2SPI0_D3SPI0_MISOSPI0_MOSISPI0_SEL1SPI0_SEL2SPI0_SEL3SPI0_SSDont you think this type of "quad mode" could be used here for MicroSD?
Again, none of this has anything to do with ARM - and nothing to do with the GNU Toolchain!
SDIO is the interface defined by the SD Card Association:
https://en.wikipedia.org/wiki/SD_card#SDIO_cards
It is not the same as, nor a synonym, for QSPI.
https://en.wikipedia.org/wiki/Serial_Peripheral_Interface#Intelligent_SPI_controllers
The reason that most low-cost dev boards use SPI is that it allows you to use the free, simplified SD-Card protocol.
In 4-bit mode, you need the full protocol - which requires a licence (which is, presumably, paid by the silicon manufacturer and included in the chip price).
"none of this has anything to do with ARM - and nothing to do with the GNU Toolchain!"Yes ! So this is off topic here. So where should I ask?ARM is only part of the ADI chip I want to use.The GNU toolchain is part I want to use for programming registers and so on. Without a program no function at all."In 4-bit mode, you need the full protocol - which requires a licence (which is, presumably, paid by the silicon manufacturer and included in the chip price)."seems to be that ADI is using that. I do not know the difference in operation between the solution that STM uses (SDIO) and SPI with 4 data lines. I assume its similar. I can try finding out.