Stap 5: Externe sensor - arduino code
De code van de arduinoDenk je dat je nodig een privacy-bibliotheek - vindt u een link naar het hier:
http://Playground.Arduino.CC/Learning/OneWire
Arduino-code >>>>>>>
#include < OneWire.h >
int DS18S20_Pin = 2; DS18S20 signaal pin op digitale 2
Temperatuur chip i/o
Privacy ds(DS18S20_Pin); op digitale pin 2
VOID Setup
{
de seriële communicatiepoorten te initialiseren:
Serial.begin(19200);
Initialiseer de ledPin als uitgang:
}
void loop {}
zweven temperatuur = getTemp();
Serial.println(Temperature); vertraging (500);
}
float getTemp() {}
geeft als resultaat de temperatuur van een DS18S20 in graden Celsius
bytegegevens [12];
byte addr [8];
Als (! ds.search(addr)) {}
geen meer sensoren op de keten, reset zoeken
DS.reset_search();
Return-100;
}
Als (OneWire::crc8 (addr, 7)! = addr[7]) {}
Serial.println ("CRC is niet geldig!");
Return-1000;
}
Als (addr [0]! = 0x10 & & addr [0]! = 0x28) {}
Serial.Print ('apparaat wordt niet herkend');
Return-1000;
}
DS.reset();
DS.Select(addr);
DS.write(0x44,1); Start conversie, met kracht van de parasiet op eind
byte aanwezig = ds.reset();
DS.Select(addr);
DS.write(0xBE); Lees Kladblok
for (int i = 0; ik < 9; i ++) {}
gegevens [i] = ds.read();
}
DS.reset_search();
byte MSB = data [1];
byte LSB = data [0];
zweven tempRead = ((MSB << 8) | LSB);
zweven TemperatureSum = tempRead / 16;
Return TemperatureSum;}