Умный диммер. Вопросы реализации.

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

a_kouz
Сообщения: 40
Зарегистрирован: Вт апр 18, 2017 11:25 am
Благодарил (а): 0
Поблагодарили: 8 раз

Re: Умный диммер. Вопросы реализации.

Сообщение a_kouz » Вт июл 11, 2017 2:39 am

olehs писал(а): Неужели приоритет выше, чем у аппаратных прерываний? Вы ногой дергали из основного цикла или из прерывания таймера?
Я дергал пин из основного цикла. Я использовал Ардуино для ESP8266, а не SDK. Обработчики прерывания уже готовы, у меня доступа к ним нет. Единственное что есть, это attachInterrupt/detachInterrupt на пин.

Cудя по тому, что ESP8266 часто теряет хвосты длинных сообщений, приходяших по UART (у меня регулярно обрезал примерно на уровне 80-го байта), а обрабатывается UART по прерываниям, то прерывания выключаются во время обработки. И это при том, что аппаратный буфер на прием 128 байт, а к нему, если верить описанию, довешен программный буфер 256 байт в обработчике прерываний UART. Чтобы побороть беду, мне пришлось останавливать внешний передатчик UART через CTS/RTS на время вызова любых функций TCP/IP обмена в ESP.

Время millis вроде бы считается без пропусков, так что, наверное, не все прерывания глушатся.
За это сообщение автора a_kouz поблагодарил:
olehs (Вт июл 11, 2017 9:33 am)
Рейтинг: 1.16%
RusikOk
Сообщения: 91
Зарегистрирован: Чт июл 24, 2014 1:48 am
Откуда: Украина, Сумы
Благодарил (а): 43 раза
Поблагодарили: 6 раз

Re: Умный диммер. Вопросы реализации.

Сообщение RusikOk » Сб сен 23, 2017 5:43 pm

как успехи?
Ответить