• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Błąd w szkicu podstawki chłodzącej
#1
Witam! 
W świecie Arduino jestem bardzo świeży więc proszę o wyrozumiałość Smile
Próbuję stworzyć podkładkę chłodzącą pod laptopa. Kiedy chcę ustawić dla jakich wartości temperatury mają działać wiatraczki i świecić diody wyskakuje : "'tempC' was not declared in this scope". Nie do końca rozumiem dlaczego tak jest. I tutaj zwracam się z prośbą czy mógłby mi ktoś wytłumaczyć dlaczego tak się dzieje i jak to naprawić? 

Kod:
Kod:
#include <OneWire.h>
#include <DallasTemperature.h>


#define ONE_WIRE_BUS 2
float normal = 40;
float cieplo = 55;
float goraco = 70;
#define zero 10
#define pierwszy 7
#define drugi 4
#define trzeci 3
#define jedynka 37
#define dwojka 47
float pokoj = 30;

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);


DeviceAddress insideThermometer;


void setup(void)
{
 
 Serial.begin(9600);
 delay(9900);
 Serial.println("Dallas Temperature IC Control Library Demo");

 // locate devices on the bus
 Serial.print("Locating devices...");
 sensors.begin();
 Serial.print("Found ");
 Serial.print(sensors.getDeviceCount(), DEC);
 Serial.println(" devices.");

 
 Serial.print("Parasite power is: ");
 if (sensors.isParasitePowerMode()) Serial.println("ON");
 else Serial.println("OFF");
 

 if (!sensors.getAddress(insideThermometer, 0)) Serial.println("Unable to find address for Device 0");
 
 Serial.print("Device 0 Address: ");
 printAddress(insideThermometer);
 Serial.println();

 sensors.setResolution(insideThermometer, 9);

 Serial.print("Device 0 Resolution: ");
 Serial.print(sensors.getResolution(insideThermometer), DEC);
 Serial.println();
  pinMode (zero, OUTPUT);
 pinMode (pierwszy, OUTPUT);
 pinMode (drugi, OUTPUT);
 pinMode(trzeci, OUTPUT);
 digitalWrite (trzeci, LOW);
 pinMode (jedynka, OUTPUT);
 digitalWrite(jedynka, HIGH);
 digitalWrite(dwojka, HIGH);
 pinMode(dwojka, OUTPUT);
}


void printTemperature(DeviceAddress deviceAddress)
{

 float tempC = sensors.getTempC(deviceAddress);
 Serial.print("Temp C: ");
 Serial.print(tempC);
 Serial.print(" Temp F: ");
 Serial.println(DallasTemperature::toFahrenheit(tempC));

}

void loop(void)
{
 
 Serial.print("Requesting temperatures...");
 sensors.requestTemperatures();
 Serial.println("DONE");
 
 
 printTemperature(insideThermometer);
}


void printAddress(DeviceAddress deviceAddress)
{
 for (uint8_t i = 0; i < 8; i++)
 {
   if (deviceAddress[i] < 16) Serial.print("0");
   Serial.print(deviceAddress[i], HEX);
 }


{

if (tempC <= pokoj)
{
 digitalWrite (zero, LOW);
 digitalWrite (pierwszy, LOW);
 digitalWrite(drugi,LOW);
digitalWrite(trzeci,LOW);

}

else if (tempC> pokoj && tempC<= normal)
{
 digitalWrite(zero, HIGH);
 digitalWrite(pierwszy, LOW);
 digitalWrite(drugi,LOW);
digitalWrite(trzeci,LOW);
}
else if (tempC> normal && tempC <= cieplo)
{
digitalWrite(zero, HIGH);
digitalWrite(pierwszy, HIGH);
digitalWrite(drugi,LOW);
digitalWrite(trzeci,LOW);
digitalWrite(jedynka, LOW);
digitalWrite(dwojka, HIGH);
}
else if (tempC> cieplo && tempC <= goraco)
{
digitalWrite(zero, HIGH);
digitalWrite(pierwszy, HIGH);
digitalWrite(drugi,HIGH);
digitalWrite(trzeci,LOW);
digitalWrite(jedynka, LOW);
digitalWrite(dwojka, LOW);
}
else if (tempC > goraco)
{
digitalWrite(zero, HIGH);
digitalWrite(pierwszy, HIGH);
digitalWrite(drugi,HIGH);
digitalWrite ( trzeci , HIGH );
}
}
}


Z góry dziękuję za pomoc! 
Pozdrawiam

PS. Macie może jakieś rady w jaki sposób "usprawnić" mój projekt?


W celu uzyskania pomocy wklejamy kod w poście z odpowiednim znacznikiem "code" , nie każdy ma fejsa ! . Proszę poprawić ... i stosować się do regulaminu .
 
Odpowiedź
#2
Hmm.. mógłbyś normalnie wkleić kod, a nie podawać link do fejsa...
O dziwo są ludzie, którzy nie używają tego wynalazku a chcieli by zerknąć do Twojego źle działającego kodu.
Smile

Pozdr.
Jeżeli pomogłem, to poproszę o punkt reputacji Big Grin
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości