74НС595 BMP-085BMP-180 DS18B20 ESP32 ESP8266 ESPUI HC-06HC-SR501 KEYPAD MAX6675 MOC3061 SCADA UART Датчик давления и температуры Блок для En_AP - включает автоматическое включение точки доступа в случае отсутствия подключения в р Блок для OLED ssd1306 ESP8266rus Блок для R-триггер с задержкой импульса Блок для TFT дисплея ST7735 Блок для Выбор тестовых параметров Блок для Расширение GPIO с помощью MCP23017 Блок для автомобильного бортового компьютера Блок для бегущая строка адресной светодиодной ленты Блок для вывода даты и времени Data Time Блок предназначен для совместного использования с блоками M Блок для датчик температуры и влажности HDC1080 на шине I2C Блок для детектирования попадания текущего времени в указанный временной интервал Блок для пульсовый датчик модуль усилителя сердечного ритма Pulse Sensor Amped 1.4 Блок для сервопривод Блок для снятия показаний с трансформатора переменного тока Блок для таймер обратного отсчёта Блок для установки соединения с программой Virtuino Блок служит для создания бегущей строки Блоки разные (прочее блоки) Для проигрывания музыки формата WAV из файловой системы ESP8266 без использования дополнительных пла Запись данные с ESP8266 в Google-таблицы Отправка GET запроса ESP-32 ESP8266 Проигрываются vaw файлы с расширением( 1.wav Считает количество нажатий кнопки Х9С103 блок для записи и чтение на EEPROM 24C32 2 BYTE и 3 INTEGER включенных последовательно заката Солнца отсчёт в секундах
Блок для Расширение 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 по длительности минимально короткие и шину не перегружают.

 

Опрос

На сайте достаточно материала?

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