完整的Arduino IDE替代品

我并不是官方Arduino IDE(根据视觉)的粉丝,所以我开始寻找更好的选择。但是,我发现的大多数项目都是alpha / beta版本,通常都是不完整的。

我是100%电路板编程的新手,我以前从来没有使用过Arduino,但是从我收集的内容来看,Arduino IDE只是一个avr库的包装,它可以真正的写入电路板。其他“类似arduino的设备”的IDE是一个可能的选择吗?

再一次,我对这个很新,所以用户友好性会很好。

答案

===================================================

警告,啰嗦的解释即将到来。我想澄清一些我认为你有的错误观念。

Arduino真的是两件事情。

  1. 使用avr-gcc和C ++编译的C / C ++库的集合
  2. 一个小型的自举程序固件程序,之前已经从工厂编程到芯片上。

是的,Arduino IDE基本上包装了AVR C编译器avr-gcc。您的项目或“草图”包含提到的Arduino库,并使用avr-gcc进行编译。然而,这些与董事会的任何事情没有任何关系。如何部署这些草图是有点不同于平时。

Arduino IDE通过电路板上的usb-to-serial芯片与Arduino进行通信,并初始化引导加载程序理解的编程模式,并将您的新程序发送到引导加载程序将其放置在某个已知位置的芯片,然后运行它。没有“实际写入的avr库” – 这只是Arduino IDE打开串口并与bootloader交谈 – 这也是您的调试消息在运行时也会如何打印到IDE中。

任何替代的IDE都必须能够与引导加载程序进行相同的串行通信。Arduino很容易,因为他们已经提供了所有的库和一键式的IDE程序。我真的不认为它变得更容易,或者更友好。他们已经抽象了AVR微控制器的所有细节以及构建/部署过程。

另一种选择是avr-studio(它也使用avr-gcc作为编译器)和一个ICSP编程器(这是你必须购买的附加硬件)。除了一些寄存器定义头文件和一些有用的宏以外,你不提供其他的东西。您的AVR芯片上也没有提供任何引导程序,只是一个空白的板子。任何你想用微控制器做的事情,你都必须深入了解并了解它的硬件外设和寄存器,并以C为单位移动字节。想要将调试信息打印回PC?首先编写用于打印()的UART例程,然后在您的计算机上打开一个终端。

再往下走一步,就是在文本编辑器中编写代码,并从Makefile或命令行中调用avr-gcc和avr-dude(编程命令行工具)。

再往下走一步,你在文本编辑器中编写汇编,并调用avr-assembler和avr-dude。

我不确定我要去哪里,我只是认为现有的IDE和Arduino对于初学者来说绝对是天才和完美的 – 他们声名鹊起用户友好的。也许不是你正在寻找的答案,学习工作流程,让它变得很酷。

====================================================

评论

  • 不是我期待的答案,但真正清除了我对设备的理解。谢谢
  • arduino IDE实际上是三件事情。C(++)库,一个硬件,以及一堆Java代码,它们在编译之前以某种方式将库编译成您的代码。
  • Arduino的构建过程是巨大的。但是,(现在)不可避免地绑定到Arduino的一堆垃圾文本编辑器。我相信OP需要的(我也不介意),是从另一个IDE中调用arduino构建过程的一种方法。就像现在一样,执行Arduino构建的唯一方法是单击IDE中的按钮。这不是脚本。
  • 这个答案有点错误。arduino ide没有提供自己的能力,通过芯片上的bootloader来上传,而是使用命令行工具avrdude来做到这一点。和avr-gcc一样,avrdude不是一个arduino产品,完全可以用于其他IDE或简单的Makefiles。
Tags:, ,

添加评论

友情链接:蝴蝶教程