Немного повозившись со своим sketch-ем, я пришел к выводу, что не работает инициализация однопроводной шины. Внимательно присмотрелся - а там стоял вызов PulseIn:
if (!pulseIn(dataPin,HIGH,70)) return false;
if (!pulseIn(dataPin,LOW,280)) return false;
Прочитал внимательно релиз-ноты, вот что изменилось:
Modifying pulseIn() to wait for a transition to start timing (i.e. ignoring any pulse that had already started when the function was called)
То есть, говоря по-русски, теперь PulseIn ждет начала импульса, и злостоно игнорирует ситуацию, когда ожидаемый уровень уже установлен (не запускает таймер). Заменил на строчку:
pulseIn(dataPin,LOW,70);
... и всё тут же заработало! Так что релиз 0013 - вполне жизнеспособный (ну кто бы сомневался?)
Комментариев нет:
Отправить комментарий