-
-
Neuer Benutzer
Öfters hier
SPI
Also Das Display ist ein Nokia 6100 von Display 3000
Mein Fehler liegt bei folgender Zeile im SPI Init ich weiß aber den Unterschied nicht.
void spi_init()
{
int Timeout = 0;
MMC_Direction_REG &=~(1<<SPI_DI);
MMC_Direction_REG |= (1<<SPI_Clock);
MMC_Direction_REG |= (1<<SPI_DO);
MMC_Direction_REG1 |= (1<<MMC_Chip_Select);
MMC_Direction_REG |= (1<<SPI_SS);
MMC_Direction_REG |= (1<<DISPL_RESET);
MMC_Direction_REG |= (1<<DISPL_Chip_Select);
MMC_Write1 |= (1<<MMC_Chip_Select);
MMC_Write |= (1<<DISPL_Chip_Select);
for(int a=0;a<200;a++)
{
nop();
};
//Wartet eine kurze Zeit
SPCR=(1<<SPIE)|(1<<MSTR)|(1<<SPR0)|(1<<SPR1);
//Display OK SDCARD nicht
//SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0)|(1<<SPR1);
//SDCARD OK Display nicht
SPSR = (0<<SPI2X);
return(0);
}
#define MMC_Write PORTB
#define MMC_Write1 PORTA
#define MMC_Read PINB
#define MMC_Direction_REG DDRB
#define MMC_Direction_REG1 DDRA //CS für SDCARD
#define SPI_DI 3
#define SPI_DO 2
#define SPI_Clock 1
#define MMC_Chip_Select 1
#define SPI_SS 0
#define DISPL_Chip_Select 5
#define DISPL_RESET 6
Das heist wenn ich den SPI nicht einschalte dann geht das display aber die SD nicht und umgekehrt.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen