Witam,
zakupiłem taki oto moduł do kart SD (ze sklepu botland)
Z tego co widzę nie ma on bufora napięć dla sygnałów SPI więc użyłem dodatkowo 74LS07. Próbowałem użyć bibliotek przykłądowych z FatFS(wdzięcznie nazwane "avr-foolproof") Nie ogarniam jednak konfiguracji tych bibliotek. Mianowicie: w module są wyprowadzenia MISO MOSI SCK orac CS. W biblotece tej znalazłem tylko takie cos:
#define DO_INIT() /* Initialize port for MMC DO as input */
#define DO (PINB & 0x01) /* Test for MMC DO ('H':true, 'L':false) */
#define DI_INIT() DDRB |= 0x02 /* Initialize port for MMC DI as output */
#define DI_H() PORTB |= 0x02 /* Set MMC DI "high" */
#define DI_L() PORTB &= 0xFD /* Set MMC DI "low" */
#define CK_INIT() DDRB |= (1<<PB7) /* Initialize port for MMC SCLK as output */
#define CK_H() PORTB |= (1<<PB7) /* Set MMC SCLK "high" */
#define CK_L() PORTB &= 0xFB /* Set MMC SCLK "low" */
#define CS_INIT() DDRB |= 0x08 /* Initialize port for MMC CS as output */
#define CS_H() PORTB |= 0x08 /* Set MMC CS "high" */
#define CS_L() PORTB &= 0xF7 /* Set MMC CS "low" */[/syntax]
Jak wyprowadzenia DI, DO mają się do tych z modułu? Powinienem je łączyć tylko z MISO,MOSI w uC czy jest to dowolne? Jakie jeszcze dodatkowe zmiany są potrzebne w kodzie tej biblioteki aby zaczęła działać?
zakupiłem taki oto moduł do kart SD (ze sklepu botland)
Z tego co widzę nie ma on bufora napięć dla sygnałów SPI więc użyłem dodatkowo 74LS07. Próbowałem użyć bibliotek przykłądowych z FatFS(wdzięcznie nazwane "avr-foolproof") Nie ogarniam jednak konfiguracji tych bibliotek. Mianowicie: w module są wyprowadzenia MISO MOSI SCK orac CS. W biblotece tej znalazłem tylko takie cos:
Kod: C / C++
#define DO_INIT() /* Initialize port for MMC DO as input */
#define DO (PINB & 0x01) /* Test for MMC DO ('H':true, 'L':false) */
#define DI_INIT() DDRB |= 0x02 /* Initialize port for MMC DI as output */
#define DI_H() PORTB |= 0x02 /* Set MMC DI "high" */
#define DI_L() PORTB &= 0xFD /* Set MMC DI "low" */
#define CK_INIT() DDRB |= (1<<PB7) /* Initialize port for MMC SCLK as output */
#define CK_H() PORTB |= (1<<PB7) /* Set MMC SCLK "high" */
#define CK_L() PORTB &= 0xFB /* Set MMC SCLK "low" */
#define CS_INIT() DDRB |= 0x08 /* Initialize port for MMC CS as output */
#define CS_H() PORTB |= 0x08 /* Set MMC CS "high" */
#define CS_L() PORTB &= 0xF7 /* Set MMC CS "low" */[/syntax]
Jak wyprowadzenia DI, DO mają się do tych z modułu? Powinienem je łączyć tylko z MISO,MOSI w uC czy jest to dowolne? Jakie jeszcze dodatkowe zmiany są potrzebne w kodzie tej biblioteki aby zaczęła działać?