Zdravím inicializoval jsem jeden vystup PB0 = OC0A to mi funguje:
ldi R16,0b10000011
out TCCR0A,R16 ; Fast PWM Mode, Clear on OC0A
;------------------------------------------VOLBA FRAKVENCE---------------------------------
ldi R16,0b00000010 ;TCCR0B = FOC0A ,FOC0B, –, –, WGM02 ,CS02 ,CS01, CS00
;CS02 CS01 CS00 Description
;0 0 0 No clock source (Timer/Counter stopped)
;0 0 1 clkI/O/(No prescaling)........T=200mikrosec
;0 1 0 clkI/O/8 (From prescaler).............T=2ms
;0 1 1 clkI/O/64 (From prescaler).............T=14ms
;1 0 0 clkI/O/256 (From prescaler).............T=60ms
out TCCR0B,R16 ; Used fclk/256 prescale
;------------------------------------------VOLBA STRIDY--------------------------------
LDI R16,0b10000000 ; ROZSAH HODNOT 0B11111110 = MAX ....0B00000001 = MIN
out OCR0B,R16 ; OCR0A = R16
;------------UKONCENI VOLBY PWM-------------------------------------------------------
Dle pdf MÁ PROCESOR DVA VÝSTUPY pwm ALE NENI MI JASNÉ JAK ZPROVOZNIT DRUHEJ KANÁL pwm TAK ABY BĚŽELY OBA DVA NARÁZ NEZÁVISLE ...DRUHEJ KANÁL PWM = PB1=OC0B
----
PODLE MÉHO TO NEJDE ABY BĚŽELY OBA DVA KANÁL PWM SOUČASNĚ
NEBO SE MÍLÍM ???
Děkuju za odpověď .
Dva PWM u ATTINY13 současně ?
Moderátor: Moderátoři
Dva PWM u ATTINY13 současně ?
el.návrhář HW a SW a DPS
PWM dva kanaly soucasně pro ATTINY 13
funguje to dik pro pana Ondra2
; Initial I/O
ldi R16,0b00010011 ; Set PB0=Output,PB1=Output, PB2=Input, PB3=Input,PB4=Output
out DDRB,R16 ; DDRB=0x13
; Initial PWM KANALů OC0A a OC0B = dvou kanalů
ldi R16,0b10100011 ;VSECHNY KANALY ZAPNUTY
out TCCR0A,R16 ; Fast PWM Mode, VSECHNY KANALY ZAPNUTY
;---------------------------VOLBA FRAKVENCE---------------------------------
ldi R16,0b00000010 ;TCCR0B = FOC0A ,FOC0B, –, –, WGM02 ,CS02 ,CS01, CS00
out TCCR0B,R16 ; Used fclk/256 prescale
;----------------------VOLBA STRIDY kanalu A--------------------------------
LDI R16,0b10000000 ; ROZSAH HODNOT 0B11111110 = MAX ....0B00000001 = MIN
out OCR0A,R16 ; OCR0A = R16
;----------------------VOLBA STRIDY kanalu B--------------------------------
LDI R16,0b11110000 ; ROZSAH HODNOT 0B11111110 = MAX ....0B00000001 = MIN
out OCR0B,R16 ; OCR0A = R16
N100: RJMP N100
Pro ATMEGA 328 kterej ma 6 kanálů PWM nezavislejch
bude tedy pokud budu chtiti mit všech šest PWM v provozu
ldi R16,0b10100011 ;VSECHNY KANALY ZAPNUTY
out TCCR0A,R16 ; Fast PWM Mode, VSECHNY KANALY ZAPNUTY
Snad je to tak dobře ???
Ondro ještě jednou děkuji .
funguje to dik pro pana Ondra2
; Initial I/O
ldi R16,0b00010011 ; Set PB0=Output,PB1=Output, PB2=Input, PB3=Input,PB4=Output
out DDRB,R16 ; DDRB=0x13
; Initial PWM KANALů OC0A a OC0B = dvou kanalů
ldi R16,0b10100011 ;VSECHNY KANALY ZAPNUTY
out TCCR0A,R16 ; Fast PWM Mode, VSECHNY KANALY ZAPNUTY
;---------------------------VOLBA FRAKVENCE---------------------------------
ldi R16,0b00000010 ;TCCR0B = FOC0A ,FOC0B, –, –, WGM02 ,CS02 ,CS01, CS00
out TCCR0B,R16 ; Used fclk/256 prescale
;----------------------VOLBA STRIDY kanalu A--------------------------------
LDI R16,0b10000000 ; ROZSAH HODNOT 0B11111110 = MAX ....0B00000001 = MIN
out OCR0A,R16 ; OCR0A = R16
;----------------------VOLBA STRIDY kanalu B--------------------------------
LDI R16,0b11110000 ; ROZSAH HODNOT 0B11111110 = MAX ....0B00000001 = MIN
out OCR0B,R16 ; OCR0A = R16
N100: RJMP N100
Pro ATMEGA 328 kterej ma 6 kanálů PWM nezavislejch
bude tedy pokud budu chtiti mit všech šest PWM v provozu
ldi R16,0b10100011 ;VSECHNY KANALY ZAPNUTY
out TCCR0A,R16 ; Fast PWM Mode, VSECHNY KANALY ZAPNUTY
Snad je to tak dobře ???
Ondro ještě jednou děkuji .
el.návrhář HW a SW a DPS
Nerozumím řeč tvá kmenelnovy píše: Pro ATMEGA 328 kterej ma 6 kanálů PWM nezavislejch
bude tedy pokud budu chtiti mit všech šest PWM v provozu
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Nícméně to že ta 328 má 6 PWM kanálů neznamená že se všechny zapnou tím samým registrem. U 328 bude ten rozdíl, že těch 6 PWMek bude na 3 timerech (pokud vím má 2x8bit a jeden 16bit timer), takže mód, předděličku atd. je potřeba nastavit pro všechny timery a compare match bloky. Chce to nastudovat datasheet, tam je to pěkně i s blokovýma schématama timerů.