kluci prosim help nějak mi nefachči program a nemužu najít chybu...je to pro atmega8 a ma to byt 36khz oscilator obdelníkového pruběhu je to pro infrasenzor ma to vybuzovat IR ledky aby to IR přijmač s tvarovačem zachytil byl bych vam velice zavázán už dlouho nad tim kuťím
.nolist
.include "m8def.inc"
.list
;NASTAVENÍ VÝSTUPNÍHO PORU
ldi R16, 11111111
out DDRB, R16
;NASTAVENÍ VZESTUPNÉ HRANY
reset:
LDI R19, 1
OUT PORTB, R19
;NASTAVENÍ REGISTRŮ PRO Časovač
LDI R17, 110 ;ZDE SE UKLÁDÁ VSTUPNÍ HODNOTA
LDI R16, 1
;start časovačede
out TCCR0, R16
;časovač
skok:
in R18, TCNT0
cp R18, R17
brne skok
;nastavení zestupné hrany
out portb, R20
out TCCR0, R20
out TCNT0, R20
;start časovače po vymazání
out TCCR0, R16
skok2:
in R18, TCNT0
cp R18, R17
brne skok2
jmp reset
oscilator 38khz
Moderátor: Moderátoři
Kód: Vybrat vše
;36kHz on Portb.1
.include "m8def.inc"
.equ tccr1a_adr = 0x4f
.equ tccr1b_adr = 0x4e
.equ ocr1al_adr = 0x4a
ldi r16,(1<<WGM12) | (1<<CS10) ;PWM mode 4
sts tccr1b_adr,r16 ;
ldi r16,(1<<COM1A0) ;toggle output on compare match
sts tccr1a_adr,r16
ldi r16,139 ;set output compare register, 36kHz for 10MHz crystal
sts ocr1al_adr,r16
main:
;...
;start output:
sbi ddrb,1
;...
;stop output
cbi ddrb,1
rjmp main