Forum: Mikrocontroller und Digitale Elektronik Frage zu SPI und MCP23S09


von Pete K. (pete77)


Angehängte Dateien:

Lesenswert?

Hallo liebe Gemeinde,

ich möchte gerne mein Grafik-LCD von einer I2C Ansteuerung mit dem 
MCP23008 von Microchip auf eine serielle Ansteuerung mit dem MCP23S09 
per SPI umstellen.

Angeschlossen sind die /CS Leitungen jeweils an PC2 und PC3 eines 
ATMega644, der mit 8Mhz internem Takt bei 3,3V läuft. Das Display ist an 
5V angeschlossen mit zwei MCP23S09 (an 3,3V, die GPIOs sind 5V 
tolerant), jeweils einer für die Daten (DATA) und einer für die 
"restlichen" Pins (CMD).

Ich habe in meinem Code die Ansteuerung in etwa so wie bei I2C versucht, 
aber leider funktioniert das nicht. Ich bleibe schon in der Init-Routine 
hängen (nach "Init1").

Elektrisch sind die MISO/MOSI/SCK Leitungen der MCPs und µC jeweils 
zusammengeschaltet, an MISO hängt ein 10k Pullup.

Es wäre nett, wenn jemand einmal schauen könnte, ob ich hier völlig auf 
dem Holzweg bin. Datenblatt und Code siehe Anhang.

Das Hauptprogramm:
1
int main(void)
2
3
  _delay_ms(1000);
4
5
  uart_init( UART_BAUD_SELECT(UART_BAUD_RATE,F_CPU));
6
  
7
  sei();
8
  
9
  uart_puts_P("**** \nProgramm Start\n"); _delay_ms(50);
10
11
  T6963cInit(  T6963C_MODE_XOR | T6963C_CG_INTERNALROM,
12
        T6963C_TEXT_GRAPHIC);
13
  
14
  uart_puts_P("Display Init ok.\n"); _delay_ms(30);
15
16
T6963cPutStringXY(0,0, "Test");
17
18
 _delay_ms(100);
19
20
return 1;
21
}

von Pete K. (pete77)


Lesenswert?

Keiner?

von Pete K. (pete77)


Lesenswert?

Muss man noch etwas Besonderes beachten, wenn man nicht /SS als 
ChipSelect nimmt, sondern einen anderen Pin?

Irgendwie komme ich nicht weiter. Hardware habe ich noch einmal alles 
kontrolliert, finde keine Fehler.

Ergänzend habe ich mal an die beiden /CS-Leitungen einen Pullup 10k 
gesetzt.

Leider immer noch keine Besserung :-(

von Pete K. (pete77)


Lesenswert?

hooochhhschieeeeb

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.