• 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
lcd i termometr
#1
Cześć, mam problem (dla tego kodu)

Kod:
#include <DallasTemperature.h>

#include <OneWire.h>

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
 
#define BACKLIGHT_PIN 3
#define ONEWIRE_PIN 2// Numer pinu do którego podłaczasz czujnik w Arduino
 
float temperature = 0;
 
byte address[8] = {0x28, 0xEF, 0x86, 0x1E, 0x00, 0x00, 0x80, 0xE5};// Numer seryjny czujnika
 
 
LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7);// Adres konwertera
 
OneWire onewire(ONEWIRE_PIN);
DallasTemperature sensors(&oneWire);
 
void setup(void) 
{
Serial.begin(9600);
sensors.begin();
sensors.request(address);
 
lcd.begin(16,2);
lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE);
lcd.setBacklight(HIGH);
lcd.setCursor(0,0); // Ustawienie kursora w pozycji 0,0 (pierwszy wiersz, pierwsza kolumna)
lcd.print("temp: ");
}
 
void loop(void) 
{
temperature = sensors.readTemperature(address);
sensors.request(address);
 
lcd.clear();
lcd.setCursor(0,0); // Ustawienie kursora w pozycji 0,0 (pierwszy wiersz, pierwsza kolumna)
lcd.print("Temp: ");
lcd.setCursor(6, 0);
lcd.print(temperature);
lcd.setCursor(12,0);
lcd.print("*C");
delay(1000);
}
Arduino:1.6.13 (Windows 10), Płytka:"Arduino/Genuino Uno"

sketch_dec02b:19: error: 'oneWire' was not declared in this scope

 DallasTemperature sensors(&oneWire);

                            ^

C:\Users\Komputer\AppData\Local\Temp\arduino_modified_sketch_195325\sketch_dec02b.ino: In function 'void setup()':

sketch_dec02b:25: error: 'class DallasTemperature' has no member named 'request'

 sensors.request(address);

         ^

C:\Users\Komputer\AppData\Local\Temp\arduino_modified_sketch_195325\sketch_dec02b.ino: In function 'void loop()':

sketch_dec02b:36: error: 'class DallasTemperature' has no member named 'readTemperature'

 temperature = sensors.readTemperature(address);

                       ^

sketch_dec02b:37: error: 'class DallasTemperature' has no member named 'request'

 sensors.request(address);

         ^

exit status 1
'oneWire' was not declared in this scope

Ten raport powinien zawierać więcej informacji jeśli w 
File -> Preferencje zostanie włączona opcja "Pokaż
szczegółowe informacje podczas kompilacji"

Dziękuję z góry
 
Odpowiedź
#2
Porównaj nazwy zmiennych:
Kod:
OneWire onewire(ONEWIRE_PIN);
DallasTemperature sensors(&oneWire);
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
#3
Dokładnie tak jak namok napisał, masz złe nazwy - lecz instancji klasy OneWire, a nie zmiennej(taki drobny szczegół).
Zajrzyj również do biblioteki DallasTemperatures bo próbujesz wywołać metodę, której ta klasa nie zawiera.

(03-12-2016, 00:13)dominikf71 napisał(a): C:\Users\Komputer\AppData\Local\Temp\arduino_modified_sketch_195325\sketch_dec02b.ino: In function 'void setup()':

sketch_dec02b:25: error: 'class DallasTemperature' has no member named 'request'

 sensors.request(address);

         ^

C:\Users\Komputer\AppData\Local\Temp\arduino_modified_sketch_195325\sketch_dec02b.ino: In function 'void loop()':

sketch_dec02b:36: error: 'class DallasTemperature' has no member named 'readTemperature'

 temperature = sensors.readTemperature(address);

                       ^

sketch_dec02b:37: error: 'class DallasTemperature' has no member named 'request'

 sensors.request(address);

Biblioteka DallasTemperature zawiera bezparametrową metodę requestTemperatures() i bliźniacze do niej metody, polecam zajrzeć.
 
Odpowiedź
#4
(03-12-2016, 19:30)piotr2393 napisał(a): Dokładnie tak jak namok napisał, masz złe nazwy - lecz instancji klasy OneWire, a nie zmiennej(taki drobny szczegół).
Oczywiście masz rację co do instancji ale gdybym tak napisał to w następnym poście musiałbym tłumaczyć co to jest na instancja.
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości