C++ 在没有IDE的情况下编程Arduino(Linux)

C++ 在没有IDE的情况下编程Arduino(Linux),c++,c,linux,arduino,arm,C++,C,Linux,Arduino,Arm,对于Linux上到期的Arduino,有没有当前相对简单的方法来编译和上传完整的.c/.cpp文件 我开始经常使用他们在草图中提供的样板代码遇到问题,到目前为止,对于arduino 1.5 SDK的文档或替代IDE支持方面几乎没有什么。。。而官方的1.0.5 IDE目前对于linux来说是无可救药的(串行端口问题等等)。即使您可以用c/c++为arduio编程,arduino本身也不会“使用”c/c++代码。当您将IDE用于arduino时,编译时会链接一些库,以提供“arduino”函数,如s

对于Linux上到期的Arduino,有没有当前相对简单的方法来编译和上传完整的.c/.cpp文件


我开始经常使用他们在草图中提供的样板代码遇到问题,到目前为止,对于arduino 1.5 SDK的文档或替代IDE支持方面几乎没有什么。。。而官方的1.0.5 IDE目前对于linux来说是无可救药的(串行端口问题等等)。

即使您可以用c/c++为arduio编程,arduino本身也不会“使用”c/c++代码。当您将IDE用于arduino时,编译时会链接一些库,以提供“arduino”函数,如setup()和loop(),以及常量,如HIGH和LOW。arduino语言基于一种称为Processing的语言,该语言是用c编写的

如果您在使用Arduino IDE时遇到问题,下载旧版本可能会有所帮助。查看他们网站上的页面

如果仍然不起作用,您可以尝试从源代码构建它

有一个很好的例子

他解释了您需要什么以及如何使用它从linux设备的终端上传到到期日

他在帮助您建立编译环境并将您的c程序上传到SAM3X8E上方面做了大量工作。他甚至给你一个makefile和示例代码。你还能要求什么


试一试,看看它是否适合您。

我想做同样的事情,因为我真的不喜欢像Eclipse这样的IDE。我不想依赖Arduino环境。只是ubuntu下的极简主义

对于库,我在这里下载了ASF(Atmel软件框架)

为了编译,我从这里安装了gcc-arm嵌入式。这提供了gcc arm ONE eabi

最后一部分是“bossac”,上传工具(只需执行apt-get-install-bossa cli)

然后,只需使用Vim或fav编辑器,为您自己的项目修改config.mk(ASF MakeFile的配置),并在确定后使用bossac将.bin上传到您的板上

请注意,如果要检测usb端口(/dev/ACM0),则必须以root(sudo)身份运行bossac


在使用ASF库提供的示例几天后,您将能够使用头文件的一小部分(仅使用寄存器名、寄存器中的位函数名等基本定义)来帮助您完成其余的工作。我个人甚至不再使用“驱动程序”文件。我用自己的方法直接访问寄存器以获得较小的代码。

这取决于您的linux发行版,但有和。这两种方法似乎都不包括到期所需的1.5 SDK。第二个版本将其贴在问题跟踪器的墙纸上,但天知道需要多长时间才能实现。看起来他们正在花时间切换分支。我要补充一点,对于那些对此感兴趣的人,找一个JTAG程序员,然后用atmel软件框架编译.elf文件,然后直接上传它们,在某些方面大大简化了过程。这就是芯片的设计方式,无需在专用开发板上进行编程。