Gast
#1852674
Hallo. Das unten gezeigte Programm habe ich auf einen Atmega 16 gebrannt. Es funktioniert nicht. Was ist falsch?
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
Gruß M.H.
|
Anzeige
|
PWM ATMega16. Was mache ich falsch (DRINGEND)
Gast
#1852674
Hallo. Das unten gezeigte Programm habe ich auf einen Atmega 16 gebrannt. Es funktioniert nicht. Was ist falsch?
Gruß M.H. Momentan hast Du phasenkorrektes PWM aktiviert. Was genau funktioniert nicht?
Gast
#1852734
.include <m16def.inc>
.cseg
.org 0
init:
ldi r16,low(RAMEND)
ldi r17, high(RAMEND)
out spl, r16
out sph, r17
ldi r16, 0xff
out ddra, r16
clr r16
out porta, r16
ldi r16, (1<<pb3)
out ddrb, r16
ldi r16, 100
out ocr0, r16
ldi r16, (1<<WGM00) | (1<<COM01) | (1<<CS01)
out tccr0, r16
s:
; =============================
; delay loop generator
; 4000000 cycles:
; -----------------------------
; delaying 3999996 cycles:
ldi R17, $24
WGLOOP0: ldi R18, $BC
WGLOOP1: ldi R19, $C4
WGLOOP2: dec R19
brne WGLOOP2
dec R18
brne WGLOOP1
dec R17
brne WGLOOP0
; -----------------------------
; delaying 3 cycles:
ldi R17, $01
WGLOOP3: dec R17
brne WGLOOP3
; -----------------------------
; delaying 1 cycle:
nop
; =============================
cbi porta, 0
; =============================
; delay loop generator
; 4000000 cycles:
; -----------------------------
; delaying 3999996 cycles:
ldi R17, $24
xWGLOOP0: ldi R18, $BC
xWGLOOP1: ldi R19, $C4
xWGLOOP2: dec R19
brne xWGLOOP2
dec R18
brne xWGLOOP1
dec R17
brne xWGLOOP0
; -----------------------------
; delaying 3 cycles:
ldi R17, $01
xWGLOOP3: dec R17
brne xWGLOOP3
; -----------------------------
; delaying 1 cycle:
nop
; =============================
sbi porta, 0
rjmp s
Hier sollte gleichzeitig noch ne led blinken. das tut sie aber nicht
Gast
#1852745
ohh jetzt funktioniert alles. Ein wackelkontakt auf dem Steckbrett :) Danke. Schmeiss das Ding in die nächstgelegene Mülltone. Viele Fehler beruhen auf schlechten Kontakten im Steckbrett, so man denn eins verwendet... Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|