Ошибка компиляции Arduino

Roshin
Offline
Зарегистрирован: 12.07.2019

Только-только начал работать с ардуино, столкнулся с проблемой при работе с датчиком температуры и влажности DHT11. А именно - его библиотекой. При компиляции пишет: 

[spoiler][/spoiler]

Да, у меня плата Arduino Uno, да, порт COM12. Сам скетч:

#include <DHT.h>
#define DHTPIN 2
DHT dht(DHTPIN, DHT11);
void setup() {
  Serial.begin(9600);
  dht.begin();
}
void loop() {
  delay(2000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  if (isnan(h) || isnan(t)) {
    Serial.println("Ошибка считывания");
    return;
  }
  Serial.print("Влажность: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Температура: ");
  Serial.print(t);
  Serial.println(" *C ");
}

Я не глупый и сразу понял, что ошибка заключается в том, что в папке libraries две одинаковые библиотеки. Но как только я туда зашел, этих двух папок из скринов выше там не было. В общем, всё с самого начала: 
1. Я скачал библиотеку в виде архива
2. Я распаковал ее в папку libraries, зашел в нее и не увидел там саму библиотеку. Я перепроверял, ее там не было.
3. Я распаковал уже на рабочий стол и с него скопировал в папку libraries. Папка наконец показалась. 
4. Я уже пол часа пытаюсь понять почему происходит ошибка компиляции.
При попытке удалить папки, указанные в ошибке, с помощью командной строки, происходит это:

[spoiler][/spoiler]

Ноутбук перезагружал, папки скрытые всегда показываются, с реестром что-то пытался делать (лучше бы не пытался), сам ардуино тоже перезагружал. Что делать?

Roshin
Offline
Зарегистрирован: 12.07.2019

Неужели тут нет спойлеров?

Roshin
Offline
Зарегистрирован: 12.07.2019

Сами папки в проводнике обычным поиском тоже не находятся.

sadman41
Онлайн
Зарегистрирован: 19.10.2016

Первый экран, вторая коричневая строка - как переводится?

Roshin
Offline
Зарегистрирован: 12.07.2019

Я пытался опять засунуть туда библиотеку, но ошибка точно такая же, даже если папка там была.

Roshin
Offline
Зарегистрирован: 12.07.2019

https://github.com/adafruit/DHT-sensor-library

Отсюда библиотеку скачивал.

b707
Offline
Зарегистрирован: 26.05.2017

Roshin - какой помощи вы ждете - что кто-то по инету разберется, куда у вас исчезают папки?

Существует мнение, что для работы с Ардуино не нужно быть программистом. Пусть так... Но хотя бы опытным пользователем ПК - нужно!

b707
Offline
Зарегистрирован: 26.05.2017

Roshin пишет:

Я пытался опять засунуть туда библиотеку, но ошибка точно такая же, даже если папка там была.

еще раз - переведите ВТОРУЮ строчку!!!

Roshin
Offline
Зарегистрирован: 12.07.2019

sadman41 пишет:

Первый экран, вторая коричневая строка - как переводится?

DHT_U.h требует файл Adafruit_Sensor.h, но его нигде нет?

xDriver
xDriver аватар
Онлайн
Зарегистрирован: 14.08.2015
Roshin
Offline
Зарегистрирован: 12.07.2019

xDriver пишет:

он есть тут https://github.com/adafruit/Adafruit_Sensor

Спасибо! Его закидывать папкой как библиотекой и подключать инклюдом?

Roshin
Offline
Зарегистрирован: 12.07.2019

Похоже, я с самого начала смотрел не туда.

b707
Offline
Зарегистрирован: 26.05.2017

Roshin пишет:

Спасибо! Его закидывать папкой как библиотекой и подключать инклюдом?

Библиотекой. Подключать не надо - он и так подключается в библе DHT

Roshin
Offline
Зарегистрирован: 12.07.2019

Проблема решена, зачем-то нужен был Adafruit_Sensor.h, хотя об этом нигде не сказано. Спасибо всем за помощь.

b707
Offline
Зарегистрирован: 26.05.2017

Roshin пишет:

зачем-то нужен был Adafruit_Sensor.h, хотя об этом нигде не сказано

Судя по тону, вы считаете. что кто-то был обязан вас предупредить об этом? :)

Совет - не надо винить других, когда виноваты сами. Компилятор вам сразу сказал. что нужна еще одна библиотека - никто не виноват. что вы его не поняли.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

Roshin пишет:

зачем-то нужен был Adafruit_Sensor.h, хотя об этом нигде не сказано

Судя по тону, вы считаете. что кто-то был обязан вас предупредить об этом? :)

Совет - не надо винить других, когда виноваты сами. Компилятор вам сразу сказал. что нужна еще одна библиотека - никто не виноват. что вы его не поняли.

не, ну признайся, использовать библиотеку без её явного объявления и подтягивания как-то неправильно!?
PS представляю сколько геморроя было бы в Линуксе не подтягивай он автоматом связанные пакеты
 

b707
Offline
Зарегистрирован: 26.05.2017

ua6em пишет:

не, ну признайся, использовать библиотеку без её явного объявления и подтягивания как-то неправильно!?
PS представляю сколько геморроя было бы в Линуксе не подтягивай он автоматом связанные пакеты
 

Так это опять же ТС сам себе злобный буратино. Он взял либу не  DHT.h, а DHT-sensor.h - эта либа из пакета Adafruit-sensor. Удивительно ли, что она тянеет за собой родительскую либу? :)

А в линуксе мне много раз приходилось устанавливать dependences вручную....

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

 в линуксе мне много раз приходилось устанавливать dependences вручную....

иногда бывает, когда на обновления забил и нужного пакета нет в репозитории, в частности, при попытке обновиться с центоса 6.6 на 6.10 100500 не будет библиотеки ssh 1.05 ни в одном из репозиториев...

как ты говоришь...Сам себе злобный буратино )))