tady jen tak od oka (nezkousel jsem to)
tohle musi byt na te konkretni adrese (lepe receno staci tam dat rjmp nekam, kam umistis zbyly obsah)
.ORG 0x12
cli
cbi PORTD,7
reti
nastaveni casovace, je nutne zavolat predtim, nez zacnes pouzivat dotycnou funkci. pocet tiku pro 70ms pri f=16MHz je 446h
nastaveni: clr R16
out TCCR1A,R16
ldi R16,(1<<WGM12)|(1<<CS12)|(1<<CS10)
out TCCR1B,R16
in R16,TIMSK
ori R16,(1<<OCIE1A)
out TIMSK,R16
ldi R16,$04
out OCR1AH,R16
ldi R16,$46
out OCR1AL,R16
ret
a timhle uz jenom zavolas samotny pulz a muzes si dal hrat v programu. o ukonceni pulzu se postara preruseni
pulz: sbi PORTD,7
clr R16
out TCNT1H,R16
out TCNT1L,R16
sei
ret
samozrejme by to slo udelat tak, ze to preruseni bude zapinat a vypinat primo ten pin, ale priznam se ze uz jsem liny
jo a pokud bys rad ten pocet tiku pro jinou frekvenci, tak v tomto pripade 1024/16M (nastavena delicka v TCCR1B). vyjde 0.000064s coz je cas jednoho tiku. no a tim vydelis tech 70ms a voila … 446 tiku timeru da lehounce pres.