本节书摘来华章计算机《Arduino开发实战指南:机器人卷》一书中的第1章 ,第1.1节,黄文恺 伍冯洁 陈 虹 编著更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1.1 认识Arduino
Arduino是一款源自意大利的开放源代码硬件项目平台,该平台是一块USB接口Simple I/O接口板(包括12通道数字GPIO,4通道PWM输出,6-8通道10bit ADC输入通道),并且使用类似Java、C语言的IDE(集成开发环境)。
Arduino的核心是基于AVR指令集的单片机,但它简化了单片机工作的流程,对AVR库进行了二次编译封装,将复杂的单片机底层代码封装成简单实用的函数,使用者无需关心单片机编程繁琐的细节,如寄存器、地址指针等,从而大大降低了单片机系统开发难度,特别适合老师、学生和业余爱好者使用。
Arduino系列控制器具有的特色如下:
1)开放源代码的电路图设计,程序开发接口免费下载,也可根据需求自行修改。
2)可以采用USB接口供电,也可以外部供电。
3)支持ISP在线烧写,可以将新的“bootloader”固件烧入Arduino的CPU芯片。有了bootloader之后,可以通过USB更新程序。
4)可依据官方提供的PCB和SCH电路图(Eagel格式)来简化Arduino模组,完成独立运作的微处理控制。可简单地与传感器、电子元件等连接,如红外线、光敏电阻、热敏电阻、超声波、舵机等。
5)支持多种互动程序,如:Flash、Max/Msp、VVVV、C、Processing等。
6)在应用方面,利用Arduino突破了以往只能使用鼠标、键盘、CCD等输入方式获取互动内容,而是可以更简单地达成单人或多人游戏互动。