Trinket 5V (16MHz) & SSD_1306 OLED - Can't Compile "Wire.h"

Adafruit's tiny microcontroller platform. Please tell us which board you are using.
For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
tszawars
 
Posts: 4
Joined: Fri Apr 11, 2014 10:51 am

Trinket 5V (16MHz) & SSD_1306 OLED - Can't Compile "Wire.h"

Post by tszawars »

Hi everyone,

I am trying to use a Trinket 5V, 16MHz to make something show up on an SSD_1306 OLED display.

It is using I2C communication, so coming from the display I have SDA wired to pin 0 and SCK wired to pin 2 on the Trinket M0. I also have 5.6K pull-ups to Vcc (3.3V) on both SDA and SCK.

Here is my code:

Code: Select all

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define SCREEN_WIDTH 128 
#define SCREEN_HEIGHT 64 

#define OLED_RESET     -1 
#define SCREEN_ADDRESS 0x3C 
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

#define LOGO_HEIGHT   16
#define LOGO_WIDTH    16

void setup() {
  if(!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS)) {

    for(;;); 
  }

}

void loop() {
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(2,0);

display.println(" HELLO ");
delay(100);
display.display();
display.clearDisplay();

}

The code works fine on Arduino Nano and Micro (I tested it). I cannot get it to work on the Trinket.

When I try to compile to Trinket, I get this error:

Code: Select all

In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In member function 'void SPISettings::init_AlwaysInline(uint32_t, uint8_t, uint8_t)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:146:16: error: 'SPE' was not declared in this scope
     spcr = _BV(SPE) | _BV(MSTR) | ((bitOrder == LSBFIRST) ? _BV(DORD) : 0) |
                ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:146:16: note: suggested alternative: 'SPH'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:146:27: error: 'MSTR' was not declared in this scope
     spcr = _BV(SPE) | _BV(MSTR) | ((bitOrder == LSBFIRST) ? _BV(DORD) : 0) |
                           ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:146:27: note: suggested alternative: 'PSTR'
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:146:65: error: 'DORD' was not declared in this scope
     spcr = _BV(SPE) | _BV(MSTR) | ((bitOrder == LSBFIRST) ? _BV(DORD) : 0) |
                                                                 ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:146:65: note: suggested alternative: 'DDRB'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static void SPIClass::beginTransaction(SPISettings)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:203:5: error: 'SPCR' was not declared in this scope
     SPCR = settings.spcr;
     ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:203:5: note: suggested alternative: 'EECR'
     SPCR = settings.spcr;
     ^~~~
     EECR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:204:5: error: 'SPSR' was not declared in this scope
     SPSR = settings.spsr;
     ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:204:5: note: suggested alternative: 'ACSR'
     SPSR = settings.spsr;
     ^~~~
     ACSR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static uint8_t SPIClass::transfer(uint8_t)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:209:5: error: 'SPDR' was not declared in this scope
     SPDR = data;
     ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:209:5: note: suggested alternative: 'EEDR'
     SPDR = data;
     ^~~~
     EEDR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:217:14: error: 'SPSR' was not declared in this scope
     while (!(SPSR & _BV(SPIF))) ; // wait
              ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:217:14: note: suggested alternative: 'ACSR'
     while (!(SPSR & _BV(SPIF))) ; // wait
              ^~~~
              ACSR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:217:25: error: 'SPIF' was not declared in this scope
     while (!(SPSR & _BV(SPIF))) ; // wait
                         ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:217:25: note: suggested alternative: 'WDIF'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static uint16_t SPIClass::transfer16(uint16_t)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:223:11: error: 'SPCR' was not declared in this scope
     if (!(SPCR & _BV(DORD))) {
           ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:223:11: note: suggested alternative: 'EECR'
     if (!(SPCR & _BV(DORD))) {
           ^~~~
           EECR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:223:22: error: 'DORD' was not declared in this scope
     if (!(SPCR & _BV(DORD))) {
                      ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:223:22: note: suggested alternative: 'DDRB'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:224:7: error: 'SPDR' was not declared in this scope
       SPDR = in.msb;
       ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:224:7: note: suggested alternative: 'EEDR'
       SPDR = in.msb;
       ^~~~
       EEDR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:226:16: error: 'SPSR' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:226:16: note: suggested alternative: 'ACSR'
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
                ACSR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:226:27: error: 'SPIF' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                           ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:226:27: note: suggested alternative: 'WDIF'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:230:16: error: 'SPSR' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:230:16: note: suggested alternative: 'ACSR'
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
                ACSR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:230:27: error: 'SPIF' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                           ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:230:27: note: suggested alternative: 'WDIF'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:233:7: error: 'SPDR' was not declared in this scope
       SPDR = in.lsb;
       ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:233:7: note: suggested alternative: 'EEDR'
       SPDR = in.lsb;
       ^~~~
       EEDR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:235:16: error: 'SPSR' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:235:16: note: suggested alternative: 'ACSR'
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
                ACSR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:235:27: error: 'SPIF' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                           ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:235:27: note: suggested alternative: 'WDIF'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:239:16: error: 'SPSR' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:239:16: note: suggested alternative: 'ACSR'
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
                ACSR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:239:27: error: 'SPIF' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                           ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:239:27: note: suggested alternative: 'WDIF'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static void SPIClass::transfer(void*, size_t)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:247:5: error: 'SPDR' was not declared in this scope
     SPDR = *p;
     ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:247:5: note: suggested alternative: 'EEDR'
     SPDR = *p;
     ^~~~
     EEDR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:250:16: error: 'SPSR' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:250:16: note: suggested alternative: 'ACSR'
       while (!(SPSR & _BV(SPIF))) ;
                ^~~~
                ACSR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:250:27: error: 'SPIF' was not declared in this scope
       while (!(SPSR & _BV(SPIF))) ;
                           ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:250:27: note: suggested alternative: 'WDIF'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:255:14: error: 'SPSR' was not declared in this scope
     while (!(SPSR & _BV(SPIF))) ;
              ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:255:14: note: suggested alternative: 'ACSR'
     while (!(SPSR & _BV(SPIF))) ;
              ^~~~
              ACSR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:255:25: error: 'SPIF' was not declared in this scope
     while (!(SPSR & _BV(SPIF))) ;
                         ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:255:25: note: suggested alternative: 'WDIF'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static void SPIClass::setBitOrder(uint8_t)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:292:31: error: 'SPCR' was not declared in this scope
     if (bitOrder == LSBFIRST) SPCR |= _BV(DORD);
                               ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:292:31: note: suggested alternative: 'EECR'
     if (bitOrder == LSBFIRST) SPCR |= _BV(DORD);
                               ^~~~
                               EECR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:292:43: error: 'DORD' was not declared in this scope
     if (bitOrder == LSBFIRST) SPCR |= _BV(DORD);
                                           ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:292:43: note: suggested alternative: 'DDRB'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:293:10: error: 'SPCR' was not declared in this scope
     else SPCR &= ~(_BV(DORD));
          ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:293:10: note: suggested alternative: 'EECR'
     else SPCR &= ~(_BV(DORD));
          ^~~~
          EECR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:293:24: error: 'DORD' was not declared in this scope
     else SPCR &= ~(_BV(DORD));
                        ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:293:24: note: suggested alternative: 'DDRB'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static void SPIClass::setDataMode(uint8_t)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:298:5: error: 'SPCR' was not declared in this scope
     SPCR = (SPCR & ~SPI_MODE_MASK) | dataMode;
     ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:298:5: note: suggested alternative: 'EECR'
     SPCR = (SPCR & ~SPI_MODE_MASK) | dataMode;
     ^~~~
     EECR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static void SPIClass::setClockDivider(uint8_t)':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:303:5: error: 'SPCR' was not declared in this scope
     SPCR = (SPCR & ~SPI_CLOCK_MASK) | (clockDiv & SPI_CLOCK_MASK);
     ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:303:5: note: suggested alternative: 'EECR'
     SPCR = (SPCR & ~SPI_CLOCK_MASK) | (clockDiv & SPI_CLOCK_MASK);
     ^~~~
     EECR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:304:5: error: 'SPSR' was not declared in this scope
     SPSR = (SPSR & ~SPI_2XCLOCK_MASK) | ((clockDiv >> 2) & SPI_2XCLOCK_MASK);
     ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:304:5: note: suggested alternative: 'ACSR'
     SPSR = (SPSR & ~SPI_2XCLOCK_MASK) | ((clockDiv >> 2) & SPI_2XCLOCK_MASK);
     ^~~~
     ACSR
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static void SPIClass::attachInterrupt()':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:309:42: error: 'SPCR' was not declared in this scope
   inline static void attachInterrupt() { SPCR |= _BV(SPIE); }
                                          ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:309:42: note: suggested alternative: 'EECR'
   inline static void attachInterrupt() { SPCR |= _BV(SPIE); }
                                          ^~~~
                                          EECR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:309:54: error: 'SPIE' was not declared in this scope
   inline static void attachInterrupt() { SPCR |= _BV(SPIE); }
                                                      ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:309:54: note: suggested alternative: 'ACIE'
In file included from C:\Users\TSZAW\Documents\Arduino\sketch_jan06b\sketch_jan06b.ino:1:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function 'static void SPIClass::detachInterrupt()':
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:310:42: error: 'SPCR' was not declared in this scope
   inline static void detachInterrupt() { SPCR &= ~_BV(SPIE); }
                                          ^~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:310:42: note: suggested alternative: 'EECR'
   inline static void detachInterrupt() { SPCR &= ~_BV(SPIE); }
                                          ^~~~
                                          EECR
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
                 from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90,
                 from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28,
                 from sketch\sketch_jan06b.ino.cpp:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:310:55: error: 'SPIE' was not declared in this scope
   inline static void detachInterrupt() { SPCR &= ~_BV(SPIE); }
                                                       ^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:310:55: note: suggested alternative: 'ACIE'
Multiple libraries were found for "Wire.h"
 Used: C:\Users\TSZAW\AppData\Local\Arduino15\packages\adafruit\hardware\avr\1.4.15\libraries\Wire
 Not used: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire
exit status 1
Error compiling for board Adafruit Trinket (ATtiny85 @ 16MHz).
It looks like Arduino IDE is trying to open up two Wire.h header files (the Adafruit one, and the original Arduino one). But I'm not sure why the exact same code compiles fine on the other Arduino AVR boards, just not the Trinket...

That's what I understood anyway from this snippet of the error message:

Multiple libraries were found for "Wire.h"
Used: C:\Users\TSZAW\AppData\Local\Arduino15\packages\adafruit\hardware\avr\1.4.15\libraries\Wire
Not used: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire
exit status 1
Error compiling for board Adafruit Trinket (ATtiny85 @ 16MHz).


Does anyone have any idea why it might not be working?

Thanks in advance.

User avatar
adafruit_support_bill
 
Posts: 88037
Joined: Sat Feb 07, 2009 10:11 am

Re: Trinket 5V (16MHz) & SSD_1306 OLED - Can't Compile "Wire.h"

Post by adafruit_support_bill »

I am trying to use a Trinket 5V, 16MHz
have SDA wired to pin 0 and SCK wired to pin 2 on the Trinket M0.
Those are two different processors. The Trinket 5v is an ATTiny 85. The Trinket M0 is an ATSAMD21. Which one are you using?

User avatar
tszawars
 
Posts: 4
Joined: Fri Apr 11, 2014 10:51 am

Re: Trinket 5V (16MHz) & SSD_1306 OLED - Can't Compile "Wire.h"

Post by tszawars »

Sorry I meant to say Trinket 5V, 16MHz across the topic.

User avatar
adafruit_support_bill
 
Posts: 88037
Joined: Sat Feb 07, 2009 10:11 am

Re: Trinket 5V (16MHz) & SSD_1306 OLED - Can't Compile "Wire.h"

Post by adafruit_support_bill »

The Wire Library does not support the ATTiny85 processor. For that you need to use the TinyWireM library:
https://github.com/adafruit/TinyWireM

Locked
Please be positive and constructive with your questions and comments.

Return to “Trinket ATTiny, Trinket M0”