Уважаемые форумчане.
Подскажите, как сформировать 3 канала ШИМ в tyni13 для управления RGB светильником.
И как заставить тикать таймер в этойже МК с дискоетностью 1 сек?
Программирование ATMEL в BASCOM. |
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » Программирование ATMEL в BASCOM. » Таймеры, ШИМ и все про них » ШИМ tyni13
Уважаемые форумчане.
Подскажите, как сформировать 3 канала ШИМ в tyni13 для управления RGB светильником.
И как заставить тикать таймер в этойже МК с дискоетностью 1 сек?
У неё только два PWM канала и один 8-бит таймер, значит всё програмно.
Один счётчик на канал PWM и один для временных отсчётов.
Напртмер: настроили таймер на 10мс и через каждые 100 отсчётов будете иметь
секунду, аналогично и с PWM каналами. Взяли, например, разрядность 16 и
считаете от 0 до 15 и в каждом такте сравниваете заданное значеие PWM со
значением счётчика. Например, задано значение 10 - выход дожен быть
включён на 10 тактов из 16, при 0 всё погашено, при 15 полная яркость.
Спасибо, будем разбираться.
Что-то немного затупил. Как настроить таймер на 10 мс.? Для расчета таймера программу avrcalc и немогу никак настроить.
Подскажите как добавить файл?
Я использую не avrcalc а запускаю оболочку iccavride.exe.
В меню Tools выбираю Application Builder и здесь всё просто.
Выбираешь МК, частоту и на закладке таймера ставишь нужные
значения и смотришь результат.
Желательно установить не более 2 мс для 8-бит или 1 мс для 16-бит, чтобы
не было мерцания.
Смотрим для 1 мс, TCNT0 = 0x6B, TCCR0A = 0x00, TCCR0B = 0x03
TIMSK0 = 0x02
Отредактировано alex_r61 (2012-09-07 23:51:29)
Вы здесь » Программирование ATMEL в BASCOM. » Таймеры, ШИМ и все про них » ШИМ tyni13