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???
> ... 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
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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.