![]() |
![]() |
![]() |
Общие сведения
В этом уроке мы рассмотрим работу с цифровым датчиком 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);
} 



Обсуждение