;Der Timer0 (8Bit) wird als Zähler verwendet ;Am Pin PD2 werden die Impulse gezählt ;--- Wieso PD2 ????? - Der Zähleingang von Timer/Counter0 ist PB0 !!! Das hat ATMEL festgelegt, das kannst du nicht ändern. ;Wenn Overflow dann PORTB invertieren ;--- Du hast aber keinen Overflow-Interrupt aktiviert, sondern Compare-Match, ;--- das ist was ganz Anderes! Dazu müsstest du dann auch die für Compare zuständigen Register bedienen. ;In Entwicklung .include "m8515def.inc" .def temp = r16 .def ZA = r20 rjmp Reset ;Reset vector reti ;Ext Int 0 reti ;Ext Int 1 reti ;Timer 1 Capture Event reti ;Timer 1 Compare Match A reti ;Timer 1 Compare Match B reti ;Timer 1 Overflow reti ;Timer 0 Overflow ;--- Dieser Int müsste für Timer0-Überlauf aktiviert werden reti ;Serial Transfer complet reti ;USART, Rx Complete reti ;USART, Dataregister Empty reti ;USART, Tx Complete reti ;Analog Compare reti ;External Interrupt Request 2 rjmp ComTimer ;Timer0 Compare Match ;--- Dies ist der falsche Int-Vektor für Timer0-Überlauf reti ;EEPROM ready reti ;Store Programm Memory ready Reset: ldi temp,LOW(RAMEND) ;LOW-Byte der obersten RAM-Adresse out SPL, temp ldi temp,HIGH(RAMEND) ;HIGH-Byte der obersten RAM-Adresse out SPH, temp ;--- Richtig, Stackpointer initialisieren... ldi temp,0xFF out DDRB, temp ;Datenrichtung von Port B einstellen, ;--- Falsch, PB0 muss Eingang bleiben, da es der Zähleingang ist... ldi ZA,0xF0 out PORTB, ZA ;PortAusgabe :--- Willst also 4 Pins (PB4...PB7) "klappern" lassen... ldi temp,0b00000111 ;Kein Vorteiler ;--- Falsch! 111 ist externer Takt an Pin PB0! - Vorteiler gibt es nur, wenn der Timer am Prozessortakt hängt. out TCCR0,temp ldi temp,0xF0 ;Startwert des Timers einstellen: out TCNT0, temp ldi temp, 0b00001001 ;--- Warum aktivierst du Input-Capture von Timer1 ?? (Bit 3) ;--- Und warum Output Compare von Timer0 (Bit 0) ?? - Wolltest du nicht Timer0-Overflow (Bit 1) ?? OUT TIMSK,temp sei MainPro: rjmp MainPro ComTimer: com ZA ;invertiert out PORTB, ZA ;Portausgabe ;--- Damit invertierst du alle 8 Bits, beeinflusst also auch den Pull-Up des Zähleingangs PB0... reti