Forum: Mikrocontroller und Digitale Elektronik Atmel AVR SPi und 74Hc165 am Eingang


von Johannes M. (jojo20)


Lesenswert?

Hi,

ich möchte zur Porterweiterung an einen ATMEGA8515 74HC165 
Schieberegister anschließen.

Nun ist der Ausgang des Registers ja immer 0V oder 5V und nie "Neutral".

Wenn ich nun den AVR mit ISP programmieren möchte, stört das 
Schieberegister ja. Wie geht man da sinnvoll vor, wenn Reset auf LOW 
liegt das Schiebergister abzukoppeln? Gibt es da evtl. einen einfach 
74Hc Chip für?

von Rainer W. (rawi)


Lesenswert?

Johannes M. schrieb:
> Nun ist der Ausgang des Registers ja immer 0V oder 5V und nie "Neutral".

Nennt sich gewöhnlich High-Z

> Gibt es da evtl. einen einfach 74Hc Chip für?

Das ist übertriebener Aufwand. Ein gewöhnlicher Widerstand zwischen 
Ausgang des 74HC165 und dem AVR dürfte helfen.

von Falk B. (falk)


Lesenswert?

Johannes M. schrieb:
> Wenn ich nun den AVR mit ISP programmieren möchte, stört das
> Schieberegister ja. Wie geht man da sinnvoll vor, wenn Reset auf LOW
> liegt das Schiebergister abzukoppeln? Gibt es da evtl. einen einfach
> 74Hc Chip für?

Die "perfekte" Lösung besteht aus einem 74HC125, das ist ein 
Tristate-Treiber. Dessen Enable hängt man mit einem externen Pull-Up an 
den AVR.

Die schnelle Lösung sind 1k in Reihe zwischen Schieberegisterausgang und 
AVR. Der ist klein genug, um bei ein paar Mbit/s das Signal noch nicht 
zu sehr zu verschleifen aber groß genug zum Entkopplen des 
ISP-Anschlusses. Der kann den treiben und alles ist OK.

von Falk B. (falk)


Lesenswert?


von Purzel H. (hacky)


Lesenswert?

Anstelle eines 74165 wuerde ich sowieso ein 74595 empfehlen, hat auch 
noch OE und so.
Falls man einen doppel-Port umschalten muss, blieb mir der 2G126.

von Maxim B. (max182)


Lesenswert?

Purzel H. schrieb:
> Anstelle eines 74165 wuerde ich sowieso ein 74595 empfehlen

Könntest du bitte in einer Schaltung zeigen, wie du 165 mit 595 ersetzt?

Falk B. schrieb:
> Die "perfekte" Lösung besteht aus einem 74HC125, das ist ein
> Tristate-Treiber. Dessen Enable hängt man mit einem externen Pull-Up an
> den AVR.
Ich würde sogar statt HC165 HCS165 nehmen. Mit Hilfe von RC kann man 
dann aus ~CS für HC125 auch ~LD für 165 ableiten. Das arbeitet zwar auch 
mit HC165 (die Werte 2k7 und 100p habe ich für 2x HC165 benutzt), aber 
mit HCS165 dank Schmitt-Trigger wohl sicherer.

Aber auch die Variante mit R in MISO ist möglich, sogar von Atmel selbst 
in AVR042 empfohlen. Dort wird sogar 330 Ohm (für Vcc= 3,3 Volt) 
empfohlen. Ich selbst habe aber 1k benutzt.

: Bearbeitet durch User
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.