如何使用C库Arduino代码
How to use C Libraries for Arduino code
我在Visual studio中有一个代码,我想在Arduino中实现。但是有一个问题。许多在Visual Studio中可用的库在Arduino IDE中不可用。我如何在我的Arduino代码中使用它们。确切地说,我想使用的库是
#include <iostream>
#include <iomanip>
#include <queue>
#include <string>
#include <math.h>
#include <ctime>
。
我知道Arduino中有<iostream>
可用。我认为<math.h>
也可以与<string>
库一起使用。
主要问题是如何使用#include <queue>
及其priority_queue()
等功能和.pop()
等iostream
的其他功能?
Arduino在幕后使用的是avr-gcc编译器,它提供了对c++语言许多特性的支持。但是,它不包括libstdc++的实现,这意味着您在其他开发环境中习惯使用的许多库和特性都不存在。这样做的一个重要原因是,在小型微控制器上实现其中一些功能是不实际的。
有几个库可以实现你想要使用的一些函数和数据结构的简化版本。您可以在这里找到这些库的列表(但不一定是完整的):
http://playground.arduino.cc/Main/LibraryList例如,QueueList可能是<queue>
的一个很好的替代。
无论你找到什么,你都可能不得不重构你的代码来使用它们。当您在实现这些库和更改时遇到问题时,我建议您前往https://arduino.stackexchange.com/获取更多arduino特定的答案。
这里有详细说明:
https://www.arduino.cc/en/Hacking/BuildProcess包含路径包括草图的目录,目标目录(/hardware/core//)和avr include目录(/hardware/tools/avr/avr/include/),以及任何库包含头文件的目录(在/hardware/libraries/中)包含在主草图文件中的文件。
这些是avr-gcc (Arduino使用的编译器)支持的库
http://www.nongnu.org/avr-libc/user-manual/modules.html- 人脸跟踪arduino代码的优化
- vscode下的Arduino代码出现意外编译错误
- 'val' Arduino 错误代码之前的预期'('
- Arduino:在 loop() 和自定义函数中运行相同的代码时出现问题
- 如何修复 Arduino LED 串控制器的代码?
- 试图美化这个Arduino代码[初学者在这里]
- 为什么我的Arduino代码用于运行蓝牙控制的机器人,障碍物传感器无法正常工作
- Arduino代码无法正确添加数字
- 无法弄清楚为什么这个Arduino代码不起作用?
- 无法使用 Atmel 寄存器编译 Arduino 代码
- Arduino 代码:输入末尾的预期'}'
- Arduino代码导致CurieBLE的c++中出现非常量绑定错误
- 这个Arduino代码有什么作用
- Arduino代码:移动位似乎将数据类型从int更改为long
- Atmel Studio 7 如何编译和调试 Arduino 代码
- Arduino代码优化的多路复用LED矩阵
- 如何使用C库Arduino代码
- 如何为Arduino代码声明C++函数
- Arduino代码中的继承
- Arduino 代码异常 - LCD 出现故障并显示多个 'if' 语句