Автор |
Сообщение |
|
|
Заголовок сообщения: |
Re: 10ти битный ШИМ ATMEGA8 |
Цитата |
|
Протеус, мать его. Железо адекватно.
Протеус, мать его. Железо адекватно.
|
|
|
 |
Добавлено: 27 фев 2016, 17:08 |
|
|
 |
|
|
Заголовок сообщения: |
Re: 10ти битный ШИМ ATMEGA8 |
Цитата |
|
Это нормально. В каждом описании на контроллер, имеющий таймер-счетчик, в режиме ( быстрый ШИМ ) эта ситуация упоминается.
Выписка из DATASHEET:
Fast PWM Mode.
" The extreme values for the OCRnA Register represents special cases when generating a PWM waveform output in the fast PWM mode. If the OCRnA is set equal to BOTTOM, the output will be a narrow spike for each MAX+1 timer clock cycle. Setting the OCRnA equal to MAX will resultin a constantly high or low output (depending on the polarity of the output set by the COMnA1:0 bits.) "
А насчет такого:
256->OCR1A 512->OCR1A 768->OCR1A
Это возможно неправильные настройки режима ШИМа, либо действительно глюки Протеуса.
Это нормально. В каждом описании на контроллер, имеющий таймер-счетчик, в режиме ( быстрый ШИМ ) эта ситуация упоминается.
Выписка из DATASHEET:
Fast PWM Mode.
" The extreme values for the OCRnA Register represents special cases when generating a PWM waveform output in the fast PWM mode. [color=#FF4000]If the OCRnA is set equal to BOTTOM, the output will be a narrow spike for each MAX+1 timer clock cycle.[/color] Setting the OCRnA equal to MAX will resultin a constantly high or low output (depending on the polarity of the output set by the COMnA1:0 bits.) "
А насчет такого:
256->OCR1A 512->OCR1A 768->OCR1A
Это возможно неправильные настройки режима ШИМа, либо действительно глюки Протеуса.
|
|
|
 |
Добавлено: 26 фев 2016, 17:30 |
|
|
 |
|
|
Заголовок сообщения: |
10ти битный ШИМ ATMEGA8 |
Цитата |
|
Таймер1 включен в Fast PWM, 10-bit. Вроде как всё работает, но если в OCR1A (или OCR1B, тот же результат) забить значения, когда младший байт (OCR1AL) равен нулю - на выходе короткие импульсы. Т.е. три значения: 256->OCR1A 512->OCR1A 768->OCR1A дают короткие импульсы на выходе (вдвое короче ,чем при 1->OCR1A). Остальные числа дают адекватный результат.
Моделирую в Протеусе. Железка сгорела ( ) , заказал, жду. Может это глюк Протеуса? Будет железо - проверю. А пока... Чёт я не догоняю. Может кто сталкивался?
Таймер1 включен в Fast PWM, 10-bit. Вроде как всё работает, но если в OCR1A (или OCR1B, тот же результат) забить значения, когда младший байт (OCR1AL) равен нулю - на выходе короткие импульсы. Т.е. три значения: 256->OCR1A 512->OCR1A 768->OCR1A дают короткие импульсы на выходе (вдвое короче ,чем при 1->OCR1A). Остальные числа дают адекватный результат.
Моделирую в Протеусе. Железка сгорела ( ) , заказал, жду. Может это глюк Протеуса? Будет железо - проверю. А пока... Чёт я не догоняю. Может кто сталкивался?
|
|
|
 |
Добавлено: 26 фев 2016, 03:21 |
|
|
 |
|