Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
27.11.2010, 18:02
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Сообщение от mr_smit
|
Это?
|
Ага. Может диапазон пошире?
|
|
|
|
27.11.2010, 18:07
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Сообщение от mr_smit
|
Но а как без неё??????????
|
Сколько таймеров занято?
Код:
|
PORTC.5 = 1;
Запуск таймера
продолжение программы
........
Процедура обработки прерывания таймера х
PORTC.5 = 0;
ret |
|
|
|
|
27.11.2010, 18:21
|
|
Временная регистрация
Регистрация: 14.09.2009
Сообщений: 87
Сказал спасибо: 6
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Atmega8. Один на яркость, второй на пульт, третий хотел использовать чтобы светодиодом моргать (сигнализация работы МК)
Заметил что:
(cmd == 0b11111000) { // кнопка "Display" - увеличение яркости
(cmd == 0b11011000) { // кнопка "TV" - вкл/выкл диммера
отличаются только 1 битом. Может поэтому иногда при нажатии на увеличение лампа загорается полностью???? Не правильное принятие команды????
Последний раз редактировалось mr_smit; 27.11.2010 в 18:26.
|
|
|
|
27.11.2010, 20:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Сообщение от mr_smit
|
Таймер тикает каждые 96 мкс
|
У меня - каждые 370мкс. Прием ведется по любому перепаду на входе прерывания. В прерывании определяется полярность пришедшего перепада, загружается константа счёта переполнений и ресинхронизируется таймер. В прерывании таймера декреминируется счетчик переполнений таймера. При следующем перепаде от IR приемника анализируется счетчик переполнений и, в зависимости от полярности и времени выполняются нужные действия. Константы пришлось подбирать для надёжного приёма.
Попробуйте организовать счётчик принятых одинаковых пакетов и вычислить количество верных. Результат на индикатор.
Посмотрел код. У вас приём бита ведётся только по спаду. Ненадёжно. Посмотрите у меня - там хоть и на АСМе, но несложно.
|
|
|
|
27.11.2010, 20:45
|
|
Временная регистрация
Регистрация: 14.09.2009
Сообщений: 87
Сказал спасибо: 6
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
TSOP подтягивает линию в 1. Зачем по любому изменению????? По спаду же достаточно.
Что толку смотреть асм, я его вообще не знаю.
|
|
|
|
27.11.2010, 21:59
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Сообщение от mr_smit
|
TSOP подтягивает линию в 1. Зачем по любому изменению????? По спаду же достаточно.
|
Во-первых он дёргает на землю. Во-вторых - чтобы отслеживать ошибки ещё во время приёма. В третьих - у пульта широтно-импульсная передача.
Сообщение от mr_smit
|
Что толку смотреть асм, я его вообще не знаю.
|
Как, не зная железа, можно писать программы к нему?
Странно Вы таймер пользуете - делитель на 256 и 1 такт...
|
|
|
|
27.11.2010, 22:15
|
|
Временная регистрация
Регистрация: 14.09.2009
Сообщений: 87
Сказал спасибо: 6
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Сообщение от omercury
|
Странно Вы таймер пользуете - делитель на 256 и 1 такт...
|
не понял, какой таймер?
|
|
|
|
27.11.2010, 22:22
|
|
Вид на жительство
Регистрация: 21.10.2009
Сообщений: 343
Сказал спасибо: 180
Сказали Спасибо 64 раз(а) в 56 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Сообщение от mr_smit
|
TSOP подтягивает линию в 1.
|
TSOP вроде идет с открытым коллектором, в любом случае подтягивающий резистор в проце включить не помешает.
|
|
|
|
27.11.2010, 22:34
|
|
Вид на жительство
Регистрация: 21.10.2009
Сообщений: 343
Сказал спасибо: 180
Сказали Спасибо 64 раз(а) в 56 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Для вашего пульта, просто сделать проверку на правильный прием посылки.
Data code посылается в прямом и в инвертированном виде, достаточно при декодировании инвертировать и сравнить их.
Посмотрите инфу протокола http://www2.renesas.com/faq/en/mi_com/f_com_remo.html
|
|
|
|
27.11.2010, 22:35
|
|
Временная регистрация
Регистрация: 14.09.2009
Сообщений: 87
Сказал спасибо: 6
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
Re: Задержки при плавной регулировке. Диммер с ДУ
Я имею ввиду что в "режиме ожидания" на выходе 1, а когда приходит команда, то к нулю подтягивается.
А вот эта строчка в коде, по вашему что делает?
Код:
|
if ((cmd_1 + cmd_0) == 0xFF) { //проверили правильность приема
cmd = cmd_1;
} |
Последний раз редактировалось mr_smit; 27.11.2010 в 22:38.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:12.
|
|