di ESP32 ESP8266 flprog блоки для управления сервоприводом HC-06HC-SR501 KEYPAD MAX6675 MOC3061 SCADA singl.wav UART Датчик давления и температуры Блок для En_AP - включает автоматическое включение точки доступа в случае отсутствия подключения в р Блок для Выбор тестовых параметров Блок для Расширение GPIO с помощью MCP23017 Блок для автомобильного бортового компьютера Блок для бегущая строка адресной светодиодной ленты Блок для вывода даты и времени Data Time Блок предназначен для совместного использования с блоками M Блок для датчик температуры и влажности HDC1080 на шине I2C Блок для детектирования попадания текущего времени в указанный временной интервал Блок для дисплея ST7920 TM1637D6 LCD12864 SSD1306 Блок для записи и чтения ЕЕПРОМ Блок для инициализирует указанный цифровой порт высоким сигналом при включении контроллера Блок для снятия показаний с трансформатора переменного тока Блок для стандартный гистерезис от X1 до X2 Блок для таймер обратного отсчёта Блок для уарт передача данных с ESP на MEGA Блок для установки соединения с программой Virtuino Блок для цифровой паяльной станция с регулятором температуры T12 Блок модуль датчика тока 10А 20A 30А на ACS712 Блок предназначен для подключения матричной клавиатуры 4х3 Блок сглаживает аналоговый сигнал (Integer) Блок служит для создания бегущей строки Блок тахометр для Измерение скорости вращения путём измерения интервала между импульсами Блок №2 для радио модуль 433-315 мГц Блоки для ПИНЫ (do Блоки для удаленного обновления скетча через браузер для ESP8266 ESP32 Блоки разные (прочее блоки) включенных последовательно отсчёт в секундах через модуль WeMos с подключением к WiFi
Блок для Расширение 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 по длительности минимально короткие и шину не перегружают.

 

Опрос

Оцените работу сайта

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