Ошибка OneWire.h

Dracula
Offline
Зарегистрирован: 03.10.2014
есть код
#include </Users/Bjornskau/Desktop/KEY/OneWire.h>


#define pin 10

byte key_to_write[] = { 0x01, 0xBE, 0x40, 0x11, 0x5A, 0x36, 0x00, 0xE1 };

OneWire  ds(pin);  // pin 10 is 1-Wire interface pin now

void setup(void) {
  Serial.begin(9600);
}

void loop(void) {
  byte i;
  byte data[8];

  delay(1000); // 1 sec
  
  ds.reset();
  delay(50);
  ds.write(0x33); // "READ" command

for (uint16_t i = 0 ; i < 8 ; i++)
    data[i] = ds.read();

  Serial.print("KEY ");
  for( i = 0; i < 8; i++) {
    Serial.print(data[i], HEX);
    if (i != 7) Serial.print(":");
  }

  // Check if FF:FF:FF:FF:FF:FF:FF:FF
  // If your button is really programmed with FF:FF:FF:FF:FF:FF:FF:FF, then remove this check
  if (data[0] & data[1] & data[2] & data[3] & data[4] & data[5] & data[6] & data[7] == 0xFF)
  {
    Serial.println("...nothing found!"); 
    return;
  }
}

Который выдает следующие ошибки

Arduino: 1.6.12 (Mac OS X), Плата:"Arduino Mega ADK"
 
Изменены опции сборки, пересобираем все
/var/folders/2c/rhkvh2594jd3h1h_1jgt1s400000gn/T//ccAvEwx6.ltrans0.ltrans.o: In function `global constructors keyed to 65535_0_key.ino.cpp.o.1732':
ccAvEwx6.ltrans0.o:(.text.startup+0x5e): undefined reference to `OneWire::OneWire(unsigned char)'
/var/folders/2c/rhkvh2594jd3h1h_1jgt1s400000gn/T//ccAvEwx6.ltrans0.ltrans.o: In function `main':
ccAvEwx6.ltrans0.o:(.text.startup+0x1d6): undefined reference to `OneWire::reset()'
ccAvEwx6.ltrans0.o:(.text.startup+0x1ec): undefined reference to `OneWire::write(unsigned char, unsigned char)'
ccAvEwx6.ltrans0.o:(.text.startup+0x1fc): undefined reference to `OneWire::read()'
collect2: error: ld returned 1 exit status
exit status 1
Ошибка компиляции для платы Arduino Mega ADK.
 
Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"
 
 
 
 
Изначально ругался на функцию read_bytes, мол нет ее в классе One Wire, хотя я смотрел иходный код класса и она там была, даже помеченная как public...
ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Подключите быбиблиотеку правиально, т.е. расположите её где положено. А то Вы файл c описаниями включили, а саму библиотеку (.cpp или что там) не подключили. ВОт она и не может найти нужных функций.