Atmega16 wie SPI nutzen?

Gast #4055874
Lesenswert?

Hallo,

ich habe einen Atmega16 und würde gerne über SPI ein externes Gerät 
ansteuern. Mit SPI habe ich noch nicht gearbeitet, deshalb hier meine 
Frage:

Der Atmega16 hat ja lt. Datenblatt ein Master/Slave SPI Serial 
interface. Das würde ich gerne für die Kommunikation mit dem externen 
Gerät nutzen.
Zum programmieren habe ich Atmels STK-600. Das STK-600 nutzt aber genau 
die Pins zum programmieren des Atmega16, die ich für SPI mit meinem 
externen Gerät brauche, also die MISO/MOSI Pins. Das ist ja dann 
irgendwie doppelt belegt - oder nicht? Wie mache ich das nun?

Danke für Eure Hilfe...
Gast #4055889
Lesenswert?

Am sichersten ist es wenn du beim SPI-Programmieren (Flashen)
deinen externen SPI-Teilnehmer abkoppelst.

Falls derjenige sich aber korrekt verhält und nur dann Daten
von sich gibt wenn er auch mit einem Chip Select aktiviert
ist dann kannst du ihn während des Flashens auch dran lassen.
(Chip Select mit Pullup versehen ist eine gute Idee damit
beim Flashen nix passiert)

Eventuell können Leitungslängen zum externen SPI-Teilnehmer
noch beim Flashen stören ....
#4055929
Lesenswert?

Hi,
richtig, das ist schlecht. Viele SPI-Teilnehmer nutzen die CS-Leitung 
zusätzlich intern zur synchronisierung. Daher ist das sowieso schlecht.

Den CS auf einen Pin vom µC und einen Pullup spendieren (Pin während des 
Programmiervorgangs hochohmig). Zur Sicherheit kann man auch noch 
Angstwiderstände in die Leitung zum Teilnehmer legen.

Gruß,
Daniel
Gast #4055952
Lesenswert?

mr.burns schrieb:
> Was sind denn bitte 'Angstwiderstände'?

Längswiderstände (50...200 Ohm) zwischen den SPI Teilnehmern
die zum einen den Strom begrenzen falls ein Buskonflikt
auftritt (zwei Ausgänge treiben aufeinander), zum anderen
einen Leitungsabschluss bewirken und damit Funktionsstörungen
durch Reflexionen bei längeren Leitungen verhindern.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren