A weblog focused on interesting circuits, ideas, schematics and other information about microelectronics and microcontrollers.
Using SD/MMC cards with Atmel or Microchip
It is easy to interface a MMC (MultiMediaCard) with a Microchip PIC or with an AVR via the SPI bus.
This is a very handy data logging circuit with lots of memory for data storage. I2C RAM's or EEPROM's are hardly available at sizes bigger than 256kb, but this solution with a 64MB Flash MMC is not to beat in both cost effectiveness and storage volume! This version utilizes a PIC16F876, but it's easy to port the schematic and software to other PIC's.
The card is connected to the SPI pins of the PIC via simple resistor voltage dividers to transform the +5V high levels to about 3.3V used by the MMC.
Here is the version utilizes an ATmega16:
Basically a SD card is a MMC card. The commands are the same, the pins are the same, so you can easily replace the MMC with a SD card. The only change to make is the firmware and that change is only minor: Instead of checking the return value immediately after sending a command to the card we need to loop and check.