![]() |
|
|
#11 | ||
|
Senior Member
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 801 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Ну теперь для меня стало ясно где искать. Чтение яндекса показало, что IRRemove.h использует прерывания во всю. Например участники дружественного форума mebitek и Chip (
)еще в 2011 году выяснили, что IrRemove и MsTimer2 одно и тоже прерывание Timer2 и несовместимы.Итого, прерывания в ардуине не имеют приоритета -соответственно пока обрабытывается одно из прерываний - в твоем случае чтение ИК датчика - прерывания диммера не работают. Чтоб не мигало нужна ИК библиотека без прерываний(но я такой не нашел -может Вам повезет) . Ну и решить проблемы немосместимости библиотек MsTimer2 её можно заменить на TimerOne или использовать многозадачность ардуино версии 2 А теперь о грустном Цитата:
После оптимизации кода чтения пульта ДУ надо измерить время его обработки, соответственно увеличить интервал таймера Цитата:
Последний раз редактировалось Bulatovor; 25.02.2015 в 20:57. |
||
|
|
|
| Здесь присутствуют: 5 (пользователей: 0 , гостей: 5) | |
|
|