Arduino 是一块单板的微控制器和一整套的开发软件, 它的硬件包含一个以 Atmel AVR 单片机为核心的开发板和其他各种 I/O 板软件包括一个标准编程语言开发环境和在开发板上运行的烧录程序
考虑到 Arduino 主要是为业余爱好者的使用而设计的, 所以它被设计成一个小型计算机的形式, 它使你可以给连接到 Arduino 开发板上的外部输入输出器件编程(见图 1-1)Arduino 就是所谓的嵌入式计算机平台, 这意味着它是一个交互式系统, 可以通过硬件和软件与它的环境进行互动例如, 一个简单的 Arduino 应用项目是在按下一个按钮时, 点亮一盏小灯并保持一段时间, 比如说 30 秒这个例子中必须有一盏小灯和一个按钮与 Arduino 相连 Arduino 可以一直处于等待按钮被按下的状态, 一旦按钮被按下, Arduino 就点亮那盏小灯并开始计时, 当它计时到 30 秒时, Arduino 熄灭小灯并且等待下一次按钮被按下你可以将这个小项目应用在一个小壁橱中
你可以把以上项目通过连上其他传感器进行扩展, 如一个红外探头, 当红外探头被触发时点亮那盏小灯以上是一些使用 Arduino 的简单例子
Arduino 可以用于开发孤立的互动项目, 也可以将它与计算机相连, 形成一个网络, 甚至可以与互联网相连, 用来接收或发送数据并按指令做出相应的动作换句话说, 它可以发送一些来自于传感器的数据到网络, 这些数据可以以图表的形式显示出来
Arduino 可以与 LED 点阵显示器 (见图 1-2) 按钮旋钮小电机温度传感器压力传感器距离传感器 GPS 接收机以太网卡或者其他能够输出数据或被控制的任何东西相连接随便到互联网上浏览一下, 就会获得用 Arduino 读取数据或者控制各类电子原件的丰富资源
Arduino 开发板由一块 Atmel AVR 单片机一个晶振或振荡器 (一种天然的时钟, 可以以特定的频率发出时间脉冲使 Arduino 以正确的速度运行) 和一个 5V 的直流电源组成根据你所使用 Arduino 类型的不同, 可能需要一条 USB 线来连接你的 PC 或 Mac 计算机, 用来程序或接收数据 Arduino 开发板引出了 Atmel AVR 单片机的所有 I/O(输入输出)引脚, 你可以连接这些引脚到其他电路或传感器
最新的 Arduino 开发板 Uno, 不同于以前的各种 Arduino 开发板, 它不再使用 FTDI 的 USB 到串口驱动芯片, 而是把 Atmega8U2 编程为一个 USB 到串口转换器, 这给它带来了一系列不同于其上代 Duemilank 开发板的好处首先, Atmega 芯片比 FTDI 芯片便宜得多, 这使得整个板子的价格有所下降第二, 也是最重要的一点, 它可以使 USB 芯片刷写开发板的固件引导程序, 使 Arduino 在 PC 端显示为一个 USB 设备, 就像一个鼠标或游戏操作杆那样这开辟了一系列 Arduino 的新用途不幸的是, 使用这种 USB 芯片使得克隆板制造者克隆 Arduino Uno 的难度大大增加了
给 Arduino 编程 (让它做你希望它做的事情) 要使用 IDE(集成开发环境), 它是一款免费的软件, 使用它你可以用 Arduino 可理解的语言 (类似于 C 语言的编程语言) 开发 Arduino 代码 IDE 使你可以编写计算机程序这是一种一步一步解释性的语言, 你可以编好的程序到 Arduino, 你的 Arduino 就开始解释执行这些程序, 并且与连接设备互动在 Arduino 世界里, 程序也叫做架构
Arduino 的硬件和软件都是开放的资源, 这意味着代码图表设计等可以被任何人自由地获得, 并用它们做任何他们喜欢做的事情因此, 可以买到大量的克隆板或基于 Arduino 的开发板, 或者可使用同一个原理图自己做一个实际上, 你可以随意购买合适的元件在面包板上或者你自己的 PCB(印制电路板)上制作属于自己的 Arduino, 唯一需要注意的是你不能使用 Arduino 这个词, 这个名字是保留给官方版 Arduino 的克隆板可以以诸如 FreeduinoRoboduino 等名字命名
因为设计方案是公开的资源, 任何克隆板都 100% 兼容官方版 Arduino, 所以任何软件硬件图表等也 100% 兼容正宗的 Arduino
Arduino 可通过其他板进行扩展, 它们是一些电路板, 包含了其他元件(如 GPS 接收机 LCD 显示器网络模块等), 你可以很方便地把它们连接到 Arduino 开发板上以获得拓展功能拓展板能把 Arduino 的引脚引到它自己的电路板上, 因此在拓展板上你可以使用 Arduino 的每一个引脚如果你不想用拓展板, 也可以不用你可以使用面包板针孔板万用板或者你自己的 PCB 制作完全相同的电路本书中的大多数项目都是在面包板上制作的
Arduino 有各种各样的版本最新版本是 Arduino Uno 之前的版本中最流行的是 Duenilanove(2009 年意大利产), 也就是你从互联网上看到的大多数项目所使用的板子你也可以得到 Arduino 小型的微型的基于蓝牙的变种开发板另外一个新增产品线是 Arduino Mega 2560, 它提供了更大的存储空间和更多的 I/O 引脚, 这种开发板使用了一个新的烧录器, 叫做 Optiboot, 它释放了大约 1.5KB Flash 存储空间, 并能更快速地启动
Arduino 系列中最通用最受欢迎的板子是 Uno 或它之前的版本 Duenilanove 这是因为它采用一个标准的 28 针 IC(一个完整的电路)插座来安装 Arduino 上的单片机这样做的优点在于, 如果要用 Arduino 做点事情, 并想把它转化成永久的东西, 不必使用相对较贵的 Arduino 开发板, 你可以把芯片从 IC 插座上拿下来, 并把它安装到你自己制作的电路板上这样, 你可以做一个个性的嵌入式系统这是相当方便的
然后多花几元钱, 你可以用一个新的 AVR 芯片替换你的 Arduino 上的芯片记得这个芯片一定要事先编好 Arduino 下载程序 (一种软件, 运行在芯片上, 使它能使用 Arduino IDE) 你也可以购买一块 AVR 芯片自己去烧写启动程序, 或直接买一块已经烧好的大多数 Arduino 元件供应商提供这些支持也可通过另外一个 Arduino 来烧写一块芯片关于这些事情的说明可在线找到
如果你以 Arduino 为检索词在网上做一次搜索, 你会吃惊地发现有大量的网页是关于 Arduino 的, 很多很棒的项目是用它开发的 Arduino 是一个让人着迷的东西, 它能使你做任何东西, 从艺术互动产品 (见图 1-3) 到机器人有一点学习如何进行 Arduino 及如何使它与其他元件互动的激情, 再加上一点想象力, 你就可以做任何你能够想到的东西了
本书告诉你如何开始这项有吸引力有创造力的爱好的必要技能现在你已经知道 Arduino 是什么了, 让我们坐到计算机前使用它吧!
来源: http://lib.csdn.net/article/embeddeddevelopment/36993