Arduino 已经过开发,因此您可以使用任何您想要编写代码的操作系统,它不会影响您在 Arduino 上的最终应用程序。 Linux、OS X、Windows 在使用 Arduino IDE 编译和上传方面都是一样的,所以你可以选择你喜欢的那个。例如,我每天都使用 OS X 和 Linux,结果相同。
之所以这样工作,是因为编译代码并将其上传到 Arduino 所需的工具都存在于 Arduino IDE 应用程序中。除了 IDE,您不需要安装 avr-gcc 或其他任何东西。
这对初学者来说非常棒,因为您可以立即编写应用程序。
它如此无缝工作的另一个原因是因为 Arduino uc 使用引导加载程序烧录,该引导加载程序能够通过简单的 USB 电缆从 Arduino IDE 接受新代码。
如果您想使用 Arduino IDE 编写自己的 uc,您首先需要烧录引导加载程序,以便您的芯片像 Arduino 一样工作,但不是真正的 Arduino。
这是一个教程:http://arduino.cc/en/Tutorial/ArduinoISP
在使用 uc 之前,您需要检查是否有可用于该 uc 的引导加载程序。你可以在这里这样做:board.txt
要记住的另一件事是,当您的项目变得更大时,使用 Arduino IDE 可能会让人头疼,您需要使用 Makefile 之类的东西以及您最喜欢的代码编辑器。
所以简而言之,操作系统现在不是重要的部分。但是,如果您使用更多工具构建更复杂的项目,我会使用 Linux 或 OS X,因为 avr-gcc 和 co。在这些平台上使用起来真的很容易(我个人认为有更多文档记录)。
编辑:
首先,我要澄清一些概念:
avr-gcc 是一个编译器。该软件可以获取您的代码并将其转换为您的 Arduino 微控制器或任何 AVR 芯片可用/可执行的东西。它基于gcc,一个著名的 C/C++ 开源编译器。所以当你使用avr-gcc时,你只是在使用gcc和一些特定的实现。
您必须区分两件事:硬件开发和软件开发。
硬件基本上是“用你需要的东西制作你自己的 Arduino”。
软件需要知道要编写的硬件并执行您想要的操作。这看起来像是先有鸡还是先有蛋的悖论,但实际上并非如此:我会说硬件是第一位的。
因此,如果您开始硬件开发,我建议您首先购买 Arduino 来学习这些概念。所有 Arduino 代码都是开源的,因此您可以真正尝试理解所有内容。
AVR 芯片被广泛使用,因此一旦您了解其中一种,尝试和使用不同的芯片会更容易。并且即使您需要更换另一个品牌,即使您将无法使用avr-gcc,基本情况也是一样的。
但是要从某个地方开始,请选择 Arduino! :)
我为我的项目编写了一些文档,其中详细解释了所有内容。它适用于 OS X 和 Linux,但它会让您很好地了解您需要做什么。
https://github.com/WeAreLeka/moti/blob/master/INSTALL.md
希望对你有帮助!