Reading an SD card with an ATMEGA168


Posted on Feb 6, 2014

The SD card can be talked to with three different transfer modes: 1-bit SD mode, 4-bit SD mode and SPI mode. According to Wikipedia, all cards must support all three modes except for micro SD where the SPI mode is optional. I will nonetheless try to read my micro SD with the SPI mode. I found a circuit example on the following page. The MCU is a


Reading an SD card with an ATMEGA168
Click here to download the full size of the above Circuit.

5V-powered ATMEGA16. The SD card is powered through a 3. 3V regulator. The author used resistor dividers to connect the SD card inputs to the ATMEGA16 SPI pins. I bought the same regulator and thought, why not instead try to power the ATMEGA168 directly with 3. 3V thus avoiding the need for a voltage adaptation. The ATMEGA168 datasheet tells me that at 3. 3V the maximum safe frequency is 16MHz so I can keep my current crystal. SPI stands for Serial Peripheral Interface. This interface allows high speed synchronous transfers between a MCU and a peripheral or another MCU. The ATMEGA168 datasheet contains the following figure that highlights the powerful simplicity of this interface: Each side of the interface has a 8-bit shift register. The left side is the master and the right side is the slave. When the master initiates a transfer to the slave, its SPI clock signal triggers a bit-by-bit copy of each register to the other one. Sending a byte from the master always involves receiving a byte from the slave. The master SPI clock dictates the speed of the transfer. For the ATMEGA168 the maximum speed is Fclk/2. So with a 16 MHz crystal, the maximum theoretical bandwidth is 8Mbit/s, or 1MByte/s. A regular card should support a clock of 25 MHz. Here is some code adapted from the ATMEGA168 datasheet to initialize the SPI interface and do a transfer. A single function is enough to send or receive a byte or both. void spi_init(void)...




Leave Comment

characters left:

New Circuits

.

 


Popular Circuits

Car warning lights circuit
Ultrasonic Mosquito Repeller Circuit Using CMOS IC
Hum Filter Remove AC Line Noise Pre Amp Circuit for Hi-Fi Amplifier Audio Systems
Design and realizing of the electric transmission line monitoring system
100w inverter circuit
Audio VU Meter
HIGH-SPEED DIGITAL DESIGN
Ethernet remote device controller sensor circuit



Top