I came across something I do not understand. With the compiler version 1.6.3 (checking from 1.5.0.beta) in any sketch compiled with a library of SD I get such a litany of errors:
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:27:8: error: 'SPISettings' does not name a type
static SPISettings settings;
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp: In member function 'void Sd2Card::chipSelectHigh()':
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:167:9: error: 'class SPIClass' has no member named 'endTransaction'
SPI.endTransaction();
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp: In member function 'void Sd2Card::chipSelectLow()':
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:176:9: error: 'class SPIClass' has no member named 'beginTransaction'
SPI.beginTransaction(settings);
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:176:26: error: 'settings' was not declared in this scope
SPI.beginTransaction(settings);
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp: In member function 'uint8_t Sd2Card::init(uint8_t, uint8_t)':
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:269:3: error: 'settings' was not declared in this scope
settings = SPISettings(250000, MSBFIRST, SPI_MODE0);
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:269:53: error: 'SPISettings' was not declared in this scope
settings = SPISettings(250000, MSBFIRST, SPI_MODE0);
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:275:7: error: 'class SPIClass' has no member named 'beginTransaction'
SPI.beginTransaction(settings);
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:279:7: error: 'class SPIClass' has no member named 'endTransaction'
SPI.endTransaction();
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp: In member function 'uint8_t Sd2Card::setSckRate(uint8_t)':
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:518:14: error: 'settings' was not declared in this scope
case 0: settings = SPISettings(25000000, MSBFIRST, SPI_MODE0); break;
^
C:\Program Files\Arduino\libraries\SD\src\utility\Sd2Card.cpp:518:66: error: 'SPISettings' was not declared in this scope
case 0: settings = SPISettings(25000000, MSBFIRST, SPI_MODE0); break;
^
Multiple libraries were found for "SPI.h"
Used: C:\Documents and Settings\kuba\Moje dokumenty\Arduino\libraries\SPI
Not used: C:\Program Files\Arduino\hardware\arduino\avr\libraries\SPI
Błąd kompilacji.
In contrast, the version 1.0.5 build with no errors and the program works.
I'm not that good at C to independently find a solution. I'm using Arduino under Windows XP.
Can anyone help?