rename regs
This commit is contained in:
parent
e1567d81da
commit
f4d5451fec
@ -5,21 +5,21 @@ uint8_t mmc_init()
|
|||||||
uint16_t Timeout = 0, i;
|
uint16_t Timeout = 0, i;
|
||||||
|
|
||||||
// Konfiguration des Ports an der die MMC/SD-Karte angeschlossen wurde
|
// Konfiguration des Ports an der die MMC/SD-Karte angeschlossen wurde
|
||||||
DDRB |= ((1 << MMC_DO) | (1 << MMC_CS) | (1 << MMC_CLK));
|
MMC_REG |= ((1 << MMC_DO) | (1 << MMC_CS) | (1 << MMC_CLK));
|
||||||
DDRB &= ~(1 << MMC_DI);
|
MMC_REG &= ~(1 << MMC_DI);
|
||||||
PORTB |= ((1 << MMC_DO) | (1 << MMC_DI) | (1 << MMC_CS));
|
MMC_WRITE |= ((1 << MMC_DO) | (1 << MMC_DI) | (1 << MMC_CS));
|
||||||
|
|
||||||
// Wartet eine kurze Zeit
|
// Wartet eine kurze Zeit
|
||||||
_delay_ms(20);
|
_delay_ms(20);
|
||||||
|
|
||||||
// Initialisiere MMC/SD-Karte in den SPI-Mode
|
// Initialisiere MMC/SD-Karte in den SPI-Mode
|
||||||
for (i = 0; i < 250; i++) {
|
for (i = 0; i < 250; i++) {
|
||||||
PORTB ^= (1 << MMC_CLK);
|
MMC_WRITE ^= (1 << MMC_CLK);
|
||||||
_delay_us(4);
|
_delay_us(4);
|
||||||
}
|
}
|
||||||
PORTB &= ~(1 << MMC_CLK);
|
MMC_WRITE &= ~(1 << MMC_CLK);
|
||||||
_delay_us(10);
|
_delay_us(10);
|
||||||
PORTB &= ~(1 << MMC_CS);
|
MMC_WRITE &= ~(1 << MMC_CS);
|
||||||
_delay_us(3);
|
_delay_us(3);
|
||||||
|
|
||||||
// Sendet Commando CMD0 an MMC/SD-Karte
|
// Sendet Commando CMD0 an MMC/SD-Karte
|
||||||
@ -77,7 +77,7 @@ uint8_t mmc_read_byte(void)
|
|||||||
uint8_t Byte = 0, j;
|
uint8_t Byte = 0, j;
|
||||||
for (j = 0; j < 8; j++) {
|
for (j = 0; j < 8; j++) {
|
||||||
Byte = (Byte << 1);
|
Byte = (Byte << 1);
|
||||||
PORTB |= (1 << MMC_CLK);
|
MMC_WRITE |= (1 << MMC_CLK);
|
||||||
_delay_us(4);
|
_delay_us(4);
|
||||||
if (PINB & (1 << MMC_DI)) {
|
if (PINB & (1 << MMC_DI)) {
|
||||||
Byte |= 1;
|
Byte |= 1;
|
||||||
@ -86,7 +86,7 @@ uint8_t mmc_read_byte(void)
|
|||||||
else {
|
else {
|
||||||
Byte &= ~1;
|
Byte &= ~1;
|
||||||
}
|
}
|
||||||
PORTB &= ~(1 << MMC_CLK);
|
MMC_WRITE &= ~(1 << MMC_CLK);
|
||||||
_delay_us(4);
|
_delay_us(4);
|
||||||
}
|
}
|
||||||
return (Byte);
|
return (Byte);
|
||||||
@ -100,19 +100,19 @@ void mmc_write_byte(uint8_t Byte)
|
|||||||
uint8_t i;
|
uint8_t i;
|
||||||
for (i = 0; i < 8; i++) {
|
for (i = 0; i < 8; i++) {
|
||||||
if (Byte & 0x80) {
|
if (Byte & 0x80) {
|
||||||
PORTB |= (1 << MMC_DO);
|
MMC_WRITE |= (1 << MMC_DO);
|
||||||
}
|
}
|
||||||
|
|
||||||
else {
|
else {
|
||||||
PORTB &= ~(1 << MMC_DO);
|
MMC_WRITE &= ~(1 << MMC_DO);
|
||||||
}
|
}
|
||||||
Byte = (Byte << 1);
|
Byte = (Byte << 1);
|
||||||
PORTB |= (1 << MMC_CLK);
|
MMC_WRITE |= (1 << MMC_CLK);
|
||||||
_delay_us(4);
|
_delay_us(4);
|
||||||
PORTB &= ~(1 << MMC_CLK);
|
MMC_WRITE &= ~(1 << MMC_CLK);
|
||||||
_delay_us(4);
|
_delay_us(4);
|
||||||
}
|
}
|
||||||
PORTB |= (1 << MMC_DO);
|
MMC_WRITE |= (1 << MMC_DO);
|
||||||
}
|
}
|
||||||
|
|
||||||
// ############################################################################
|
// ############################################################################
|
||||||
|
|||||||
@ -4,9 +4,9 @@
|
|||||||
#include <avr/io.h>
|
#include <avr/io.h>
|
||||||
|
|
||||||
|
|
||||||
#define MMC_Write PORTB // Port an der die MMC/SD-Karte angeschlossen ist also des SPI
|
#define MMC_WRITE PORTB // Port an der die MMC/SD-Karte angeschlossen ist also des SPI
|
||||||
#define MMC_Read PINB
|
#define MMC_READ PINB
|
||||||
#define MMC_Direction_REG DDRB
|
#define MMC_REG DDRB
|
||||||
|
|
||||||
#define MMC_CS PB4
|
#define MMC_CS PB4
|
||||||
#define MMC_DO PB6
|
#define MMC_DO PB6
|
||||||
@ -23,10 +23,10 @@ extern uint8_t mmc_read_csd(uint8_t *);
|
|||||||
extern uint8_t mmc_read_cid(uint8_t *);
|
extern uint8_t mmc_read_cid(uint8_t *);
|
||||||
|
|
||||||
// set MMC_Chip_Select to high (MMC/SD-Karte Inaktiv)
|
// set MMC_Chip_Select to high (MMC/SD-Karte Inaktiv)
|
||||||
#define MMC_Disable() MMC_Write|= (1<<MMC_CS);
|
#define MMC_Disable() MMC_WRITE|= (1<<MMC_CS);
|
||||||
|
|
||||||
// set MMC_Chip_Select to low (MMC/SD-Karte Aktiv)
|
// set MMC_Chip_Select to low (MMC/SD-Karte Aktiv)
|
||||||
#define MMC_Enable() MMC_Write&=~(1<<MMC_CS);
|
#define MMC_Enable() MMC_WRITE&=~(1<<MMC_CS);
|
||||||
|
|
||||||
#define nop() __asm__ __volatile__ ("nop" ::)
|
#define nop() __asm__ __volatile__ ("nop" ::)
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user