- 导语 -
本次Arduino技术专题分为五大篇章,基础篇介绍Arduino的基础知识与相关功能;教程篇提供了热门教程内容,设计篇收集了大量以Arduino为基础的优秀设计方案,DIY篇汇总了大量创意十足的Arduino DIY作品,评测篇总结了一些主流产品的评测信息。希望大家可以通过这五大篇章的内容充分了解Arduino平台,为学习Arduino知识助一把力。
- Arduino 平台之基础篇 -
1. 什么是Arduino ?
-
Arduino是一个比你的台式电脑更能够用来感应和控制现实物理世界的一套工具。 它由一个基于简易单片机并且开放源码的计算机平台,和一套为Arduino板编写程序 的开发环境组成。
Arduino可以用来开发交互产品,比如它可以读取大量的开关和传感器信号,并且可以控制 各式各样的电灯、电机和其他物理设备。Arduino项目可以是单独的,也可以在运行时和 你电脑中运行的程序(例如:Flash,Processing,MaxMSP)进行通讯。Arduino板你可以 选择自己去手动组装或是购买已经组装好的;Arduino开源的IDE可以免费下载得到。
Arduino的编程语言就像似在对一个类似于物理的计算平台进行相应的连线,它基于处理多媒体的编程环境。
2. Arduino的由来
-
Massimo Banzi之前是意大利Ivrea一家高科技设计学校的老师。他的学生们经常抱怨找不到便宜好用的微控制器。 2005年冬天, Massimo Banzi跟David Cuartielles讨论了这个问题。 David Cuartielles是一个西班牙籍晶片工程师,当时在这所学校做访问学者。两人决定设计自己的电路板,并引入了Banzi的学生David Mellis为电路板设计编程语言。两天以后,David Mellis就写出了程式码。又过了三天,电路板就完工了。Massimo Banzi喜欢去一家名叫di Re Arduino的酒吧,该酒吧是以1000年前意大利国王Arduin的名字命名的。为了纪念这个地方,他将这块电路板命名为Arduino。
3.为什么要使用Arduino?
-
有很多的单片机和单片机平台都适合用做交互式系统的设计。例如:Parallax Basic Stamp, Netmedia's BX-24,Phidgets,MIT's Handyboard 和其它等等提供类似功能的。 所有这些工具,你都不需要去关心单片机编程繁琐的细节,提供给你的是一套容易使用的工具包。 Arduino同样也简化了同单片机工作的流程,但同其它系统相比Arduino在很多地方更具有优越性, 特别适合老师,学生和一些业余爱好者们使用:
·便宜·跨平台·简易的编程环境·软件开源并可扩展·硬件开源并可扩展
4.Arduino功能特点
-
Arduino在开发之初,就明确了其应用环境,设计了开源开放的平台,便于对其进行二次开发。Arduino的主要功能特点如下:
开放源代码的电路图设计。程序开发接口免费下载,也可依需求自己修改。
使用低价格的微处理控制器(ATmega8或ATmega128)。可以采用USB接口供电,不需外接电源,也可以使用外部9VDC输入。
支持ISP线上烧入器,将Bootloader固件烧入芯片。Arduino控制器内带Bootloader程序,是系统上电后运行的第一段代码,就好比PC机BIOS中的程序,启动就进行自检,配置端口等等,当然,单片机是靠烧写熔丝位来设定上电从boot区启动的,使用这个程序就可以直接把从串口发来的程序存放到flash区中。所以,使用Arduino编译环境下载程序时,就先让单片机复位,启动Boodoader程序引导串口发过来的程序顺利写入flash区中,flash可以重复烧写,因此想更新软件非常方便。有了Bootloader之后,可以通过串口或者USB to RS232线更新固件。
可依据官方提供的PCB和SCH电路图,简化Arduino模组,完成独立运作的微处理控制。
可简单地与传感器,各式各样的电子元件连接,如红外线、超音波、热敏电阻、光敏电阻、伺服马达等。
支持多样的互动程序,如Flash,Max/MSP,VVVV,PurEDAta,C,Processin等。使用低价格的微处理控制器。
应用方面,利用Arduino,突破以往只能使用鼠标、键盘、CCD等输入的装置的互动内容,可以更简单地达成单人或多人游戏互动。Arduino的功能特点,使其得到了越来越广泛的应用。
5. Arduino的基本结构
-
Arduino系统针对不同的应用环境还开发了不同的版本,文中以"Arduino DuEMIlanove"版本为例介绍,该版本于2009年开发,基于ATm ega328微控制器板,能自动选择何种供电,直接将它用USB线连上计算机或者用一个电源适配器给它供电,就可以开始使用。
1个9V DC输入,为Arduino板提供外部电源输出,使Arduino控制板具有能够驱动舵机等大功率外部设备的能力;
1个USB口,通过该口连接到计算机,由Arduino的IDE将用户编写好的控制程序上传到控制板中,同时还可以通过该口为电路板供电,驱动小功率的外部设备;
14个数字输入/输出端,其中端口0(RX)和1(TX)分别连接主控芯片的串行引脚,用来接收和发送TTL串行数据。其中端口2、3可以接收外部信号,实现外部中断功能;端口3、5、6、9、10、11作为PWM端口,可用于电机PWM调速[5]或音乐播放;端口10(SS)、11(MOSI)、12(MISO)和13(SCK)在SPI模块库的支持下,可以提供SPI通信模式;端口13内部连接了一个LED指示灯,随着13脚上电平的高低变化,实现开启和关闭;
6个模拟输入/输出端,其中端口4(SDA)和端口5(SCL)端口可以实现I2C通信;
1个5 V DC输出和1个3.3 V DC输出,可为其它电路提高3.3 V和5 V直流电源; 1个复位接口。
- Arduino 平台之教程篇 -
Arduino手把手入门教程 Arduino不知从何下手?小编为你总结了最全面的Arduino教程,快来看看吧
- Arduino编程基础(一)——Arduino语言
- Arduino编程基础(二)——CC++语言基础(上)
- Arduino编程基础(二)——CC++语言基础(下)
- Arduino编程基础(三)——常用电子元件和扩展模块
- Arduino编程基础(四)——Arduino扩展板的使用
- 基于Protues的Arduino学习笔记-Arduino UNO实验板设计
- 基于Proteus的Arduino学习笔记-按键与LED灯的使用
- 基于Proteus的Arduino学习笔记-片内ADC与可调LED灯
- 基于Proteus的Arduino学习笔记-片内ADC与电压表
- 基于Proteus的Arduino学习笔记-LM35与温度测量的实现
- 基于Protues的Arduino学习笔记-DS18B20与数字式温度
- 基于Proteus的Arduino学习笔记-热电偶和MAX6675实现高温测量
- 基于Proteus的Arduino学习笔记-1602与液晶显示的实现
- 由Arduino联合创始人制作的教学视频(十个全)
- arduino学习笔记
- arduino教程
- arduino从零开始学
- Arduino中文入门教程+实验代码+中文解说视频等
- Arduino的原理及应用
- 如何为Arduino设备构建远程配置
- 如何轻松搭建一个IoT通知设备
- Arduino平台之设计篇 -
Arduino不仅仅是全球最流行的开源硬件,也是一个优秀的硬件开发平台,更是硬件开发的趋势,因而也诞生了大量基于Arduino的优秀设计
- 基于Arduino开发环境的光电编码器检测仪设计方案
- 基于Arduino的远程定位生理参数监测系统设计
- 基于Arduino的ZigBee无线传感节点的硬件设计
- 采用Arduino为核心控制的智能小车避障系统
- Arduino超声测距系统设计
- 基于Arduino的语音控制调节台灯
- Arduino的互动产品平台创新设计
- 基于Android系统的Arduino智能车设计
- 基于Arduino的倒车雷达系统设计
- 基于arduino的电子广告牌设计
- 基于Arduino的护栏坍塌预警器的设计与实现
- 基于arduino的简易消防机器人的设计
- 基于Arduino的无线遥控设计
- 基于Arduino的智能环境监控系统设计
- 基于Arduino的智能照明设计
- 一种基于Arduino的CAN总线设计方法
- 基于Arduino的舵机控制系统设计
- 基于Arduino控制板的温室大棚测温系统设计
- 基于Arduino的LED光立方设计
- 基于Arduino平台的家用安防监控系统设计
- Arduino 平台之 DIY 制作篇 -
Arduino做为一款微控制器,最大的优点就是拥有丰富的接口、简便的编程环境并且提供了极高的自由度和可拓展性。
这样的优点使得大量优秀的DIYER在Arduino上将自己新奇的创意进行实现,诞生了许多有趣的DIY产品
- 牛人DIY:关注空气质量 Arduino检测器(教程)
- SumoBoy (相扑男孩):一部基于 Arduino 的格斗机器人
- 基于Arduino DIY一个会打招呼的超萌机器人
- 用Arduino制作简易磁悬浮装置
- 人人都能玩转的14个Arduino制作项目
- Arduino-uno自己DIY(制作与调试)
- arduino驱动光立方,动画演示视频,制作过程详解
- Arduino机器人制作入门教程
- 用Arduino制作智能空气数据监测分析盒
- 用Arduino制作锂电池电量测量装置
- 用Arduino制作电子秤
- 用Arduino打造超级BEAM机器人
- 玩转Arduino控制器——入门小制作
- 基于Arduino平台的可穿戴式智能蓝牙手表的制作
- 利用Arduino制作简易空调
- 基于Arduino平台频率、占空比测试仪器的制作