Hallo
Brauche eure Hilfe.
Bin absoluter Anfänger was AVR's angeht.
Ich möchte ein SD Karte in meinem AVR-Net-IO (Pollin) mit einem ATMega
644P an den ISP anschließen.
1.) Frage
Sehe ich das richtig?
ISP Pin 1 -> CS
Pin 4 -> SS
Pin 5 -> Mosi
Pin 6 -> Miso
Pin 7 -> CLK
Ist so in der mmc.h angegeben
1 | #if defined (__AVR_ATmega644__)
|
2 | #define SPI_MISO 6 //Port Pin an dem Data
|
3 | Output der MMC/SD-Karte angeschlossen ist
|
4 | #define SPI_MOSI 5 //Port Pin an dem Data
|
5 | Input der MMC/SD-Karte angeschlossen ist
|
6 | #define SPI_Clock 7 //Port Pin an dem die
|
7 | Clock der MMC/SD-Karte angeschlossen ist (clk)
|
8 | #define MMC_Chip_Select 1 //Port Pin an dem Chip Select der
|
9 | MMC/SD-Karte angeschlossen ist
|
10 | #define SPI_SS 4 //Nicht Benutz
|
11 | muß aber definiert werden
|
12 | #endif
|
2.) Frage
Ist die Einbindung in die Config.h richtig?
Dieser Code stammt von Radig Ulrich (Shortie erweitert)
1 | //Konfiguration der PORTS (HEX)
|
2 | //1=OUTPUT / 0=INPUT
|
3 | #define OUTA 0x07
|
4 | #define OUTC 0x06
|
5 | #define OUTD 0x00
|
6 | //Achtung!!!! an PORTB ist der ENC
|
7 | //nur ändern wenn man weiß was man macht!
|
.
.
.
1 | // SD Karte einbinden
|
2 | // http://www.mikrocontroller.net/articles/AVR_FAT32
|
3 | //-----------------------------------------------------------------------
|
4 | #define MMC_SMALL_FILE_SYSTEM TRUE // FALSE = Komp.Unterstützung
|
5 | #define MMC_WRITE TRUE // TRUE = Write an
|
6 | #define MMC_OVER_WRITE FALSE // TRUE = Dateien überschreiben
|
7 | #define MMC_MULTI_BLOCK FALSE // TRUE = MultiBlock Operation
|
8 | // nur wenn MMC_OVER_WRITE -> FALSE
|
9 | #define MMC_SDHC_SUPPORT TRUE // SD Standard 2.0 wird unterstützt
|
10 | // also Karten bis 32 GB Größe.
|
11 | #define MMC_TIME_STAMP FALSE //
|
12 |
|
13 | #define MMC_MAX_SPEED TRUE //
|
14 |
|
15 | #define MMC_SOFT_SPI FALSE //
|
16 |
|
17 | #define MMC_MAX_CLUSTERS_IN_ROW 256 //
|