Датчик влажности HS1101 на 7 сегментный индикатор

Пользовательские блоки для вывода информации на дисплеи и индикаторы, управления тачскрином, различными клавиатурами, добавления русских шрифтов для вывода на дисплеи типа HD44780
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Ответить
dupe
Рядовой
Сообщения: 1
Зарегистрирован: 15.02.2020{, 20:19}
Репутация: 0
Имя: Григорий

Датчик влажности HS1101 на 7 сегментный индикатор

#1

Сообщение dupe » 16.02.2020{, 19:03}

Добрый день,
прошу помочь "допилить" пользовательский блок для датчика влажности HS1101.
Стандартный скетч на сайте производителя измеряет постоянную RC-цепи и выводит в UART расчетное значение влажности в виде целочисленного значения: https://www.parallax.com/downloads/hs11 ... duino-code
Пытаюсь написать пользовательский блок в FLP с кодом в loopSection следующего содержания:

long result = 0;
pinMode(sensorPin, OUTPUT);
digitalWrite(sensorPin, HIGH);
delay(1);
pinMode(sensorPin, INPUT);
digitalWrite(sensorPin, LOW);
while(digitalRead(sensorPin)){
result++;
}
long RCdelay = result;
RCdelay = RCdelay * Calib ;
int HUM = (RCdelay - RHconstant) / 2400;
delay (100);

В результате на индикатор выводятся значащие цифры отдельно для каждого разряда (сегмента) с задержкой, указанной в последней строке кода, а не целиком как, например, для блока датчика температуры DS18b20. Пытался выводить не Int, а String, результат - тот же: "бегущая строка" из цифр показаний датчика.
Помогите "зафиксировать" на индикаторе обе значащие цифры.
Спасибо.
Вложения
sauna meter_3.flp
(112.8 КБ) 79 скачиваний

Ответить

Вернуться в «Дисплеи, индикаторы и клавиатуры»