Forum: Mikrocontroller und Digitale Elektronik 1KHz rechtecksignal herstellen Assembler


von Mike D. (hero2992)


Lesenswert?

Bitte könnt ihr mir helfen... bin hier am scheitern...

muss das sehr dringend fertig bekomme... eine 1Khz frequenz am PB1 
meiner Atmega 6 (3,686400 Mhz frequenz)

Ti/Tp = 2

bitte ulm schnelle Hilfe ... habe mit timer 1 und kompade 1 und B 
gearbeitet doch es läuft nichts... hier mein prog was muss ich machen?


.include "m8def.inc"
.org 0x0000

;Reihenfolge sehr wichtig

RJMP Main                  ;Reset Interrupt
RETI
RETI
RETI
RETI
RETI
RJMP TAKT1                  ;Timer1: Komparator A Interrupt
RJMP TAKT1

Main:
LDI R16, 0x04                ;Stack Pointer definieren
OUT SPH, R16
LDI R16, 0x00
OUT SPL, R16

SER R16                    ;PORTB als Ausgang
OUT DDRB, R16

LDI R16, 0xFB              ;Komparator A von Timer1 High-Byte
OUT OCR1AH, R16

LDI R16, 0x35              ;Komparator A von Timer1 Low-Byte
OUT OCR1AL, R16

LDI R16, 0xF6
OUT OCR1BH, R16

LDI R16,0x69
OUT OCR1BL, R16

LDI R16, 0b00000001              ;Prescaler = 1
OUT TCCR1B, R16

LDI R16, 0b00011000              ;Komparator A+B Interrupt aktivieren
OUT TIMSK, R16

SEI                      ;Interrupts global aktivieren

Immer: RJMP Immer

TAKT1:
COM R20                    ;Register invertieren
OUT PORTB, R20                ;Auf den Port ausgeben

CLR R16                    ;Timer1 auf 0 setzen
OUT TCNT1H, R16                ;Muss aber nicht sein
OUT TCNT1L, R16                ;Damit er von vorne anfängt
RETI


danke für eure hilfe

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.