Hi, ich habe folgendes Programm geschrieben und in einen ATtiny 12L geschrieben. Zusätzlich hab ich das Fuse-Bit "RSTDISBL" für den internen reset aktiviert. Das Programm soll folgendes machen: Wenn Taster 1 (an PB0) gedrückt wird, ist NUR PB3 high Wenn Taster 2 (an PB1) gedrückt wird, ist NUR PB4 high Wenn Taster 3 (an PB2) gedrückt wird, ist NUR PB5 high Also eine Entprellung ist überflüssig. Trotzdem funktionieren nur Taster 1 und 2. Wenn ich Taster 3 betätige, ist kein ausgang high. Hab es zur Sicherheit auch noch nachgemessen. Es handelt sich um diese Programm: ;-------------------------------------- ;Eingangswahl ;-------------------------------------- ; Datum: 2.5.06 ; Version: 1.0 ; Controller: ATtiny 12L ;-------------------------------------- .include "tn12def.inc" ;-------------------------------------- ; Interruptvektoren ;-------------------------------------- rjmp main reti reti reti reti reti ;-------------------------------------- ; Main ;-------------------------------------- main: ldi r16 , 0b11111000 out DDRB , r16 ldi r16 , 0b00000111 out PORTB , r16 mainloop: wdr in r17 , PINB sbrs r17 , 0 rjmp taster1 sbrs r17 , 1 rjmp taster2 sbrs r17 , 2 rjmp taster3 rjmp mainloop taster1: ldi r16 , 0b00001111 out PORTB , r16 rjmp mainloop taster2: ldi r16 , 0b00010111 out PORTB , r16 rjmp mainloop taster3: ldi r16 , 0b00100111 out PORTB , r16 rjmp mainloop Ich nutze den ATtiny 12L, AVR Studio zum Programmieren und PonyProg zum Brennen. Was fehlt, bzw was hab ich falsch gemacht? Mfg Engel
> Was fehlt, bzw was hab ich falsch gemacht?
Du hast im Datenblatt Seite 5 Tabelle 2 Fußnote 4 nicht gelesen...
...
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.