Отговори на тема  [ 3 мнения ] 
Въпрос за Timer0 fast PWM Atmega328 
Автор Съобщение
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Сря Фев 06, 2013 10:25 am
Мнения: 197
Мнение Въпрос за Timer0 fast PWM Atmega328
Здравейте,

Ето какво пише в дейташита:
Цитат:
The fast Pulse Width Modulation or fast PWM mode (WGM02:0 = 3 or 7) provides a high frequency PWM waveform
generation option. The fast PWM differs from the other PWM option by its single-slope operation. The counter
counts from BOTTOM to TOP then restarts from BOTTOM. TOP is defined as 0xFF when WGM2:0 = 3, and
OCR0A when WGM2:0 = 7. In non-inverting Compare Output mode, the Output Compare (OC0x) is cleared on the
compare match between TCNT0 and OCR0x, and set at BOTTOM. In inverting Compare Output mode, the output
is set on compare match and cleared at BOTTOM. Due to the single-slope operation, the operating frequency of
the fast PWM mode can be twice as high as the phase correct PWM mode that use dual-slope operation. This high
frequency makes the fast PWM mode well suited for power regulation, rectification, and DAC applications. High
frequency allows physically small sized external components (coils, capacitors), and therefore reduces total system
cost.
In fast PWM mode, the counter is incremented until the counter value matches the TOP value. The counter is then
cleared at the following timer clock cycle. The timing diagram for the fast PWM mode is shown in Figure 15-6. The
TCNT0 value is in the timing diagram shown as a histogram for illustrating the single-slope operation. The diagram
includes non-inverted and inverted PWM outputs. The small horizontal line marks on the TCNT0 slopes represent
compare matches between OCR0x and TCNT0.


Това, което ми е ясно е следното:
Ако WGM2:0 = 3 тогава TOP 0xFF.
TCNT0 нараства от BOTTOM (0) до 0хFF и пак става 0.
Когато TCNT0 стане равен на OCR0A състоянието изхода става да речем 1 (зависи от инв. моде)

Това, което не ми е ясно:
Ако WGM2:0 = 7, TOP се задава от OCR0A.
TCNT0 нараства от 0 до OCR0A.
С кой регистър се сравнява TCNT0 за да се смени състоянието на изхода ?

Въпроса може да е елементарен или тъп, но навсякъде в нета е copy/pase-вано и не мога да намеря просто информация за всеки режим с какво се сравнява и колко е ТОП-а.


Вто Апр 08, 2014 1:38 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Юли 11, 2007 10:16 am
Мнения: 1730
Мнение Re: Въпрос за Timer0 fast PWM Atmega328
Ей тоя пич се е постарал и е написал много добро ръководство за работа с част перифериите на 8 битовите авр-и.


Сря Апр 09, 2014 10:45 am
Профил
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Сря Фев 06, 2013 10:25 am
Мнения: 197
Мнение Re: Въпрос за Timer0 fast PWM Atmega328
michev написа:
Ей тоя пич се е постарал и е написал много добро ръководство за работа с част перифериите на 8 битовите авр-и.

Този пич съм му чел ръководствата.
Това за ПВМ не е ОК.

Намерих отговор на въпроса си:
На страница 7 тук http://www.csulb.edu/~hill/ee444/Lectures/06_Timer%20with%20PWM.pdf е описан режим 5 и 7.
Максимума се задава от OCRxA, сравнява се с OCRxB.
Кратко и ясно.


Сря Апр 09, 2014 8:38 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 3 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 4 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни