初识Arduino
Arduino自2005年推出以来,广受好评,如今已成为最热门的开源硬件之一。在全球最大的开源社区Github上,Arduino已经成为了一个语言分类;而IEEE发布的2017年编程语言流行程度排行榜上,Arduino成为了仅次于C/C++的嵌入式编程语言;近年来,国内各大高校,甚至中小学都开始使用Arduino开展教学工作。Arduino的热门程度可见一斑。
什么是Arduino
在回答Arduino是什么之前,让先来看看几个基于Arduino开发的项目。
典型项目案例
● 温湿度计
该设备上有温湿度传感器,可以测量出环境温湿度信息,还带有时钟芯片,可以记录时间信息,这些信息都通过设备上的显示屏呈现。其测量到温湿度历史数据,可以通过网络连接存储到云端服务器,方便日后查看历史信息。
● 智能电灯
该设备使用WiFi连接到网络,通过App可以远程控制其开关、设定开关时间、调整灯光亮度、色温等,还可以连接语音助手,通过语音控制其状态。
● 教育机器人
OTTO是一款用于教育领域的机器人,由Camilo设计,其中包含Arduino控制板、超声波传感器和舵机,可以通过编程让其做出不同的动作,还可以通过其中的超声波传感器与之交互。
● 无人机控制器
ArduPilot是基于Arduino开发的无人机控制系统,是目前最强大的基于惯性导航的开源飞行控制器之一。集成有陀螺仪、加速度传感器、电子罗盘传感器、大气压传感器、GPS等部件。
图1-x为使用ArduPilot制作的四轴飞行器。
● 微型卫星
ArduSat是美国加州的NanoSatisfi团队在众筹网站Kickstarter上推出的Arduino制作的微型人造卫星项目(见图1-4),目的是让任何人都可以用更低的成本从事有关宇宙的研究。
它只有10立方厘米大小,将会以音速18倍的速度围绕地球飞行,并配备照相机和多达25种的感应器,搭载的感应器包括电磁波测定装置、分光器、振动传感器、光传感器、GPS、盖革计数器、陀螺仪、磁场传感器、二氧化碳检测传感器等等。
Arduino的本质
Arduino并不仅仅是一块小小的电路板,而是一个开放的电子开发平台。它包含了:
● 硬件——电路板
● 软件——开发环境
● 开发者生态——众多开发者、使用者创造的代码、程序、电路、项目
开发优势
- 简化开发
抛开了传统硬件开发的复杂操作:
○ 不需要了解硬件内部结构和寄存器设置
○ 不需要过多的电子知识、编程知识
○ 通过简单的学习即可开发出色项目 - 创意扩展
可以与多种软件结合(如Flash、Max/Msp、VVVV、Processing)制作互动作品
开源基因
Arduino本身是多个开源项目融合的成果(图1-9为Arduino使用的部分开源项目):
组件 基于的开源项目 说明
编译器 GCC GNU核心编译器
编程语言 Wiring/AVR libc 单片机编程架构/AVR扩展库
开发环境 Processing IDE 设计师导向的开发环境
上传工具 avrdude AVR编程工具
可以说,没有这些开源项目,就没有今天的Arduino。
为什么使用Arduino
核心优势
✅ 跨平台
Arduino IDE支持Windows、Mac OSX、Linux三大操作系统
✅ 简单开发
● 基于Processing IDE开发,易学易用
● 对底层接口二次封装,降低学习门槛
✅ 完全开源
硬件原理图、电路图、IDE软件及核心库文件全部开源
✅ 强大生态
● 活跃的开源社区(Github/Arduino.cc/Arduino.cn)
● 丰富的第三方硬件/外设/类库支持
✅ 行业趋势
● 全球最流行的开源硬件平台
● 显著降低开发周期和学习成本
● 已被专业开发者、教育机构广泛采用
应用场景
● 专业硬件产品开发
● 物联网项目实现
● 高校自动化/软件/艺术课程
● 创客教育/STEAM教育
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。