12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #include <OneWire.h>
- #include <DallasTemperature.h>
- OneWire ds18x20[] = { 3, 7 };
- const int oneWireCount = sizeof(ds18x20)/sizeof(OneWire);
- DallasTemperature sensor[oneWireCount];
- void setup(void) {
- // start serial port
- Serial.begin(9600);
- Serial.println("Dallas Temperature Multiple Bus Control Library Simple Demo");
- Serial.print("============Ready with ");
- Serial.print(oneWireCount);
- Serial.println(" Sensors================");
-
- // Start up the library on all defined bus-wires
- DeviceAddress deviceAddress;
- for (int i = 0; i < oneWireCount; i++) {;
- sensor[i].setOneWire(&ds18x20[i]);
- sensor[i].begin();
- if (sensor[i].getAddress(deviceAddress, 0)) sensor[i].setResolution(deviceAddress, 12);
- }
- }
- void loop(void) {
- // call sensors.requestTemperatures() to issue a global temperature
- // request to all devices on the bus
- Serial.print("Requesting temperatures...");
- for (int i = 0; i < oneWireCount; i++) {
- sensor[i].requestTemperatures();
- }
- Serial.println("DONE");
-
- delay(1000);
- for (int i = 0; i < oneWireCount; i++) {
- float temperature = sensor[i].getTempCByIndex(0);
- Serial.print("Temperature for the sensor ");
- Serial.print(i);
- Serial.print(" is ");
- Serial.println(temperature);
- }
- Serial.println();
- }
|