/* Colani.nl: Zoek de adressen van DS18B20 Temperatuur Sensoren Bekijk het adres in de seriele monitor, kopieer en plak dit in een tekstfile of ander bestand voor later gebruik. Vragen: arduino@colani.nl Verbindingen: DS18B20 aansluitingen (van links naar rechts, pinnen naar beneden, platte kant naar boven) - Links = GND - Midden = Signaal (Pin 3): (met een 3.3K aan +3 Volt of een 4.7K weerstand aan +5 Volt) - Rechts = +5 of +3.3 Volt Deze sketch zoekt naar 1-wire (1 draads) sensoren van het type DS18B20 en laat hun adressen (serienummer) zien in de Seriele Monitor in een formaat dat te gebruiken is in Arduino sketches. Gebaseerd op een voorbeeld van: http://www.hacktronics.com/Tutorials/arduino-1-wire-address-finder.html */ /*-----( Importeren libraries )-----*/ #include /*-----( Defineren constanten en pin-nummers )-----*/ #define SENSOR_PIN 3 // Elke pin van 2 tot 12 (geen 13) en A0 tot A5 /*-----( Declare objects )-----*/ OneWire ourBus(SENSOR_PIN); // Maken 1-wire object void setup() /****** SETUP: Start 1 keer ******/ { Serial.begin(9600); discoverOneWireDevices(); // Hier is het te doen! }//--(einde setup )--- void loop() /****** LOOP: Blijft constand ******/ { // Hier gebeurt niets } /*-----( Verklaren Functies )-----*/ void discoverOneWireDevices(void) { byte i; byte present = 0; byte data[12]; byte addr[8]; Serial.print("Zoeken naar 1-Wire (1 draads) DS18B20 sensors...\n\r");// "\n\r" is Nieuwe regel while(ourBus.search(addr)) { Serial.print("\n\r\n\rGevonden\'1-Wire\' sensor met adres:\n\r"); for( i = 0; i < 8; i++) { Serial.print("0x"); if (addr[i] < 16) { Serial.print('0'); } Serial.print(addr[i], HEX); if (i < 7) { Serial.print(", "); } } if ( OneWire::crc8( addr, 7) != addr[7]) { Serial.print("CRC is niet valide!\n\r"); return; } } Serial.println(); Serial.print("Klaar"); ourBus.reset_search(); return; } //*********( EINDE )***********