crabtack
23.09.2012, 15:15
Hallo!
Ich bin dabei einen kleinen Datenlogger zu bauen, der seine Daten auf eine SD Karte speichern soll, dabei möchte ich die Bibliothek von Roland Riegel verwenden.
Aber es klappt leider nicht :(
Ich verwende eine SD Karte von San Disk und habe die Karte so beschaltet, wie Ulrich Radig:
http://www.ulrichradig.de/home/index.php/avr/mmc-sd
Mein Code sieht so aus:
#include <avr/io.h>
#include "sd_raw.h"
#include "sd_raw_config.h"
#include "sd_raw.c"
#ifndef F_CPU
#define F_CPU 16000000UL
#endif
#include <util/delay.h>
#define LED_red 3
#define LED_green 2
int main(void)
{
int init = 0;
int avaiable = 0;
DDRB = (1 << DDB3) | (1 << DDB2);
while (1)
{
init = sd_raw_init();
if (init == 1)
{
PORTB |= (1<<LED_green);
}
else
{
PORTB |= (1<<LED_red);
}
_delay_ms(1000);
}
}
Leider geht immer nur die Rote LED an :(
In den anderen Dateien habe ich nichts geändert, außer den Chip select Pin, der ist bei mir an PB0.
Für Hilfe währe ich sehr Dankbar.
Gruß
Olaf
Ich bin dabei einen kleinen Datenlogger zu bauen, der seine Daten auf eine SD Karte speichern soll, dabei möchte ich die Bibliothek von Roland Riegel verwenden.
Aber es klappt leider nicht :(
Ich verwende eine SD Karte von San Disk und habe die Karte so beschaltet, wie Ulrich Radig:
http://www.ulrichradig.de/home/index.php/avr/mmc-sd
Mein Code sieht so aus:
#include <avr/io.h>
#include "sd_raw.h"
#include "sd_raw_config.h"
#include "sd_raw.c"
#ifndef F_CPU
#define F_CPU 16000000UL
#endif
#include <util/delay.h>
#define LED_red 3
#define LED_green 2
int main(void)
{
int init = 0;
int avaiable = 0;
DDRB = (1 << DDB3) | (1 << DDB2);
while (1)
{
init = sd_raw_init();
if (init == 1)
{
PORTB |= (1<<LED_green);
}
else
{
PORTB |= (1<<LED_red);
}
_delay_ms(1000);
}
}
Leider geht immer nur die Rote LED an :(
In den anderen Dateien habe ich nichts geändert, außer den Chip select Pin, der ist bei mir an PB0.
Für Hilfe währe ich sehr Dankbar.
Gruß
Olaf