Ciao a tutti,
il problema che riscontro è l'incompatibilità, credo, con la libreria Rtclib, utilizzata per leggere la data e ora da un modulo Real-Time-Clock.
Se invece installo la versione 1.5.2r2 di arduino, il problema non esiste. Infatti ho creato uno sketch di domotica in cui utilizzo quel modulo, e adesso che ho eseguito l'aggiornamento dell'IDE appaiono questi errori.
se cerco di compilare questo codice:
#include <Wire.h>
#include <RTClib.h>
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
Appaiono questi errori
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\Wire.cpp: In member function 'void TwoWire::setClock(uint32_t)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\Wire.cpp:80:3: error: 'TWBR' was not declared in this scope
TWBR = ((F_CPU / frequency) - 16) / 2;
^
Errore durante la compilazione
Come posso risolvere?
Ho già provato a riscaricare e a aggiungere la libreria più volte, ma niente da fare.
prova a mettere questo header prima di tutti gli altri #include <avr/io.h>
Altri errori:
datecalc.pde:5:1: error: stray '\' in program
datecalc.pde:5:1: error: stray '\' in program
datecalc.pde:5:1: error: stray '\' in program
datecalc.pde:5:1: error: stray '\' in program
datecalc.pde:5:1: error: stray '\' in program
datecalc.pde:5:1: error: stray '\' in program
datecalc.pde:5:1: error: stray '\' in program
datecalc.pde:7:18: error: stray '\' in program
datecalc.pde:7:18: error: stray '\' in program
datecalc.pde:7:18: error: stray '\' in program
datecalc.pde:7:18: error: stray '\' in program
datecalc.pde:7:18: error: stray '\' in program
datecalc.pde:7:18: error: stray '\' in program
datecalc.pde:7:18: error: stray '\' in program
datecalc.pde:9:18: error: stray '\' in program
datecalc.pde:9:18: error: stray '\' in program
datecalc.pde:9:18: error: stray '\' in program
datecalc.pde:9:18: error: stray '\' in program
datecalc.pde:9:18: error: stray '\' in program
datecalc.pde:9:18: error: stray '\' in program
datecalc.pde:9:18: error: stray '\' in program
datecalc.pde:11:18: error: stray '\' in program
datecalc.pde:11:18: error: stray '\' in program
datecalc.pde:11:18: error: stray '\' in program
datecalc.pde:11:18: error: stray '\' in program
datecalc.pde:11:18: error: stray '\' in program
datecalc.pde:11:18: error: stray '\' in program
datecalc.pde:11:18: error: stray '\' in program
datecalc.pde:13:18: error: stray '\' in program
datecalc.pde:13:18: error: stray '\' in program
datecalc.pde:13:18: error: stray '\' in program
datecalc.pde:13:18: error: stray '\' in program
datecalc.pde:13:18: error: stray '\' in program
datecalc.pde:13:18: error: stray '\' in program
datecalc.pde:13:18: error: stray '\' in program
datecalc.pde:15:1: error: stray '\' in program
datecalc.pde:15:1: error: stray '\' in program
datecalc.pde:15:1: error: stray '\' in program
datecalc.pde:15:1: error: stray '\' in program
datecalc.pde:15:1: error: stray '\' in program
datecalc.pde:15:1: error: stray '\' in program
datecalc.pde:15:1: error: stray '\' in program
datecalc.pde:5:1: error: 'In' does not name a type
datecalc.pde:19:32: error: expected unqualified-id before '^' token
Errore durante la compilazione
magari non c'entra, ma ... sicuro di aver scelto la "board" giusta ? Perché sembra che non riconosca il "TWI Bit Rate Register" (TWBR)
Gli errori escono se io compilo senza provare l'upload.
Se provo a caricare lo sketch su arduino Uno, ecco gli altri errori:
In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/WString.h:29:0,
from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Print.h:26,
from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Stream.h:26,
from C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire/Wire.h:26,
from C:\Users\Francesco\Documents\Arduino\libraries\RTClib\RTClib.cpp:4:
C:\Users\Francesco\Documents\Arduino\libraries\RTClib\RTClib.cpp:17:31: error: variable 'daysInMonth' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
static uint8_t daysInMonth [] PROGMEM = { 31,28,31,30,31,30,31,31,30,31,30,31 };
^
Errore durante la compilazione
francesco_b:
Gli errori escono se io compilo senza provare l'upload.
Non c'entra nulla. Il compilatore, anche senza upload, DEVE sapere per quale board compilare, passa dei parametri al codice. Molte librerie hanno delle parti "alternative" in base alla board.
l'errore del "Serial" è dovuto al fatto che ho selezionato il microcontrollore ATtiny, infatti esso non ha i pin TX e RX e di conseguenza nemmeno la seriale.
per quanto riguarda gli altri errori ho risolto reinstallando la versione 1.5.6r2