AVR ШИМ и ноль

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Собутыльник Кота
Аватара пользователя
Сообщения: 2512
Зарегистрирован: Пн апр 06, 2009 19:33:29
Откуда: Молдова, Кишинев

Сообщение BCluster »

Привет всем. При записи в OCRxx=0, если таймер работает в режиме Fast PWM на выходной ноге болтается совсем не ноль, собственно как и написано в даташите. Зато вот как все таки сделать так, чтоб на выходе был ноль в даташите я не нашел. Сейчас я инвертировал выход, и тогда OCRxx=0xFF дает на выходе ноль. Но есть ли другой способ?
Контактная информация:
Реклама
Открыл глаза
Сообщения: 79
Зарегистрирован: Сб май 08, 2010 09:33:42

Сообщение of_silence »

Могу такой способ предложить. Проверяешь переменную, которую записываешь в таймер. Если равна нулю, просто активизируешь нормальную работу ножки порта, а в регистр выхода просто занеси 0.
Хотя способ с интертированием проще - если не нужен коэффициент заполнения = 1 все отлично будет работать :)
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....

Сообщение Meteor »

Не забывайте что уровень логического нуля, не есть эквивалент напряжению 0 В. Выход МК имеет полное право при выводе логического нуля выдавать напряжение от 0 до 0,5...0,7 В в зависимости от тока. Так что смотрите даташит. Если укладываетесь - все нормально.
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2512
Зарегистрирован: Пн апр 06, 2009 19:33:29
Откуда: Молдова, Кишинев

Сообщение BCluster »

Да полное заполнение это ерунда, у мя светики, там незаметна эта разница совершенно...

Meteor, да с этим все хорошо ) Там проблема в том, что если регистр устанавливаешь в ноль - это специальное состояние, когда узкие пики тактируемые таймером. Если я просто ножку в ноль опускаю - нету проблем, тру ноль.
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....

Сообщение Meteor »

Фу ты еле вспомнил. В шите описано, применяя режим быстрого ШИМ при крайних вариантах (0x00 и 0xFF в зависимости от того что активное 0 или 1) будут проявляться "всплески" длительностью в один период.
Сам столкнулся с этой проблемой года 2 назад. Было критично и ушел на ШИМ с точной фазой
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Контактная информация:
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2512
Зарегистрирован: Пн апр 06, 2009 19:33:29
Откуда: Молдова, Кишинев

Сообщение BCluster »

С точной фазой в итоге получается тоже самое? Или есть какие-то отличия в работе?
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....

Сообщение Meteor »

С точной фазой ШИМ в 2 раза медленнее, но при этом нет "всплесков" на крайних значениях
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2512
Зарегистрирован: Пн апр 06, 2009 19:33:29
Откуда: Молдова, Кишинев

Сообщение BCluster »

Ок, понял, спасибо. Попробую и так )
Контактная информация:
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»