Hallo, ich habe eine Frage zum STK500 im Zusammenhang mit einem Mega16. Es geht darum, dass wenn ich zB. Port A als Eingang verwende ein Knopfdruck im Register eine logische "0" erzeugt. Wenn ich keinen Knopf gedrückt habe, liefert das Register 0x19 also den Wert 255. Jetzt habe ich das so verstanden, dass ich den internen Pullup über das Register 0x1B setze und somit die Logik umdrehe. Ich meine mich erinnern zu können, dass es so auch mal funktioniert hat. Hab ich da was falsch verstanden, oder muss ich noch irgendwo (vielleicht am STK 500 etwas einstellen?) Nicht, dass ich es am Ende irgendwie geschossen habe. Schonmal Danke und grüsse
Mit DDRA legst du die Richtung des Poers fest, 0 bedeutet Eingang. Wenn der Port Eingang ist, kannst du durch Schreiben von Einsen in PORTA die internen Pull-Up-Widerstände aktivieren. Diese invertieren keine Logik, sondern ziehen (Pull) die Pegel der Pins hoch (Up), also nach +Vcc. Dies spart externe Pull-Up-Widerstände ein, die nunmal erforderlich würden, um bei unbetätigten Tastern sichere H-Pegel zu erreichen. Die Taster ziehen die Pegel dann nach GND. Die Taster des STK500 haben allerdings als Schutzbeschaltung eigene Pull-Up-Widerstände und Widerstände zu den Pins, um den Strom zu begrenzen, falls man den Port irrtümlicherweise mal auf Ausgang geschaltet hat. ...
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.