Forum: Mikrocontroller und Digitale Elektronik Atmega32: Pins Input ODER Output?


von Dennis (Gast)


Lesenswert?

Hallo zusammen,

wie muss ich den µC konfigurieren, damit ich die Pins als Ein- oder 
Ausgänge benutzen kann, ohne die Bits der Register DDRx auf 0 zu setzen?

Kann man nicht einfach alle Ports als Ausgänge definieren, 
HIGH-Ausgangspegel auf diese programmieren und dann z.B. über einen 
Schalter den tatsächlichen Pegel des Pins bestimmen (kann ja extern z.B. 
über Schalter und Pull-Up auf Masse gezogen werden)? Über PINx kann der 
tatsächliche Pegel ja abgefragt werden, oder nicht?

grüße,

Dennis

von (prx) A. K. (prx)


Lesenswert?

Dennis schrieb:

> Kann man nicht einfach alle Ports als Ausgänge definieren,
> HIGH-Ausgangspegel auf diese programmieren und dann z.B. über einen
> Schalter den tatsächlichen Pegel des Pins bestimmen

Ja, das kann man so machen. Nur nicht sonderlich lange, denn der 
Kurzschlusstrom eines Ausgangstreibers dürfte bei 100-200mA liegen. Wenn 
du das bei mehreren Pins machst, dann brennt der Bonddraht von VCC durch 
und wenn du Glück hast, dann schon vorher der Chip.

Bei 8051ern geht das. Bei AVRs nicht.

von Dennis (Gast)


Lesenswert?

> Bei 8051ern geht das. Bei AVRs nicht.

Alles klar ;) Danke für die Antwort!

von Denny (Gast)


Lesenswert?

Ok, ich habe dann doch noch eine Frage:

wie kann ich dann schaltungstechnisch verhindern, dass der Pin zerstört 
wird, wenn er versehentlich gegen Masse geschaltet wird?

von Klaus W. (mfgkw)


Lesenswert?

den Pin über einen ausreichenden Widerstand führen, dann brennt er nicht 
durch, egal was passiert.

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.