Atmega328p, TimerCounter1

Petr Zapadlo zapik na email.cz
Pátek Září 16 14:40:31 CEST 2022


Děkuji za otestování, to bylo na fyzickém HW a nebo v nějakém SW simulátoru?

Petr

Dne 16. 09. 22 v 12:22 Martin Blaha napsal(a):
> Já jsem testoval ten Váš kód a PWM ven leze ...
>
> lehce zkráceno:
>
> #include <avr/io.h>
>
> int main(void)
> {
>     DDRB|=(1<<PINB2)|(1<<PINB1);
>     TCCR1A |= (1 << COM1A1)|(1 << COM1B1)|(1 << COM1B0);
>     ICR1=255;
>     OCR1A=10;
>     OCR1B=245;
>     TCCR1B |=(1<<WGM13)|(1<<CS12);
>
>     while (1)
>     {
>     }
> }
>
> Výstupy PB1 a PB2
>
>
> MB
>
> Dne 16.09.2022 v 11:54 Petr Zapadlo napsal(a):
>> Zdravím,
>>
>> ano samozřejmě :-) (i když vím, že tohle je typická chyba)
>>
>> Ráno jsem u snídaně testnul kod od Pavla Hudečka a cosi z toho lezlo. 
>> Lehkým pohledem byl rozdíl mezi mým a jeho nastavením jen v tom, že 
>> registr ICR nastavoval po 8bitových půlkách a já jako celek.
>>
>> Až budu mít trochu víc času tak to musím prostestovat více.
>>
>> Díky
>>
>> Petr
>>
>> Dne 16. 09. 22 v 11:12 Martin Blaha napsal(a):
>>> Výstupy máte jako výstupy ?
>>>
>>> DDRB|=(1<<PINB2)|(1<<PINB1);
>>>
>>> MB
>>>
>>> Dne 15.09.2022 v 22:12 Petr Zapadlo napsal(a):
>>>> Zdravím,
>>>>
>>>> zamrzl jsem tady  na nastavení čítače/časovače 1. Nějak se nemohu 
>>>> pohnout z místa.
>>>>
>>>> Když nastavím Mod 1 - WGM13=0, WGM12=0, WGM11=0, WGM10=1, PWM, 
>>>> phase correct, 8-bit, TOP je 0xFF, tak vše funguje jak má. Nicméně 
>>>> bych potřeboval mít jiný TOP, snažím se tedy nastavit Mod 10 -PWM, 
>>>> phase correct, TOP je ICR1, tak pohořím a výstup není žádný. 
>>>> vyzkoušel jsem, že pokud je WGM13 jiné než 0, tak výstup nefunguje 
>>>> - tj nejedou mody 8 a výše.
>>>>
>>>> Inicializace:
>>>>
>>>> //set timer1
>>>>     TCCR1A=0;
>>>>     TCCR1B=0;
>>>>
>>>>
>>>>     TCCR1A |= (1 << COM1A1);
>>>>     TCCR1A |= (1 << COM1B1)|(1 << COM1B0);
>>>>
>>>>     //TCCR1A |=(1<<WGM10);
>>>>     //TCCR1A |=(1<<WGM11);
>>>>     ICR1=255;
>>>>     //TCCR1B |=(1<<WGM12);
>>>>     TCCR1B |=(1<<WGM13);
>>>>
>>>>
>>>>     //TCCR1B |=(1<<CS11);
>>>>     //TCCR1B |=(1<<CS10);
>>>>     TCCR1B |=(1<<CS12);
>>>>
>>>>     OCR1A=10;
>>>>     OCR1B=245;
>>>>
>>>> Netuší někdo v čem je chyba a zakopaný pes?
>>>>
>>>> Díky
>>>>
>>>> Petr
>>>>
>>>> _______________________________________________
>>>> HW-list mailing list  -  sponsored by www.HW.cz
>>>> Hw-list na list.hw.cz
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored by www.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20220916/e52848e6/attachment.htm>


Další informace o konferenci Hw-list