2015-07-08 2 views
0

У меня есть код в Visual Studio, который я хочу реализовать в Arduino. Но есть проблема. Многие библиотеки, используемые в Visual Studio, не могут использоваться в среде Arduino. Как я могу использовать их в коде Arduino. Если быть точным, библиотеки, которые я хочу использовать, этоКак использовать библиотеки C для кода Arduino

#include <iostream> 
#include <iomanip> 
#include <queue> 
#include <string> 
#include <math.h> 
#include <ctime> 

соответственно.

Хорошо, поэтому я знаю, что у меня есть <iostream> в Arduino. <math.h> также есть Я думаю вместе с <string> библиотеки.

Основная проблема заключается в том, как использовать #include <queue> и его функции, такие как priority_queue() и другие fucntions из iostream как .pop()?

+0

Библиотеки, которые вы хотите использовать: '#include, #include, #include, #include, #include, # include'. Вы можете отредактировать свой вопрос, чтобы включить фактические имена файлов заголовков. – rost0031

+0

Вы не можете. Просто прочитайте вступительное слово в Arduino. Также обратите внимание, что язык Arduino не является ни C, ни C++, поэтому теги здесь неправильны. – Olaf

+0

@ rost0031 Вы были просто ослеплены несоответствующим форматированием. –

ответ

1

Arduino за кулисами использует АРН-GCC компилятор, который обеспечивает поддержку для многих особенности языка C++. Однако он не включает реализацию libstdC++, а это значит, что многие библиотеки и функции, которые вы используете для других сред разработки, просто отсутствуют. Большая причина этого заключается в том, что реализовать небольшой набор функций небольшого микроконтроллера практически нецелесообразно.

Существует несколько доступных библиотек, которые реализуют упрощенные версии некоторых функций и структур данных, которые вы хотите использовать. Вы можете найти список (но не обязательно полный) один из этих библиотек здесь:

http://playground.arduino.cc/Main/LibraryList

Например QueueList может быть хорошей альтернативой <queue>.

Что бы вы ни нашли, вам, скорее всего, придется реорганизовать свой код, чтобы использовать их. Когда у вас возникают проблемы с реализацией этих библиотек и изменений, я бы рекомендовал перейти на https://arduino.stackexchange.com/, чтобы получить более подробные ответы от arduino.

+0

Спасибо alot jack C, что было действительно полезно, я буду обновлять вас, как только я реализую их на своем коде arduino –

0

Он подробно здесь:

https://www.arduino.cc/en/Hacking/BuildProcess

включаемой путь включает в себя каталог эскиза в, целевой каталог (/ оборудование/ядро ​​//) и АРН включают в себя каталог (/ оборудование/tools/avr/avr/include /), а также любые библиотеки (в/hardware/libraries /), которые содержат файл , который включен в основной файл эскиза.

И эти библиотеки, поддерживаемые AVR-GCC (компилятор, который использует Arduino)

http://www.nongnu.org/avr-libc/user-manual/modules.html

+0

Спасибо, Хусамаш! :) –

Смежные вопросы