Nastala chyba při kompilaci u desky Arduino/Genuino Uno.Po

Odpovědět
Ceiro
Příspěvky: 17
Registrován: 16 úno 2019, 08:30
Reputation: 0

Nastala chyba při kompilaci u desky Arduino/Genuino Uno.Po

Příspěvek od Ceiro » 16 úno 2019, 08:41

Potřeboval bych prosím poradit kde by mohla být chyba, jde o teploměr a displej - Nastala chyba při kompilaci u desky Arduino/Genuino Uno.

Arduino: 1.8.8 (Windows 7), Vývojová deska: "Arduino/Genuino Uno"

In file included from C:\Users\ceiroon\Desktop\sketch_feb16a\sketch_feb16a.ino:2:0:

C:\Users\ceiroon\Documents\Arduino\libraries\DHT_sensor_library/DHT_U.h:25:29: fatal error: Adafruit_Sensor.h: No such file or directory

compilation terminated.

Byly nalezené násobné knihovny "DHT.h"
Použitý: C:\Users\ceiroon\Documents\Arduino\libraries\DHT_sensor_library
Nepoužitý: C:\Users\ceiroon\Documents\Arduino\libraries\Grove_Temperature_And_Humidity_Sensor
exit status 1
Nastala chyba při kompilaci u desky Arduino/Genuino Uno.

Táto zpráva by měla mít víc informacií v
"Zobrazení podrobného výstupu při kompilaci"
podle zapnuté volby v Soubor -> Nastavení.

RomanB
Příspěvky: 90
Registrován: 04 zář 2017, 14:28
Reputation: 0
Bydliště: Havířov

Re: Nastala chyba při kompilaci u desky Arduino/Genuino Uno.Po

Příspěvek od RomanB » 16 úno 2019, 10:29

Chybí ti knihovna Adafruit_Sensor.h tu si doinstaluj ve Projekt/Přidat knihovnu/Spravovat knihovny ......

a nebo si tady stáhni ZIP soubor https://github.com/adafruit/Adafruit_Sensor a doinstaluj v Projekt/Přidat knihovnu/Přidat.ZIP knihovnu ......

Ceiro
Příspěvky: 17
Registrován: 16 úno 2019, 08:30
Reputation: 0

Re: Nastala chyba při kompilaci u desky Arduino/Genuino Uno.Po

Příspěvek od Ceiro » 16 úno 2019, 12:46

super díky moc, knihovny se povedlo vyřešit, teď to hlási zase nějakou jinou chybu

In file included from C:\Users\ceiroon\Desktop\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a.ino:1:0:

C:\Users\ceiroon\Documents\Arduino\libraries\DHT_sensor_library/DHT.h:32:15: error: expected unqualified-id before numeric constant

#define DHT11 11

^

C:\Users\ceiroon\Desktop\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a.ino:14:1: note: in expansion of macro 'DHT11'

DHT11 dht11(A0);//DHT11 A0

^

C:\Users\ceiroon\Desktop\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a\sketch_feb16a.ino: In function 'void loop()':

sketch_feb16a:21:8: error: expected unqualified-id before '.' token

dht11.start();

^

sketch_feb16a:23:26: error: expected primary-expression before '.' token

tm1637.display(2,(dht11.DHT11data)[2]%10);

^

sketch_feb16a:24:26: error: expected primary-expression before '.' token

tm1637.display(1,(dht11.DHT11data)[2]%100/10);

^

sketch_feb16a:27:26: error: expected primary-expression before '.' token

tm1637.display(3,(dht11.DHT11data)[0]%10); // humidity

^

sketch_feb16a:28:26: error: expected primary-expression before '.' token

tm1637.display(2,(dht11.DHT11data)[0]%100/10);

^

Byly nalezené násobné knihovny "DHT.h"
Použitý: C:\Users\ceiroon\Documents\Arduino\libraries\DHT_sensor_library
Nepoužitý: C:\Users\ceiroon\Documents\Arduino\libraries\Grove_Temperature_And_Humidity_Sensor
Nepoužitý: C:\Users\ceiroon\Documents\Arduino\libraries\DHT-sensor-library-master
exit status 1
expected unqualified-id before '.' token
Přílohy
Bez názvu4.png

RomanB
Příspěvky: 90
Registrován: 04 zář 2017, 14:28
Reputation: 0
Bydliště: Havířov

Re: Nastala chyba při kompilaci u desky Arduino/Genuino Uno.Po

Příspěvek od RomanB » 16 úno 2019, 13:33

Dej sem raději celý tvůj kod. To co máš na obrázku je špatně, používej knihovnu dht11.h nebo DHT.h zbytečně načítáš obě, když používáš jen jednu. Pin A0 jako vstup pro čidlo raději nepoužívej, čidlo nemá analogový výstup.

dht11.h

Kód: Vybrat vše

#include <dht11.h>
#include <LiquidCrystal.h>
 
dht11 DHT11;
#define DHT11PIN 8
 
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);  
 
void setup()
{
  lcd.begin(16, 2);
  lcd.print("Initialisierung...");
  lcd.clear();
}
 
void loop()
{
  int chk = DHT11.read(DHT11PIN);
 
  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  lcd.print((float)DHT11.temperature, 2);
  lcd.print(" C");
  
  lcd.setCursor(0, 1);
  lcd.print("RelF: ");
  lcd.print((float)DHT11.humidity, 2);
  lcd.print(" %");
  
  delay(2000);
}


Nebo DHT.h od Adafruitu

Kód: Vybrat vše

// DHT Temperature & Humidity Sensor
// Unified Sensor Library Example
// Written by Tony DiCola for Adafruit Industries
// Released under an MIT license.

// REQUIRES the following Arduino libraries:
// - DHT Sensor Library: https://github.com/adafruit/DHT-sensor-library
// - Adafruit Unified Sensor Lib: https://github.com/adafruit/Adafruit_Sensor

#include <Adafruit_Sensor.h>
#include <DHT.h>
#include <DHT_U.h>

#define DHTPIN 2     // Digital pin connected to the DHT sensor 
// Feather HUZZAH ESP8266 note: use pins 3, 4, 5, 12, 13 or 14 --
// Pin 15 can work but DHT must be disconnected during program upload.

// Uncomment the type of sensor in use:
//#define DHTTYPE    DHT11     // DHT 11
#define DHTTYPE    DHT22     // DHT 22 (AM2302)
//#define DHTTYPE    DHT21     // DHT 21 (AM2301)

// See guide for details on sensor wiring and usage:
//   https://learn.adafruit.com/dht/overview

DHT_Unified dht(DHTPIN, DHTTYPE);

uint32_t delayMS;

void setup() {
  Serial.begin(9600);
  // Initialize device.
  dht.begin();
  Serial.println(F("DHTxx Unified Sensor Example"));
  // Print temperature sensor details.
  sensor_t sensor;
  dht.temperature().getSensor(&sensor);
  Serial.println(F("------------------------------------"));
  Serial.println(F("Temperature Sensor"));
  Serial.print  (F("Sensor Type: ")); Serial.println(sensor.name);
  Serial.print  (F("Driver Ver:  ")); Serial.println(sensor.version);
  Serial.print  (F("Unique ID:   ")); Serial.println(sensor.sensor_id);
  Serial.print  (F("Max Value:   ")); Serial.print(sensor.max_value); Serial.println(F("°C"));
  Serial.print  (F("Min Value:   ")); Serial.print(sensor.min_value); Serial.println(F("°C"));
  Serial.print  (F("Resolution:  ")); Serial.print(sensor.resolution); Serial.println(F("°C"));
  Serial.println(F("------------------------------------"));
  // Print humidity sensor details.
  dht.humidity().getSensor(&sensor);
  Serial.println(F("Humidity Sensor"));
  Serial.print  (F("Sensor Type: ")); Serial.println(sensor.name);
  Serial.print  (F("Driver Ver:  ")); Serial.println(sensor.version);
  Serial.print  (F("Unique ID:   ")); Serial.println(sensor.sensor_id);
  Serial.print  (F("Max Value:   ")); Serial.print(sensor.max_value); Serial.println(F("%"));
  Serial.print  (F("Min Value:   ")); Serial.print(sensor.min_value); Serial.println(F("%"));
  Serial.print  (F("Resolution:  ")); Serial.print(sensor.resolution); Serial.println(F("%"));
  Serial.println(F("------------------------------------"));
  // Set delay between sensor readings based on sensor details.
  delayMS = sensor.min_delay / 1000;
}

void loop() {
  // Delay between measurements.
  delay(delayMS);
  // Get temperature event and print its value.
  sensors_event_t event;
  dht.temperature().getEvent(&event);
  if (isnan(event.temperature)) {
    Serial.println(F("Error reading temperature!"));
  }
  else {
    Serial.print(F("Temperature: "));
    Serial.print(event.temperature);
    Serial.println(F("°C"));
  }
  // Get humidity event and print its value.
  dht.humidity().getEvent(&event);
  if (isnan(event.relative_humidity)) {
    Serial.println(F("Error reading humidity!"));
  }
  else {
    Serial.print(F("Humidity: "));
    Serial.print(event.relative_humidity);
    Serial.println(F("%"));
  }
}

RomanB
Příspěvky: 90
Registrován: 04 zář 2017, 14:28
Reputation: 0
Bydliště: Havířov

Re: Nastala chyba při kompilaci u desky Arduino/Genuino Uno.Po

Příspěvek od RomanB » 16 úno 2019, 13:48

Nebo to okopíruj z https://github.com/tehniq3/TM1637-displ ... tation.ino

Kód: Vybrat vše

// base sketch from https://brainy-bits.com/tutorials/4-bits-7-segment-led-display-with-arduino/
// changed TM1637 library by niq_ro for degree, r & h letter
// thermometer & hygromether with DHT sensor on TM1637 LED display by niq_ro from http://www.tehnic.go.ro
// & http://arduinotehniq.com/

#include "TM1637.h"
 
//{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};
//0~9,A,b,C,d,E,F,"-"," ",degree,r,h,n
// 10 -> A, 11 -> b, 12 ->C, 13 -> d, 14 -> E, 15 -> F
// 16 -> -, 17 -> space, 18 -> degree sign, 19 -> r, 20 -> h, 21 -> n


#include <DHT.h> 
#define DHTPIN A2     // what pin we're connected the DHT output
#define DHTTYPE DHT11   // DHT 11 
//#define DHTTYPE DHT22   // DHT 22 
DHT dht(DHTPIN, DHTTYPE); 
 
#define CLK 9//Pins for TM1637       
#define DIO 8
 
TM1637 tm1637(CLK,DIO);
 
void setup(){
  
  tm1637.init();
  tm1637.set(BRIGHT_TYPICAL); 
  //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;
 
  delay(1500);//Delay to let system boot
  dht.begin();   
 
}//end "setup()"
 
 
 
void loop(){
 
  //Start of Program 
 
//  DHT.read11(dht_pin);
 
   int humidity = dht.readHumidity();
   int temp = dht.readTemperature();  
//   int temp = 23;
//   int humidity = 48;
 
 int digitoneT = temp / 10;
 int digittwoT = temp % 10;
 
 int digitoneH = humidity / 10;
 int digittwoH = humidity % 10;
  
 
    tm1637.display(0,digitoneT); 
    tm1637.display(1,digittwoT);
    tm1637.display(2,18); // put degree
    tm1637.display(3,12);  // put a C at the end
    
    delay (3000);
    
    tm1637.display(0,17);  // empty
    tm1637.display(1,17);  // empty
    tm1637.display(2,17);  // empty
    tm1637.display(3,17);  // empty


    tm1637.display(0,digitoneH); 
    tm1637.display(1,digittwoH);
    tm1637.display(2,19);  // r
    tm1637.display(3,20);  // h
 
  
  //Fastest should be once every two seconds.
    delay(3000);
 
}// end loop() 

Uživatelský avatar
gilhad
Příspěvky: 778
Registrován: 07 bře 2018, 11:22
Reputation: 0

Re: Nastala chyba při kompilaci u desky Arduino/Genuino Uno.Po

Příspěvek od gilhad » 17 úno 2019, 09:13

RomanB píše:
16 úno 2019, 13:33
Pin A0 jako vstup pro čidlo raději nepoužívej, čidlo nemá analogový výstup.
To je blbost.


Pokud mluvime o Atmega328 (pouzit v Arduino UNO, mini, nano a tak podobne) tak pin A0 je (krome jineho) naprosto normalni digitalni pin, stejne jako treba to, co arduino oznacuje jako digitalni pin 2 (tedy PD2/INT0/PCINT18) je (krome jineho) naprosto normalni digitalni pin. To plati pro vsechny piny v Arduinu oznacovane jako A0..5 (tedy PC0..PC5). Piny A6 a A7 (tedy ADC6 a ADC7) nemaji digitalni vystup.

(To krome jineho znamena, ze u AVR prakticky kazdy pin umi krome bezneho digitalniho I/O taky jeste nekolik dalsich funkci navic. Treba pin 2 jde pouzit pro primy interrupt, A0 lze pouzit take pro mereni analogove, nebo jako zdroj interruptu pro port C, A4 jde krome digitalniho I/O pouzit i pro analogove mereni, zdroj interruptu a jeste navic pro SDA - datovou linku pro HW implementaci I2C - viz dokumentace vyrobce. Arduino spoustu techto informaci proste zamlcuje, aby uzivatele nebyli zmateni tim, ze maji misto hracky k dispozici opravdu vykonny mikrokontroler)

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 4 hosti