Arduino DUE VirtualWire
- Войдите на сайт для отправки комментариев
Втр, 02/02/2016 - 17:56
Добрый день!
Я начинающий, и по-тихоньку пытаюсь освоить Ардуино. В данный момент попытался связать две ардуинки при помощи передатчика MX-03V. Библиотеку брал здесь: http://www.pjrc.com/teensy/td_libs_VirtualWire.html
Приемник прицепил к Меге 2560. Скетч-пример залился без проблем.
Передатчик прицепил к DUE. Скетч-пример не хочет компилироваться выдает ошибки:
/* Скетч для передатчика Этот скетч отправляет короткое сообщение на приемник Подключите передатчик к 12 контакту Arduino */ #include <VirtualWire.h> int var = 10; String stringVar = String(var, HEX); char msg[50]; void setup() { // Инициализация vw_setup(2000); // бит в секунду } void loop() { var=var+20; if (var >170) { var=10; }; //send("Hello there"); stringVar.toCharArray(msg, stringVar.length()+1); vw_send((byte *)msg, strlen(msg)); vw_wait_tx(); // Ожидание полной отправки сообщения delay(1000); }
Ошибки:
Arduino: 1.6.5 (Windows 7), Плата"Arduino Due (Programming Port)" Изменена опция сборки, пересобираем все C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp: In function 'void vw_setup(uint16_t)': C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:390:5: error: 'TCCR1A' was not declared in this scope TCCR1A = 0; // Output Compare pins disconnected ^ C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:391:5: error: 'TCCR1B' was not declared in this scope TCCR1B = _BV(WGM12); // Turn on CTC mode ^ C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:391:18: error: 'WGM12' was not declared in this scope TCCR1B = _BV(WGM12); // Turn on CTC mode ^ C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:391:23: error: '_BV' was not declared in this scope TCCR1B = _BV(WGM12); // Turn on CTC mode ^ C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:398:5: error: 'OCR1A' was not declared in this scope OCR1A = nticks; ^ C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:405:5: error: 'TIMSK' was not declared in this scope TIMSK |= _BV(OCIE1A); ^ C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:405:18: error: 'OCIE1A' was not declared in this scope TIMSK |= _BV(OCIE1A); ^ C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp: At global scope: C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:588:7: error: expected constructor, destructor, or type conversion before '(' token SIGNAL(TIMER1_COMPA_vect) ^ C:\Users\€Ј®ам\Documents\Arduino\libraries\VirtualWire\VirtualWire.cpp:668:1: error: expected '}' at end of input } ^ Ошибка компиляции. Это сообщение будет содержать больше информации чем "Отображать вывод во время компиляции" включено в Файл > Настройки
Можете подсказать в чем проблема?
Еще вопрос: какой программатор использовать для прошивки DUE?
forfrends, библиотека не поддерживает DUE.
Может кто-то может помочь подправить библиотеку?