5V на Arduino. Контакт Data с DS18B20 подключается к любому цифровому пину на Arduino. В данном примере используется пин 2. Единственное, что необходимо добавить из внешней дополнительной обвязки - это подтягивающий резистор на 4.7 КОм. Схема подключения DS18B20 к Arduino показана ниже (в скетче, который будет приведен ниже, проверьте строки 10 и 65. В них указаны пины, к которым вы подключали контакт сигнала с датчика и режим питания!): Паразитное и обычное питание Есть альтернативный вариант подключения - так называемое "
паразитное" подключение. В этом случае мы не будем подключать пин +
5V к пину Vdd на датчике DS18B20. Вместо этого мы подключим контакт Vdd с датчика DS18B20 к GND. Преимущества такого подключения очевидны: нам понадобится всего два коннектора! Недостатком такого подключения является ограничение количества одновременно подключаемых сенсоров. Кабели для подключения должны быть максимально короткими! В общем, с "
паразитным" подключением надо быть аккуратнее и лучше его все-таки не использовать. Результаты (значения температур) могут оказаться самыми неожиданными. Скетч для Arduino и сенсора DS18B20 Устанавливаем библиотеку One
Wire Library После того как вы скачали архив с библиотекой, ее надо импортировать. Для этого в Arduino IDE выберите пункт “Sketch” - “Import Library” - “Add Library” и выберите архив, который вы скачали. Загружаем скетч на Arduino Скетч, который представлен ниже, есть в библиотеке One
Wire, в категории examples. Перейдите в “File” - “Examples” - “One
Wire” и выберите пример “DS18x20_Temperature”. Код программы представлен ниже. Данный пример использует библиотеку One
Wire Library, для того, чтобы собрать данные со всех подключенных датчиков температуры DS28B20 (как подключить несколько сенсоров описано в конце статьи) и отобразить их в окне серийного монитора Arduino IDE. В окне серийного монитора вы увидите примерно следующее: ROM = 28 88 84 82 5 0 0 6A Chip = DS18B20 Data = 1 56 1 4B 46 7F FF A 10 D1 CRC=
D1 Temperature = 21.37 Celsius, 70.47 Fahrenheit No more addresses. ROM = 28 88 84 82 5 0 0 6A Chip = DS18B20 Data = 1 56 1 4B 46 7F FF A 10 D1 CRC=
D1 Temperature = 21.37 Celsius, 70.47 Fahrenheit No more addresses. ROM = 28 88 84 82 5 0 0 6A Chip = DS18B20 Data = 1 56 1 4B 46 7F FF A 10 D1 CRC=
D1 Temperature = 21.37 Celsius, 70.47 Fahrenheit No more addresses.