最近对硬件编程很感兴趣,但是还没有开始。
我做了一些搜索工作,并有一个模糊的想法:
Arduino 是芯片和面包板的组合。
AVR 是单芯片,需要购买面包板才能上手。
这种说法是真的还是假的?
AVR 只是一个集成电路微芯片,由 Atmel 制造。它看起来像这样:
虽然它们可以自己使用,但需要一点硬件经验和一些支持组件。
Arduino 是一款运行特殊代码的 AVR 处理器,可让您使用 Arduino 环境轻松编程和上传代码。您只需要一根 USB 电缆即可对其进行编程和通信。它看起来像这样:
(来源:mitchellpage.com.au)
面包板在技术上看起来像这样,并且可以帮助使用 Arduino 做事。两种解决方案都不一定需要它,但它很有用。
如果您提出这类问题,您应该查看adafruit上的 Arduino 教程。它们非常基础,会教您入门所需的知识。
AVR 是一种处理器架构。它是关于处理器应该如何像 x86 和 ARM 一样工作的设计。Atmel 通过 ATTiny、ATMEGA 等产品销售具有 8 位、16 位和 32 位架构的 AVR 架构的硬件。
Arduino 出售的板子旨在让爱好者快速组装一些东西,并且对底层硬件知之甚少。这些板上通常有 ATMEGA。
如果您不熟悉这种“硬件”级别的编程,我建议您购买 arduino 板。由于您不必购买面包板、编程器、电源等,因此您物有所值,而且大多数硬件都焊接在板上,因此使用起来要容易得多。
AVR 是 ATMEL 系列的微控制器,用于 Arduino。ARM是一个微处理器。大多数 Arduino 板都带有 AVR 控制器。最近推出了基于 ARM 处理器的 Arduino Due。希望这足以清除 AVR、ARM、Arduino(',') 之间的问题
你说的是正确的——AVR 是 Arduino 上使用的芯片系列。有一大堆具有各种闪存/内存/外设/引脚配置的 8 位 AVR,就像有一堆不同的 Arduino 板和克隆一样。
然而,虽然 AVR 的软件通常以汇编语言、C 语言或基本语言开发并使用硬件编程器加载到芯片上,但 Arduino 包含一个跨平台 IDE(参见Wikipedia页面),旨在使入门变得更加简单。软件采用类 C 语言(大致基于Processing)开发,支持仅使用 USB 电缆将软件加载到设备上。
这一切归结为什么?Arduino 将使您更快地开始,并且您会更快地看到结果(并且它们在制造商/爱好者社区中变得非常流行) - 加上插入以提供额外功能的 Arduino Sheilds 是一个奖励。获得芯片、面包板和编程器(可以说)会给你带来更多的力量和灵活性——蚀刻你自己的电路板(可选)是一个爆炸!
打个比方,Arduino 就像一个软件框架,而 AVR MCU 就像一种编程语言。