1 Ома 5 кнопок на одном аналоговом входе BMP 280 DS1302 ESP32 ESP8266 GSM SIM800 IOTKASCADA LED MG996R Блок для En_AP - включает автоматическое включение точки доступа в случае отсутствия подключения в р Блок для GPS Блок для Ina226 двунаправленное Напряжение Тока Блок для NRF24L01 модуль беспроводной передачи данных 2 Блок для PID регулятора Блок для Servo Управление Блок для Время числом - в часы Блок для ПИД регулятора Блок для Экстремумы Блок для бегущая строка Блок для времени счетчик чисел округление числа дата числом подсчет дней перевод минут Блок для детектирования попадания текущего времени в указанный временной интервал Блок для сервопривод Блок для снятия показаний с трансформатора переменного тока Блок для супер кнопка ввод числа v.1.0 Блок для таймер обратного отсчёта Блок для управление диммером подключить к ардуино Блок для установки соединения с программой Virtuino Блок для читает карту RFID и выдает ее ID на выход CardID Блок определения влажности психрометрическим методом Блок предназначен для программирования плавного Включения и Отключения освещения управляется от часо Блок синхронизации часов с NTP сервером через WiFi Данный модуль предназначен для синхронизации час Блок служит для создания бегущей строки Блок удаленного обновления для ESP8266 Блоки для Blynk приложение управление устройств ESP8266 ESP32 ARDUINO Блоки для ШИМ Блоки разные (прочее блоки) включенных последовательно заката Солнца отсчёт в секундах
Блок для Расширение GPIO с помощью MCP23017 (CJMCU-2317)
БЛОК ВВОДА_ВЫВОДА MCP23017.
------------------------------------------------------------------------------------------------------------------------------------
Блок осуществляет обмен с регистрами mcp23017 через шину i2c по адресу=addr.
    Может быть установлен любой адрес. Если адрес <0, устройство не используется, 
    Обычно mcp23017 выпускаются с базовым адресом 0x20 (32 десятичный). 
    Это адрес по умолчанию установлен в библиотеке как "базовый адрес".
    Пространство адресов может меняться входами a0,a1,a2 mcp23017 - всего восемь адресов.
    Если аddr в диапазоне 0-7, то к этому значению будет прибавлено значение базового адреса.
---------------------------------------------------------------------------------------------------------------------------------
Блок может работать с библиотекой RT_HW_MAIN.h и без неё. 
    Если до вызова блока шина i2c не инициализирована, блок инициализирует её. 
--------------------------------------------------------------------------------------------------------------------------------- 
Блок содержит два регистра A и B, кадый из которых может настроен на вывод или ввод - всего шесть режимов:
Настройка регистров определяется параметрами пользователя РЕГИСТР_А и РЕГИСТР_B (char):
    'U'    - вход с подтяжкой внутренним регистром к Vcc и с инверсией;
     'u'    - вход с подтяжкой внутренним регистром к Vcc без инверсии;
    'I'    - вход без подтяжки  к Vcc и с инверсией;
    'i'    - вход без подтяжки  к Vcc без инверсии;
    'O'    - выход прямой;
    'o'     - выход с инверсией.
--------------------------------------------------------------------------------------------------------------------------------------
Обмен с устройством осуществляется периодически с периодом, определяемый параметром "ПЕРИОД В ТИКАХ".
Один тик =50мс. Если ПЕРИОД В ТИКАХ = -1, устанавливается значения периода =10 (соотвествует 500 мс).
При обмене с устройством избыточные операции  обмена (не изменились входные данные или регистр не настроен на соответствующий режим) 
    пропускаются. Этим достигается разгрузка шины i2c.
--------------------------------------------------------------------------------------------------------------------------------------
Алгоритм поиска устройства на шине i2c:
    1.При инициализации устанавливается параметр состояния устройства="поиск устройства не оуществлялось" (=0). 
      2. При первом запуске осуществляется поиск устройства на шине i2c. 
         Если устройство найдено, вчерез 50мс) выполняется дополнительный (контрольный) поиск 
               и устанавливается  параметр состояния устройства="устройство обнаружено и готово к работе"(=2).
      3. Если устройство не найдено, то делается дополнительные 4-попытки обнаружения с периодом 100мс.
      4. Если устройство после дополнительных попыток не обнаружено, 
        то устанавливается  параметр состояния устройства="после поиска устройство не обнаружено"(=1).
     5. В дальнейшем поиск устройства осуществляется с периодичностью 1 сек. 
           Эти запросы на шине i2c по длительности минимально короткие и шину не перегружают.

 

Опрос

Вам пригодился материал с нашего сайта?

Другие опросы...