Pages: 1 [2] 3   Go Down
Author Topic: Qualcuno può aiutarmi a decifrare questi errori?  (Read 2433 times)
0 Members and 1 Guest are viewing this topic.
Padova
Offline Offline
Full Member
***
Karma: 0
Posts: 197
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusate sempre l'ignoranza e grazie per la pazienza, ma quali sono definite "librerie fornite con l'IDE" e quali non?
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 271
Posts: 21939
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Le trovi nella cartella libraries.
In linea di massima queste: http://arduino.cc/en/Reference/Libraries
Ciao Uwe
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 271
Posts: 21939
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Le librerie non distribuite con l'IDE io normalmente le tengo in sketchbook/libraries per separarle da quelle di Arduino. Nel caso di un aggiornamento dell'IDE le ho sempre e comunque e non sono costretto a reinstallarle.
Tu usi LINUX.
LE cose sono diverse da win.
Ciao Uwe
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 574
Posts: 12679
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Le librerie non distribuite con l'IDE io normalmente le tengo in sketchbook/libraries per separarle da quelle di Arduino. Nel caso di un aggiornamento dell'IDE le ho sempre e comunque e non sono costretto a reinstallarle.
Tu usi LINUX.
LE cose sono diverse da win.
Ciao Uwe
No, anch'io faccio la stessa cosa: in Documenti ho creato una cartella "Personale" in cui ho le sottocartelle hardware e libraries; qui tengo  il core Tiny e 644/1284 e le librerie sia tiny che quelle aggiuntive ad Arduino. In pratica o tre diversi file boards.txt che mi vengono aperti contemporaneamente, così come le lib in due cartelle differenti funzionano anche in contemporanea. Io ho Win XP PRO, ma anche sul 7 è la stessa cosa.
Logged


Padova
Offline Offline
Full Member
***
Karma: 0
Posts: 197
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Io ho la cartella c:\Programmi\arduino-1.0\libraries

in essa ci sono varie cartelle con gli esempi forniti con l'IDE. In ognuna di esse sono presenti le librerie sottoforma di file .cpp e .h ed oltre a queste è presente un altra cartella "examples" con dentro altre cartelle con il nome-esempio e dentro il file sketch.
Basta che io replichi questa struttura?
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 335
Posts: 23142
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@Uwe:
cambia il percorso di dove hai memorizzato la cartella degli sketch ed il suo nome, ma non la sostanza.
Su Linux normalmente si trova in /home/nomeUtente/sketchbook, su Windows sotto /Documenti/Arduino (non è una regola fissa, puoi anche cambiargli nome, come ha fatto Michele).
All'interno di quella crei la cartella libraries e hardware: nella prima ci metti le "tue" librerie, nella seconda i core aggiuntivi.

@9six4:
leggi qui sopra
Logged


Padova
Offline Offline
Full Member
***
Karma: 0
Posts: 197
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao Leo,
ho fatto come mi hai detto tu, ho creato le cartelle libraries e hardware nella dir documenti\arduino.
All'interno di hardware ho creato la cartella con lo stesso nome dello sketch e ci ho messo dentro il relativo sketch. All'interno della cartella libraries ho messo le librerie che lo sketch dichiara all'inizio:

Code:
#include <SdFat.h>  //library for the SD card shield, written by William G 'fat16lib'
#include <Wire.h>
#include "RTClib.h" //for the real time clock on the SD card shield, from JeeLabs
#include <LiquidCrystal.h> //for the LCD display

Quando faccio partire lo sketch però mi vengono fuori i seguenti errori:

Code:
temp_mux_proto_v7.cpp:24:86: error: SdFat.h: No such file or directory
temp_mux_proto_v7.cpp:26:82: error: RTClib.h: No such file or directory
temp_mux_proto_v7.pde:-1: error: 'RTC_DS1307' does not name a type
temp_mux_proto_v7.pde:-1: error: 'DateTime' does not name a type
temp_mux_proto_v7.pde:-1: error: 'Sd2Card' does not name a type
temp_mux_proto_v7.pde:-1: error: 'SdVolume' does not name a type
temp_mux_proto_v7.pde:-1: error: 'SdFile' does not name a type
temp_mux_proto_v7.pde:-1: error: 'SdFile' does not name a type
temp_mux_proto_v7.cpp: In function 'void setup()':
temp_mux_proto_v7.pde:-1: error: 'now' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'RTC' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'card' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'volume' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'card' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'root' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'volume' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'file' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'root' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'O_CREAT' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'O_EXCL' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'O_WRITE' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'file' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'file' was not declared in this scope
temp_mux_proto_v7.cpp: In function 'void loop()':
temp_mux_proto_v7.pde:-1: error: 'now' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'RTC' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'file' was not declared in this scope
temp_mux_proto_v7.cpp: In function 'void timeReset()':
temp_mux_proto_v7.pde:-1: error: 'now' was not declared in this scope
temp_mux_proto_v7.cpp: In function 'int saveInt()':
temp_mux_proto_v7.pde:-1: error: 'now' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'RTC' was not declared in this scope
temp_mux_proto_v7.cpp: In function 'int lcdInt()':
temp_mux_proto_v7.pde:-1: error: 'now' was not declared in this scope
temp_mux_proto_v7.pde:-1: error: 'RTC' was not declared in this scope
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 335
Posts: 23142
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusa, ma ho detto che nella cartella separata è bene metterci le librerie che non sono quelle distribuite con l'Arduino.
Le librerie non distribuite con l'IDE io normalmente le tengo in sketchbook/libraries per separarle da quelle di Arduino. Nel caso di un aggiornamento dell'IDE le ho sempre e comunque e non sono costretto a reinstallarle.
Quindi SD, Wire e LiquidCrystal dovresti lasciarle dove sono, cioè all'interno dell'IDE. Solo la RTClib dovresti metterla di là.
Ma questa non dev'essere una regola né una mia imposizione né una soluzione al tuo problema: è solo un metodo che adotto e che consiglio per tenere le cose separate: le proprie modifiche all'IDE sono così in una cartella separata. In caso di aggiornamento dell'IDE, non devi stare a ricopiare nuovamente le librerie all'interno della cartella /libraries dell'IDE.
Detto questo, l'IDE non ti vede le librerie, segno forse che le hai copiate male. Forse anche nel caso dell'altra libreria il problema potrebbe essere questo.
Logged


Padova
Offline Offline
Full Member
***
Karma: 0
Posts: 197
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

EVVAI!!!  smiley-lol
Ce l'ho fatta! Vi spiego: ho provato a replicare la struttura dell'IDE ovvero ho messo le varie librerie all'interno della cartella arduino-1.0\libraries ognuna all'interno della propria cartella, con nome uguale al file .h e .cpp et voilà! Ora tutto sembra funzionare!
Grazie a tutti per l'aiuto, siete stati veramente gentilissimi!
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 271
Posts: 21939
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Te lo dissi giá qualche post fa.
Ciao Uwe
Logged

0
Online Online
Shannon Member
****
Karma: 136
Posts: 10525
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Da quel poco che ci capisco, di solito da questa serie di errori se non trova la libreria che si aspetta, ovvero il file istream.cpp nella radice precedente alla cartella dove è salvato lo sketch.
e il file .h? l'include deve usare le " " per cercare nella stassa cartella (path relativa alla posizione corrente), con il <> cerca solo nelle cartelle dell'IDE e del compilatore (path assolute)
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Padova
Offline Offline
Full Member
***
Karma: 0
Posts: 197
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

lesto scusa,
facendo un esempio per Arduino 1.0 installato su Win XP Pro:

< >  =  Path assolute  =  c:\Programmi\arduino-1.0\libraries

" "  =  Path corrente =  documenti\nome_sketch   ?
Logged

0
Online Online
Shannon Member
****
Karma: 136
Posts: 10525
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

nel path assolute ci vanno anche le cartelle include del compilatore e chissà cos'altro.

il relativo invece prende come base di partenza la path da cui lanci il programma di compilazione/link.
Quindi nel caso arduino la path del file .ard
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Padova
Offline Offline
Full Member
***
Karma: 0
Posts: 197
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Approfitto della tua gentilezza per porti altre 2 domande:
a cosa serve il file keywords? Perchè ci sono più estensioni per i file arduino (.ino .pde .ard)? Cosa cambia?
Logged

0
Online Online
Shannon Member
****
Karma: 136
Posts: 10525
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

scusa, ho scitto .ard, quanto invece è corretto .ino, questo perchè prima di arduino 1.0 si chiamava .pde e devo ancora farmi entrare in testa la nuova estensione.
Il file keyword serve per "colorare" il codice nell'editor, in pratica dice che la parla X va fatta in colore Y, quindi nulla di utile ai fini del programma in se
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Pages: 1 [2] 3   Go Up
Jump to: