В данном проекте будет показано, как использовать однопроводный (1-Wire) датчик влажности почвы MT05S с Arduino, ESP32 и Raspberry Pi, используя только одну линию ввода/вывода.
В данном проекте будет показано, как использовать однопроводный (1-Wire) датчик влажности почвы MT05S с Arduino, ESP32 и Raspberry Pi, используя только одну линию ввода/вывода.
Несмотря на широкое распространение стандартных микроконтроллеров, микросхемы с переконфигурируемой периферией типа PSoC сегодня набирают популярность. Благодаря их возможностям можно довольно легко реализовать нестандартные или не столь широко распространенные интерфейсы.
В данном материале будет показано, как можно подключить PSoC4 к датчику температуры и влажности DHT11 по интерфейсу 1-Wire.
Интерфейс 1-Wire представляет собой двунаправленную шину, по которой устройства подключенные к ней осуществляют передачу данных на очень малых скоростях. Стандартной скоростью считается 15.4 Кб/с, максимальный показатель скорости данного интерфейса 125 Кб/с. В шине применяются только два провода, один из которых общий (земля), а по другому передается как питание, так и данные. Использование всего двух проводов является большим плюсом данного интерфейса. Еще одним плюсом является большая дальность передачи данных. В некоторых случаях она может составить до 300 метров. Этого можно добиться, если для передачи задействовать кабель типа "витая пара". Также топология должна представлять собой общую шину, а не свободную топологию. И специальный драйвер должен осуществлять активную подтяжку линии с учетом тока в ней. Протокол 1-Wire обычно используется для общения с различными датчиками температуры, например, DS18S20. Также он применяется и в датчиках заряда аккумулятора и в некоторых светодиодных драйверах. Но для большинства электронных устройств такой протокол не является стандартным, как, например, UART, SPI или I2C. Эти интерфейсы сегодня можно встретить практически в любом современном микроконтроллере. В связи с этим имеется проблема взаимосвязи устройств, поддерживающих протокол 1-Wire, и устройств с другими протоколами, например, UART, который распространен больше всех. Но, к счастью, можно сделать простой переходник с 1-Wire на UART.
Стандартная схема конвертера состоит из двух биполярных транзисторов NPN-типа и двух резисторов, при этом вывод TX соединяется с базой первого транзистора, а RX с коллектором второго и с единственным информационным проводом протокола 1-Wire. Но можно сделать еще проще.