timer intervall

;; (c) david vajda
;; 07/21/2026
;; m8 timer/counter interrupt

.include "m8def.inc"

.org 0x000
rjmp RESET
.org OVF1addr
rjmp OVF1hndlr

RESET:
ldi r16, HIGH (RAMEND)
out SPH, r16
ldi r16, LOW (RAMEND)
out SPL, r16
ldi r16, 0xff
out DDRB, r16

;; ldi r16, (CS)?? ics csi cis???
;; 2, 1, 0 und kombi

;; jetzt habe ich festgestellt, aber das wusste ich ja
;; CS: heisst, clock select, wie chip select, habe ich ja
;; runter gebetet. allerdings: verwechselt, externes interrupt...
ldi r16, (1 << CS12) | (1 << CS10)
out TCCR1A, r16
ldi r16, (1 << TOIE1)
out TIMSK, r16

sei

ldi r16, 0xff
out PORTB, r16
main001:  rjmp main001

OVF1hndlr:
dec r16
out PORTB, r16
reti

Image image0

Image image10

Image image11

Image image12

Image image1

Image image2

Image image3

Image image4

Image image5

Image image6

Image image7

Image image8

Image image9