Ins Assembler kenn ich mich nicht aus...aber ich glaub mal das PB3 als Ausgang geschalten wird weil das die PWM Kanäle sind!? Kommt auf den mik. an...
Mfg.Attila Földes
Hallo,
Kann mir wer den code erklären, den mir mal wer geschrieben hat?
Ich kapier dass nicht warum ich unbedingt PB3 auf ausgang schalten soll!
Warum kann ich nicht z.b.: PB1 auf ausgang schalten und dort die PWM ausgeben?
Hat jemand eine erklärung, oder der der es mir malgepostet hat!
.org 0x0000
rjmp init
init:
ldi R16, HIGH(RAMEND)
out SPH, R16
ldi R16, LOW(RAMEND)
out SPL, R16
ldi R16, (1<<CS00) | (1<<WGM00) | ( 1<<COM01 )
out TCCR0, R16
ldi r16, (1<<Pinb3)
out ddrb, r16
ldi r16, 128
out OCR0, r16
loop:
ldi r16, 0x80
out OCR0, r16
rjmp loop
mfg
Michael
Ins Assembler kenn ich mich nicht aus...aber ich glaub mal das PB3 als Ausgang geschalten wird weil das die PWM Kanäle sind!? Kommt auf den mik. an...
Mfg.Attila Földes
Error is your friend!
1. www.atmel.com und das entsprechende Datenblatt besorgenZitat von Exodus
2. im Datenblatt: I/O Ports -> Alternate Port Functions -> Alternate Functions of Port B
Das anschauen und gegebenfalls noch mal den Abschnitt des Timer 0 durchlesen.
Da stehen alle Antworten drinne.
Ach ja, und hier noch die kurze Version:
Weil es eben nicht vorgesehen ist, die PWM auf einen beliebigen ausgang zu legen und der PB3 daher fest mit dem Timer verdrahtet ist.
Habs gechekt!!!
Im datenblatt unter IO-PORT: Timer/Counter0 output compare match output
im Datenblatt und timer: The actual OC0 value will only visible on the port pin if the data direction for the port pin is set as output!
stimmts?
MFG
Michael
Jupp
Datenblätter sind halt schon was schönes *g*.
mfg
bekoeppel
Und sie dreht sich doch...
http://www.muasch.com
http://robotik.muasch.com
Definitiv kein Bascom-User
Lesezeichen