Hy, ich programmier und bastel hier schon rum wie ein Wilder. Trotzdem gelingt es mir nicht. Ich moechte an einem atmega32, die Pins 33-40 ( PA0-PA7 ) als ganz normale i/o Ports nutzen. Dafuer habe ich wie im pdf beschrieben die AVCC/VCC(5V) und alle GND angeschlossen. Als Ausgang kann ich ohne Probleme PA0-PA7 nutzen. Ein : DDRA = 0xFF; PORTA= 0xFF; Legt an jeden Pin 5V an. Klappt also. Nur als Eingang funktioniert es nicht ! char = in; DDRA = 0x00; in = PORTA; Ist "in" immer 0x00 ! Egal an welchen Pin ich 5V extern anlege. Was habe ich nicht beachtet ? Muss ich noch irgendwo ein Register setzten um den Analog-Teil als Digital Teil zu nutzen ? danke fuer eure Hilfe.
>in = PORTA;
Versuch lieber in = PINA;
Und danach guckst du dir das Tutorium an!
und das istnicht anders als bei anderen Ports. Ich weiss noch, wie oft ich anfangs (nach der 8051-Ära) über die Portstruktur der AVRs gestolpert bin - immer wieder. DDRx vergessen, vom Port statt vom Pin lesen, aber inzwischen klappt es, ohne nachdenken zu müssen :-)
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.