Hi, ich habe ein ganz komisches Problem. Ich habe folgenden Quelltest: Ddra = &B00000000 Ddrc = &B11111111 Ddrd = &B11111111 Config Porta = Input Config Portc = Output Config Portd = Output Do If Pina.0 = 1 Then Portd.0 = 1 Portc.0 = 1 Else Portc.0 = 0 Portd.0 = 0 End If Loop Wenn ich das auf meinen ATMEGA8515 überspiele und dann Pina.0 über einen Schalter mit 5V verbinde, dann passiert rein garnichts. Ich kann weder an Portd.0 noch an Portd.1 eine Spannungsveränderung feststellen. Woran kann das liegen? Programmieren kann ich den AVR ja. Daran kann es also nicht liegen. Danke für eure Hilfe!
Hi Jakob mach den Schalter mal nach Masse rein , dann soll's funzen. Gruss Gerhard
... und nicht vergessen den internen Pullup einzuschalten oder einen externen dranlöten. (keine Ahnung ob "Config Porta = Input" das beinhaltet).
Hallo Jakob, wie vorher schon geschrieben wurde, Schalter an Masse und internen Pullup einschalten. Die Zeilen mit ddrx kannste dir schenken. Config Portx ist das Gleiche. Wenn du einzelne Pins von einem Port auf Input und Output stellen willst, das geht dann mit ddrx.. So müsste es gehen: Config Porta = Input Config Portc = Output Config Portd = Output Set Porta.0 'internen Pullup einschalten Do If Pina.0 = 1 Then Portd.0 = 1 Portc.0 = 1 Else Portc.0 = 0 Portd.0 = 0 End If Loop Gruß Klaus
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.