Общие сведения
В этом уроке мы рассмотрим работу с цифровым датчиком 18b20. Датчик передаёт данные по протоколу OneWire, те есть по одному проводу. То есть к датчику необходимо подключить питание (VCC, GND) и одну линию данных. Для корректной работы этой линии необходимо "подтянуть" её к положительному напряжению при помощи резистора с сопротивлением от 1 кОм. Для удобства работы и подключения мы воспользуемся Trema-модулем Pull Switch UP/DOWN.
Для этого урока нам понадобится:
Для работы данных примеров в Pi Pico необходимо загрузить прошивку MicroPython и установить Thonny IDE, о том как это сделать можно прочитать в этой статье https://lesson.iarduino.ru/page/pi-pico-python-ide
Подключение
Подключим Trema-модуль Pull Switch UP/DOWN согласно таблице
Вывод модуля | Вывод Pi Pico |
---|---|
Vcc | 3V3(OUT) |
GND | GND |
S | GP15 |
Установим переключатель на модуле в положение UP и подключим датчик
Установка библиотеки
Откроем менеджер библиотек
Введём в поле поиска DS18B20 и нажмём "Установить"
Выводим температуру через интервал
Скрипт периодически выводи показания датчика в оболочку. В данном скрипте используются все те же функции, что и выше.
#include <DS18B20.h> #define DS_PIN 15 DS18B20 ds(DS_PIN); void setup() { Serial.begin(155200); while(!ds.selectNext()) { Serial.println("Датчик не найден"); delay(1000); } } void loop() { Serial.print("Температура: "); Serial.print(ds.getTempC()); Serial.println(" C"); delay(500); }
Обсуждение