Использование библиотеки на c++ на arduino mega.
- Войдите на сайт для отправки комментариев
Ср, 01/04/2015 - 16:48
Всем привет!
Нашёл библиотеку для c++, не совсем понимаю, как скомпилировать её в arduino. Кто-нибудь подскажет? makefile не нашёл, на github спросил, на arduino.stackexchange тоже: http://arduino.stackexchange.com/questions/9702/how-to-compile-and-uploa... . Может кто подсказать?
Сама библиотека: https://github.com/justintconroy/MdbBillValidator
Библиотеки не компилируются. Её нужно установить и использовать, тогда она автоматом скомпилируется.
А это вообще библиотека?
Посмотрите в каталоге libraries любую библиотеку и увидите, что такое библиотека
Ок, попробовал! Импортировал библиотеку и на linux, и на windows. В ide кликнул на import library -> mdb_bill_validator. Получился вот такой вот код:
#include <MdbSerial.h> #include <wiring_private.h> #include <MdbBillValidator.h> #include <MdbMaster.h> #include <Arduino.h> void loop() { } void setup() { }/home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp: In function ‘void __vector_37()’: /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:289:23: error: ‘TXB8’ was not declared in this scope UCSR1B |= (1 << TXB8); ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:291:24: error: ‘TXB8’ was not declared in this scope UCSR1B &= ~(1 << TXB8); ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp: In function ‘void __vector_52()’: /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:314:23: error: ‘TXB8’ was not declared in this scope UCSR2B |= (1 << TXB8); ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:316:24: error: ‘TXB8’ was not declared in this scope UCSR2B &= ~(1 << TXB8); ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp: In function ‘void __vector_55()’: /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:339:23: error: ‘TXB8’ was not declared in this scope UCSR3B |= (1 << TXB8); ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:341:24: error: ‘TXB8’ was not declared in this scope UCSR3B &= ~(1 << TXB8); ^ In file included from /usr/lib/avr/include/avr/iom2560.h:38:0, from /usr/lib/avr/include/avr/io.h:160, from /usr/lib/avr/include/avr/pgmspace.h:88, from /home/asiniy/sketchbook/libraries/MdbBillValidator/Arduino.h:8, from /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:31: /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp: At global scope: /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:554:135: error: expected ‘)’ before numeric constant MdbSerial MdbPort1(&rx_buffer1, &tx_buffer1, &UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UCSR1C, &UDR1, RXEN1, TXEN1, RXCIE1, UDRIE1, U2X1 UCSZ12, UCSZ11, UCSZ10, UPM11, UPM10, UMSEL11, UMSEL10); ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:554:189: error: no matching function for call to ‘MdbSerial::MdbSerial(ring_buffer*, ring_buffer*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, int, int, int, int, int, int, int, int, int, int, int)’ MdbSerial MdbPort1(&rx_buffer1, &tx_buffer1, &UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UCSR1C, &UDR1, RXEN1, TXEN1, RXCIE1, UDRIE1, U2X1 UCSZ12, UCSZ11, UCSZ10, UPM11, UPM10, UMSEL11, UMSEL10); ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:554:189: note: candidates are: /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:352:1: note: MdbSerial::MdbSerial(ring_buffer*, ring_buffer*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, volatile uint8_t*, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t) MdbSerial::MdbSerial(ring_buffer *rx_buffer, ring_buffer *tx_buffer, ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:352:1: note: candidate expects 20 arguments, 19 provided In file included from /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.cpp:38:0: /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.h:52:7: note: MdbSerial::MdbSerial(const MdbSerial&) class MdbSerial ^ /home/asiniy/sketchbook/libraries/MdbBillValidator/MdbSerial.h:52:7: note: candidate expects 1 argument, 19 providedПробовал играться с #include, и комбинировать разные значения - без толку!