Arduino NANO nelze kompilovat

Raspberry, Arduino, Mini-PC a další

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
Romisek
Příspěvky: 277
Registrován: 26 úno 2008, 01:00
Bydliště: Borkovany
Kontaktovat uživatele:

Arduino NANO nelze kompilovat

#1 Příspěvek od Romisek »

Ahoj všem,
pustil jsem se do jednoho projektu, který jsem našel zde:

https://create.arduino.cc/projecthub/Ce ... n-2-bfa619

Bohužel se mi nedaří naklopit do Arduina kód. Atrduino IDE mi zahlásí při kompilaci:

In file included from C: \ Users \ Kugler \ Documents \ Arduino \ sketch_sep03a \ sketch_sep03a.ino: 5: 0:
C: \ Users \ Kugler \ Documents \ Arduino \ libraries \ Adafruit-GFX-Library-master / Adafruit_GrayOLED.h: 30: 10: fatal error: Adafruit_I2CDevice.h: No such file or directory
#include <Adafruit_I2CDevice.h>
^ ~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
exit status 1
An error occurred while compiling on the Arduino Nano board.

Je podotýkám, že všechny knihovny mám v IDE nahrané. Nevíte někdo kde by mohl být problém. Prototypové zapojení mám hotové, ale zasekl jsem se na tomto problému.
Předem moc děkuji za pomoc.
Romisek

petrfilipi
Příspěvky: 2551
Registrován: 13 zář 2005, 02:00

#2 Příspěvek od petrfilipi »

Problém bych viděl v tom, že používáš knihovnu "Adafruit_GrayOLED.h", která se odkazuje na knihovnu "Adafruit_I2CDevice.h". A "Adafruit_I2CDevice.h" chybí.

PF

Uživatelský avatar
Cowley
Příspěvky: 3087
Registrován: 04 úno 2005, 01:00

#3 Příspěvek od Cowley »

Taky koukám, že už si stačil napsat v angličtině do jejich dotazů.

Určitě uveď také verzi IDE, a doporučuji projít všechny odkazy na použité knihovny, zda v nich nejsou požadovány jiné knihovny, které ještě nemáš.

Uživatelský avatar
Romisek
Příspěvky: 277
Registrován: 26 úno 2008, 01:00
Bydliště: Borkovany
Kontaktovat uživatele:

#4 Příspěvek od Romisek »

Přesně tak, snažil jsem se dotázat i přímo u zdroje, ale bohužel zatím bez výsledku. Knihovny jsem prošel všechny, ale zmiňovanou Adafruit_I2CDevice.h jsem nikde nenašel. Co jsem tak pročítal komentáře, tak stejný dotaz už tam někdo měl, ale také bez odpovědi. Nicméně další komentáře chválí jak vše funguje, tak si nedovedu vysvětlit , že by tam auto zapomněl něco přidat.
Romisek

Uživatelský avatar
Romisek
Příspěvky: 277
Registrován: 26 úno 2008, 01:00
Bydliště: Borkovany
Kontaktovat uživatele:

#5 Příspěvek od Romisek »

Dohledal jsem si knihovnu Adafruit_I2CDevice.h na jejich GitHub:
https://github.com/adafruit/Adafruit_BusIO

PO přidání do IDE už kompilace proběhla, tak snad to bude OK. Až se vrátím domů z práce, zkusím nahrát a ověřím funkčnost jestli to bude OK. Prozatím děkuji za nasměrování.
Romisek

Uživatelský avatar
mluno
Příspěvky: 227
Registrován: 18 dub 2011, 02:00
Bydliště: Benešov (u Prahy)

#6 Příspěvek od mluno »

Je to asi týden, co jsem chtěl zprovoznit přesně tento (nebo podobný) oled a všechny použitelné programy jsem uklidil tak dobře, že jsem se radši než pro archeologický průzkum, rozhodnul to sestavit znovu z examplů. Ono jde o znovusestavení jedné konstrukce, a trochu mě i štve, že nedokážu oprášit to, co jsem před dvěma roky udělal a musím to sestavovat znova, i když na tom mého vlastního know-how bylo minimum.
A právě přesně tato chyba na mě vyskočila při kompilaci jednoho. Ale žádný problém, zkusil jsem deset dalších (jiných knihoven), a možná bych zkoušel další, kdyby ten desátý nefungoval. Těch knihoven je velká spousta, stačí zadat do správce knihoven oled nebo ssd1306 a postupně je zkoušet. Nemá cenu pitvat se v jedné, když jiná funguje (to bych nechal, až by vše selhalo). Teda aspoň když se dělá nová konstrukce. Tady je to přecejenom jiná situace; zasahovat do programu někoho jiného je složitější.
Papír, kde mám poznámky, co mi fungovalo (nejde jen o displej, jde i o sd a snímač teploty a několik dalších částí) leží doma na stole, ale myslím si, že pro další použití jsem uvažoval Ucglih a vycházel bych z GraphicTest, kde je prakticky vše, co potřebuju.
Arduino ide teda moc rád nemám, ale to, že tam je spousta věcí hotových mě vždy přesvědčí. Radši jsem programoval v AVR studiu, ale dostat tam příslušné knihovny dá zabrat (párkrát se mi to i podařilo, ale je to vždy po takovém boji, že to nejsem schopný zopakovat).

Uživatelský avatar
hafca
Příspěvky: 4401
Registrován: 27 črc 2004, 02:00
Bydliště: 25km na západ od Prahy
Kontaktovat uživatele:

#7 Příspěvek od hafca »

Tak jsem to zkusil cvičně zkompilovat a prošlo to na první dobrou.
Kdyby Edison nevynalezl elektřinu, do teď se díváme na televizi při svíčkách.

Uživatelský avatar
mluno
Příspěvky: 227
Registrován: 18 dub 2011, 02:00
Bydliště: Benešov (u Prahy)

#8 Příspěvek od mluno »

Tak jsem mířil těsně vedle, program, který mi fungoval bez větších úprav byl sice Graphictest.ino, ale ve skupině Ug8lib.
Bylo potřeba odkomentovat konstruktor podle použitého displeje (..._SSD1306_128x64 pro hw iic/twi).
Pro zápis do souboru použiju jako základ z knihovny SD datalogger.ino
Pro RTC potom ds1307.ino z RTClib by neiroN

Včera jsem to zkusil začít dávat dohromady, zatím tyto tři moduly (přibude minimálně ještě led displej a DS18B20) a zjistil jsem, že jsem na tom udělal asi víc práce, než si pamatuju, jak jsem se tak rozpomínal.

Ale co je hlavní je jak sloučit několik programů do jednoho. Každý má setup a loop. Prvním nápadem by bylo tyto funkce sloučit (prostě do jedné nakopírovat příkazy z ostatních), ale přišel jsem na elegantnější postup. Začnu založením nového projektu. Do něj na začátek zkopíruju jeden exampl. Jeho funkce setup a loop vhodně přejmenuju (např. setup_oled, loop_oled) a volám je v příslušných funkcích setup a loop projektu. A tak postupuju s dalšími. Je dobré průběžně kontrolovat zachování přeložitelnosti (mohou nastat různé konflikty) a správné funkčnosti, aby se včas podchytil případný začátek problémů. Pak bude následovat očištění a některé společné inicializace (třeba sériové linky) dám zvlášť.
Asi by bylo dobré potom rozumně choditelný (hotový nebude nikdy) projekt někde zveřejnit, abych ho po létech našel. Vůbec nechápu, kam se vypařil, prohledal jsem všechny počítače, včetně těch, kde by to být ani nemělo, a nenašel jsem.
Já vím, že jsem mimo téma, ale cítil jsem potřebu sdělit tu světu (a kolegům) část získaných zkušeností.
Mimochodem pro AVR studio existoval doplněk VisualMicro, který umožňuje v něm pracovat s projekty (alias skeči) arduina (ovšem jen do verze 1.6.3 což většinou nevadí, narazil jsem zatím snad na jedinou knihovnu, která vyžadovala novější verzi a snad se to dalo i opravit). Je inzerovaný jako bezplatný, po nainastalování se dozvíte, že je to zkušební verze na 14 dnů (jinak se musí zaplatit), ale chcípne po týdnu. Pak se po novém start trial tváří jakoby nic až po nějakém asi půl roce, když už si na nutnost nové aktivace co týden zvyknete, se už znovu aktivovat odmítne. Tehdy jsem to hodnotil jako velice šikovný doplněk (omezení v trial verzi byla naprosto nepodstatná), ale to bylo před dvěma lety a pro už tehdy dost zastaralé AVR Studio verze 6 takže dneska už bude vše jinak, já skončil tím, že sedmička vyžaduje windows verze 7.1/8/8.1 a to na žádném z počítačů nemám, takže používám stále pětku a šestku (koelga vyprávěl, že současné AVR studio je ještě větší bloatware o velikosti 10 giga a to už mi i ty 2 giga šestky přisly jako moc).

Odpovědět

Zpět na „Miniaturní počítače (Arduino, Raspberry a další)“