En este ejemplo vamos a leer las temperaturas que marcan tres sensores DS18B20. Los tres sensores se conectan al mismo pin digital de Arduino.
// Incluimos las librerías OneWire y DallasTemperature#include<OneWire.h>#include<DallasTemperature.h>// Los tres sensores están conectados al pin digital 2 de Arduinoconstint ONE_WIRE_BUS =2;// La comunicación con los sensores la establecemos a través de una instancia que llamamos oneWireOneWireoneWire(ONE_WIRE_BUS);// Para referirnos a los sensores usamos una instancia que llamamos sensorDallasTemperaturesensor(&oneWire);voidsetup(){// Iniciamos la comunicación con el monitor serieSerial.begin(9600);// Inicializamos los sensoressensor.begin();}voidloop(){// Solicitamos a los sensores una nueva medida de la temperaturasensor.requestTemperatures();// La función getTempCByIndex(i) nos da la temperatura del sensor i+1// i = 0 es el primer sensor// i = 1 es el segundo sensor// i = 2 es el tercer sensor// Imprimimos las temperaturas en el monitor seriefor (int i =0; i <3; i++){Serial.print("Temperatura ");Serial.print(i+1);Serial.print(": ");Serial.print(sensor.getTempCByIndex(i));Serial.println(" °C");}Serial.println("----------------------------");delay(1000);}