Port 0 AT89S52

OP #1188516
Lesenswert?

Guten Abend,

ich bin noch neu hier im Forum und auch ein Neuling in Sachen µC 
Programmierung.

Zu meiner Hardware:

Ich habe mir eine Board mit einem AT89S52 einem 24MHz Quarz und ein paar 
LED´s und dip-Schalter zusammen gebastelt. Mit Keil schreibe ich mein 
Programm in Assembler und mit AT89 ISP Cable + Software beschreibe ich 
den Controller. Soweit funktioniert das auch.

Mein Problem besteht darin, dass ich den Port 0 als ganz normalen 
Ausgang für einen BCD-7Segment Treiber nutzen möchte! Im Datenblatt 
steht, dass man am Port 0 Pull-Up´s braucht für die Nutzung mit einem 
externen Speicher. Aber was muss ich tun, um den Port 0 als normalen 
Ausgang nehmen zu können.
Kriege das irgendwie nicht hin???
Gast #1188549
Lesenswert?

> ... dass man am Port 0 Pull-Up´s braucht für die Nutzung mit einem
> externen Speicher.
Falsch. Nochmal lesen :)

Bei Verwendung von MOVX-Befehlen wird der interne Pull-Up aktiviert, um 
eine Eins auszugeben. Wenn du Port 0 als normalen IO verwenden willst, 
also wie die anderen Ports auch, dann brauchst du externe Pull-Ups, da 
der Port ansonsten nur 0 ausgeben kann, andernfalls ist er open-drain. 
Als Eingang funktioniert er immer, wenn die Gegenstelle 1/0 ausgeben 
kann.

Ralf
Gast #1189514
Lesenswert?

Ja ich denke, Pull-Up im Bereich 2k2 - 10k ist in Ordnung. Davon ist 
abhängig, wieviel Strom du High treiben kannst. Größer geht auch, nur zu 
klein darfs nicht werden, weil bei einem Schalten nach Low sonst der 
interne Transistor hops geht (Stromangabe im DB nachgucken).

Ralf

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