[an error occurred while processing this directive]
RE:...Таймер, прерывание, управлять принудительно пином в режиме ШИМ. Разумеется need HELP!
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Был тут 05 июля 2006 г. 20:19

Итак, бегущая строка...
Mega64, Timer1 в режиме Fast PWM top=OCR1A, выход ШИМ- inverted OC1B, частота 800 Гц.
По TOP вызывается прерывание.
В прерывании происходит последовательная загрузка данных в драйверы светодиодов.
ШИМ управляет общей яркостью.
При сканировании строк (динамическая индикация) имеется факт постсвечения строки в связи с медленным закрыванием транзисторов-ключей строк. Необходимо уменьшать яркость экрана до минимума на интервал времени, включающий в себя захватывание данных в драйверы светодиодов, переключение строки, а также соответствующие задержки.
То есть мне нужно принудительно на этот момент времени явно подать на вывод ШИМ единицу(откл.экрана).

Пробовал делать так: отключал на этот интервал вывод OC1B (COM1B1=0,COM1B0=0), выдавал на порт единицу, задержка, ноль на порт,далее заново включал OC1B.
Однако, получается , если факт совпадения OCR1B приходится на этот временной интервал, сравнения и установки бита ШИМ не происходит.
(Внешне выглядит так, что при последовательном снижении яркости экрана со 100% до 0% (ШИМ 0-100%) наблюдается где-то посередке провал яркости до нуля (100% ШИМ). Пробовал дергать бит FOC- не помогает. Была идея дергать DDR- вроде не получится-подтяжек по выходу нет, паяльником уже не подлезть.

Временно работает так: Яркость 100% - дергаем пином ОС1B, меняем яркость-пин не дергаем, терпим глюки с подсветкой соседних строк.


Как решить проблему?-/


Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание

E-mail: info@telesys.ru