Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту


 
Опции темы

Крайние значения ШИМ в Proteus

Непрочитано 12.03.2011, 12:25  
DimanVIP
Временная регистрация
 
Регистрация: 20.05.2010
Сообщений: 64
Сказал спасибо: 8
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
DimanVIP на пути к лучшему
По умолчанию Крайние значения ШИМ в Proteus

Приспичило мне сделать ПИ(или как его там) регулятор температуры для сушилки фоторезиста.
Проект уже полностью написан и отлажен в Протеусе.
НО заметил я в нем одну странность, при минимальном (0) и максимальном (250 - так настроен таймер) значениях, ШИМ полностью не выключается и не полностью включается.
Т.е. при значении 0 на его осцике видно что на выходе не чистый 0, а проскакивают еще короткие 1. Тоже со значением 250, только наоборот.
Вот сижу и думаю, толи Протос мозги в очередной раз пудрид, то ли так и задумано в АВРовских таймерах. Хотя во всех "учебниках" по АВР написано что все должно быть чисто.

Вообщем если есть у кого какие мысли....

З.Ы. Инициализация таймеров стандартная, сгенерированная кодевиженовским генератором.
Реклама:
DimanVIP вне форума  
Непрочитано 12.03.2011, 13:15  
niXto
Почётный гражданин KAZUS.RUN
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Крайние значения ШИМ в Proteus

Когда в регистре сравнения число 255 (максимум) - на выходе постоянный уровень. Когда 0 - на выходе импульсы длиной в 1 тик
niXto вне форума  
Непрочитано 12.03.2011, 15:55  
DimanVIP
Временная регистрация
 
Регистрация: 20.05.2010
Сообщений: 64
Сказал спасибо: 8
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
DimanVIP на пути к лучшему
По умолчанию Re: Крайние значения ШИМ в Proteus

Значит дело в протосе...
Еще помню когда в регистр загонял 255 (максимум) он мне на выходе давал чистый 0.
Ну да бог с ним... Как можно с этим косяком бороться, не в протосе, а в реале? Какие могут быть варианты?
Тормозить таймер не вариант, он еще используется для отсчетов времени, поэтому и максимум у него 250.
DimanVIP вне форума  
Непрочитано 13.03.2011, 11:06  
DimanVIP
Временная регистрация
 
Регистрация: 20.05.2010
Сообщений: 64
Сказал спасибо: 8
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
DimanVIP на пути к лучшему
По умолчанию Re: Крайние значения ШИМ в Proteus

А если использовать режим Phase Correct PWM Mode?
DimanVIP вне форума  
Непрочитано 13.03.2011, 11:33  
mironov
Вид на жительство
 
Регистрация: 07.03.2005
Сообщений: 300
Сказал спасибо: 13
Сказали Спасибо 117 раз(а) в 62 сообщении(ях)
mironov на пути к лучшему
По умолчанию Re: Крайние значения ШИМ в Proteus

Сообщение от DimanVIP Посмотреть сообщение
Вот сижу и думаю, толи Протос мозги в очередной раз пудрид, то ли так и задумано в АВРовских таймерах. Хотя во всех "учебниках" по АВР написано что все должно быть чисто.
PROTEUS не при чем. Работает правильно. Вот перевод даташита, сделанный Беловым. То же самое у меня и на ATmega8.
Манипулирование со вторым абзацом не привело ни к чему хорошему.
Миниатюры:
Нажмите на изображение для увеличения
Название: шим.JPG
Просмотров: 68
Размер:	19.9 Кб
ID:	19701  
mironov вне форума  
Непрочитано 13.03.2011, 14:04  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Крайние значения ШИМ в Proteus

Сообщение от DimanVIP Посмотреть сообщение
Значит дело в протосе...
Еще помню когда в регистр загонял 255 (максимум) он мне на выходе давал чистый 0.
Дело в незнании матчасти. Вам уже объяснили - как оно работает.

"разруха не в клозетах, а в головах" - (Профессор Преображенский. "Собачье сердце" М.А.Булгаков.)

Последний раз редактировалось omercury; 13.03.2011 в 14:10.
omercury вне форума  
Непрочитано 15.03.2011, 10:34  
DimanVIP
Временная регистрация
 
Регистрация: 20.05.2010
Сообщений: 64
Сказал спасибо: 8
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
DimanVIP на пути к лучшему
По умолчанию Re: Крайние значения ШИМ в Proteus

Теорию я более-менее знаю, и там было указано что таких "косяков" нет.

Ну да бог с ними... Возьму этот момент на заметку.

Вообщем перевел режим работы на Phase Correct и все стало норм.
DimanVIP вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Proteus не сбрасывает флаг RBIF в регистре INTCON korpinbox Proteus 3 23.08.2011 23:33
Проблема с аппаратным ШИМ в мега169 Archer07 Микроконтроллеры, АЦП, память и т.д 3 09.07.2010 15:40
Proteus 7.6 SP4 вышел. Обновляемся! Easyrider83 Proteus 7 16.02.2010 21:26
LPT b PROTEUS romshe Proteus 0 01.11.2009 18:22
[Решено] Проблема с eeprom в Proteus Memfis666 Proteus, KiCAD и другие ECAD 1 01.10.2009 15:38


Часовой пояс GMT +4, время: 05:48.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.