Hallo.. Bin gerade dabei mich mit Atmels Mikrocontrollern zu beschäftigen. Versuche gerade mehree eingangszustände abzufragen.Mit externen interrupts funktioniert es bestens aber die beiden INT´s reichen mir nicht. Möchte also PORTA als Eingang nutzen. clr reg out DDRA ;Port A als eingang ldi reg,0xFF out PORTA,reg ;Pullups ein in reg,PINA0 tst reg breq...etc. funktioniert bloß nicht, und es im AVR-STUDIO wird es nicht simuliert. Kann also nicht richtig nachvollziehen wo der fehler liegt. Hab ich PORTA richtig konfiguriert?
PINA0 ist die Nummer vom Pin, nicht die Adresse vom Port-A. Also beispielsweise sbis PINA,PINA0 rjmp ... oder in reg,PINA andi reg,1<<PINA0 ...
achso, da kann man also keine einzelnen pins einlesen. Ok besten dank dann weiß ich bescheid.
Der Codeschnipsel oben hat nochn Fehler. clr reg ;reg = 0x00 out DDRA, reg ;Port A als eingang ser reg ;reg = 0xFF out PORTA, reg ;Pullups ein so sollte es dann klappen
Hab es so probiert: PINA0 ist die Nummer vom Pin, nicht die Adresse vom Port-A. Also beispielsweise sbis PINA,PINA0 rjmp ... Der µc erkennt den Zustands des PIN´s trotzdem nicht.
Probieren alleine bringt nix. Schau dir mal am Ende des Datenblattes die Liste mit dem I/O-Bereich an. Da sind alle Portnamen und deren Bitnamen aufgelistet. Meist hat die Liste auch noch eine Spalte, in der die Seitennummer zu finden ist, wo das jeweilige I/O-Register ausführlich erklärt wird. ...
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.