找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 17451|回复: 33
收起左侧

Arduino基础入门教程(共61页精彩pdf下载)

  [复制链接]
ID:385437 发表于 2018-8-12 10:40 | 显示全部楼层 |阅读模式
第 1 章 进入 Arduino 的世界
欢迎来到 Arduino 的世界!Arduino 是一个开源的开发平台,在全世界范围内成千上万的人正在用它开发制作一个又一个电子产品,这些电子产品包括从平时生活的小物件到时下流行的 3D 打印机,它降低了电子开发的门槛,即使是从零开始的入门者也能迅速上手,制作有趣的东西,这便是开源 Arduino 的魅力。通过本书的介绍,读者对 Arduino 会有一个更全面的认识。
本章知识点:
Arduino 的起源与发展
Arduino 的特点
Arduino 开发板简介
Arduino 的未来展望


1.1 什么是 Arduino
什么是 Arduino?相信很多读者会有这个疑问,也需要一个全面而准确的答案。不仅是读者,很多使用 Arduino 的人也许对这个问题都难以给出一个准确的说法,甚至认为手中的开发板就是Arduino,其实这并不准确。那么,Arduino 究竟该如何理解呢?1.1.1 Arduino 不只是电路板Arduino 是一种开源的电子平台,该平台最初主要基于 AVR 单片机的微控制器[1]和相应的开发软件,目前在国内正受到电子发烧友的广泛关注。自从 2005 年 Arduino 腾空出世以来,其硬件和开发环境一直进行着更新迭代。现在 Arduino 已经有将近十年的发展历史,因此市场上称为Arduino的电路板已经有各式各样的版本了。Arduino开发团队正式发布的是Arduino Uno和ArduinoMega 2560,如图 1-1 和图 1-2 所示。
0.png

Arduino 项目起源于意大利,该名字在意大利是男性用名,音译为“阿尔杜伊诺”,意思为“强壮的朋友”,通常作为专有名词,在拼写时首字母需要大写。其创始团队成员包括:Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis 和 Nicholas Zambetti 6 人。Arduino 的出现并不是偶然,Arduino 最初是为一些非电子工程专业的学生设计的。设计者最初为了寻求一个廉价好用的微控制器开发板从而决定自己动手制作开发板,Arduino 一经推出,因其开源、廉价、简单易懂的特性迅速受到了广大电子迷的喜爱和推崇。几乎任何人,即便不懂电脑编程,利用这个开发板也能用 Arduino 做出炫酷有趣的东西,比如对感测器探测做出一些回应、闪烁灯光、控制马达等。

Arduino 的硬件设计电路和软件都可以在官方网站上获得,正式的制作商是意大利的SmartProjects, 许多制造商也在生产和销售他们自己的与 Arduino 兼容的电路板和扩展板,但是由 Arduino 团队设计和支持的产品需要始终保留着 Arduino 的名字。所以,Arduino更加准确的说法是一个包含硬件和软件的电子开发平台,具有互助和奉献的开源精神以及团队力量。

1.1.2 Arduino 程序的开发过程

由于 Arduino 主要是为了非电子专业和业余爱好者使用而设计的,所以 Arduino 被设计成一个小型控制器的形式,通过连接到计算机进行控制。Arduino 开发过程是:
(1)开发者设计并连接好电路;
(2)将电路连接到计算机上进行编程;
(3)将编译通过的程序下载到控制板中进行观测;
(4)最后不断修改代码进行调试以达到预期效果。


1.2 为什么要使用 Arduino

在嵌入式开发中,根据不同的功能开发者会用到各种不同的开发平台。而 Arduino 作为新兴开发平台,在短时间内受到很多人的欢迎和使用,这跟其设计的原理和思想是密切相关的。首先,Arduino 无论是硬件还是软件都是开源的,这就意味着所有人都可以查看和下载其源码、图表、设计等资源,并且用来做任何开发都可以。用户可以购买克隆开发板和基于 Arduino 的开发板,甚至可以自己动手制作一个开发板。但是自己制作的不能继续使用 Arduino 这个名称,可以自己命名,比如 Robotduino。

其次,正如林纳斯·本纳第克特·托瓦兹的 Linux 操作系统一样,开源还意味着所有人可以下载使用并且参与研究和改进 Arduino,这也是 Arduino 更新换代如此迅速的原因。全世界各种电子爱好者用 Arduino 开发出各种有意思的电子互动产品。有人用它制作了一个自动除草机,去上班的时候打开,不久花园里的杂草就被清除干净了!有人用它制作微博机器人,配合一些传感器监测植物的状态,并及时发微博来提醒主人,植物什么时间该浇水、施肥、除草等,非常有趣。

0.png
图 1-3 所示为日本一开发者用 Arduino 和 Kinect 制作的可以自己接住丢掉垃圾的智能垃圾桶。

Arduino 可以和 LED、点阵显示板、电机、各类传感器、按钮、以太网卡等各类可以输出输入数据或被控制的任何东西连接,在互联网上各种资源十分丰富,各种案例、资料可以帮助用户迅速制作自己想要制作的电子设备。在应用方面,Arduino 突破了传统的依靠键盘、鼠标等外界设备进行交互的局限,可以更方便地进行双人或者多人互动,还可以通过 Flash、Processing 等应用程序与 Arduino 进行交互。

1.3 Arduino 硬件的分类

在了解 Arduino 起源以及使用 Arduino 制作的各种电子产品之后,接下来对 Arduino 硬件和开发板,以及其他扩展硬件进行初步的了解和学习。

1.3.1 Arduino 开发板

Arduino 开发板设计得非常简洁,一块 AVR 单片机、一个晶振或振荡器和一个 5V 的直流电源。常见的开发板通过一条 USB 数据线连接计算机。Arduino 有各式各样的开发板,其中最通用的是Arduino UNO。另外,还有很多小型的、微型的、基于蓝牙和 Wi-Fi 的变种开发板。还有一款新增的开发板叫做 Arduino Mega 2560,它提供了更多的 I/O 引脚和更大的存储空间,并且启动更加迅速。以 Arduino UNO 为例,Arduino UNO 的处理器核心是 ATmega 328,同时具有 14 路数字输入/输出口(其中 6 路可作为 PWM 输出),6 路模拟输入,一个 16MHz 的晶体振荡器,一个 USB 口,一个电源插座,一个 ICSP header 和一个复位按钮。因为 Arduino UNO 开发板的基础构成在一个表里显示不下,所以这里特意设计了两个表来展示,如表 1-1 和表 1-2 所示。

0.png

Arduino UNO 可以通过以下三种方式供电,能自动选择供电方式:
外部直流电源通过电源插座供电;
电池连接电源连接器的 GND 和 VIN 引脚;
USB 接口直接供电,图 1-4 所示的稳压器可以把输入的 7V~12V 电压稳定到 5V。

在电源接口上方,一个右侧引出 3 个引脚,左侧一个比较大的引脚细看会发现上面有AMST1117 的字样,其实这个芯片是个三端 5V 稳压器,电源口的电源经过它稳压之后才给板子输入,其实电源适配器内已经有稳压器,但是电池没有。可以理解为它是一个安检员,一切从电源口经过的电源都必须过它这一关,这个“安检员”对不同的电源会进行区别对待。

首先,AMS1117 的片上微调把基准电压调整到 1.5%的误差以内,而且电流限制也得到了调整,以尽量减少因稳压器和电源电路超载而造成的压力。再者根据输入电压的不同而输出不同的电压,可提供 1.8V、2.5V、2.85V、3.3V、5V 稳定输出,电流最大可达 800mA,内部的工作原理这里不必去探究,读者只需要知道,当输入 5V 的时候输出为 3.3V,输入 9V 的时候输出才为 5V,所以用 9V(9V~12V 均可,但是过高的电源会烧坏板子)电源供电的原因就在这,如使用 5V 的适配器与 Arduino 连接,之后连接外设做实验,会发现一些传感器没有反应,这就是某些传感器需要 5V的信号源,可是板子最高输出只能达到 3.3V,必然有问题。

重置按钮和重置接口都用于重启单片机,就像重启电脑一样。若利用重置接口来重启单片机,应暂时将接口设置为 0V 即可重启。
GND 引脚为接地引脚,也就是 0V。A0~A5 引脚为模拟输入的 6 个接口,可以用来测量连接到引脚上的电压,测量值可以通过串口显示出来。当然也可以用作数字信号的输入输出。Arduino 同样需要串口进行通信,图 1-4 所示的串口指示灯在串口工作的时候会闪烁。Arduino通信在编译程序和下载程序时进行,同时还可以与其他设备进行通信。而与其他设备进行通信时则需要连接 RX(接收)和 TX(发送)引脚。ATmega 328 芯片中内置的串口通信硬件是可以通过同步和异步模式工作的。同步模式需要专用的信号来表示时钟信息,而 Arduino 的串口(USART 外围设备,即通用同步/异步接收发送装置)工作在异步模式下,这和大多数 PC 的串口是一致的。数字引脚 0 和 1 分别标注着 RX 和 TX,表明这两个可以当做串口的引脚是异步工作的,即可以只接收、发送,或者同时接收和发送信号。

1.3.2 Arduino 扩展硬件
与 Arduino 相关的硬件除了核心开发板外,各种扩展板也是重要的组成部分。Arduino 开发板设计的可以安装扩展板,即盾板进行扩展。它们是一些电路板,包含其他的元件,如网络模块、GPRS 模块、语音模块等。在图 1-4 所示的开发板两侧可以插其他引脚的地方就是可以用于安装其他扩展板的地方。它被设计为类似积木、通过一层层的叠加而实现各种各样的扩展功能。例如Arduino UNO 同 W5100 网络扩展板可以实现上网的功能,堆插传感器扩展板可以扩展 Arduino 连接传感器的接口。图 1-5 和图 1-6 为 Arduino 同扩展板连接的例子。
0.png 0.png

虽然 Arduino 开发板支持很多扩展板来扩展功能,但其扩展插座中引脚的间距并不严格规整。仔细观察开发板会发现上面两个最远的引脚之间距离为 4.064mm,这与标准的 2.54mm 网格的面包板及其他扩展工具并不兼容,尽管要求改正的呼声很强烈,但是这个误差却很难改正,一旦改正将使得原来的大量扩展板变得不兼容,所以这个误差便没有去改动。
虽然这个误差没有改动,但是很多公司和个人在生产 Arduino 兼容的产品时兼顾增加了额外两行 2.54mm 的针孔来解决这个问题,另外美国 Gravitech公司完全舍弃了扩展板兼容来解决这个问题。

1.4 Arduino 展望未来


Arduino 自诞生以来,简单、廉价的特点使得 Arduino 如同雨后春笋般迅速风靡全球,在不断发展的同时,Arduino 也在发挥着更重要的作用。本节将对 Arduino 发展的特点和未来发展做一点总结和展望。

1.4.1 创客文化在介绍 Arduino 发展前景之前,首先需要了解逐渐兴起的“创客”文化。什么是“创客”?“创客”一词来源于英文单词“Maker”,指的是不以盈利为目标,努力把各种创意转变为现实的人。其实就是热爱生活,愿意亲手创新为生活增加乐趣的一群人。他们精力旺盛,坚信世界会因为自己的创意而改变。创客文化兴起于国外,经过一段时间红红火火的发展,如今已经成为一种潮流。国内也不示弱,一些硬件发烧友了解到国外的创客文化后被其深深吸引,经过圈子中的口口相传,大量的硬件、软件、创意人才聚集在了一起。各种社区、空间、论坛的建立使得创客文化在中国真正流行起来。北京、上海、深圳已经发展成为中国创客文化的三大中心。那么,是什么推动创客文化如此迅猛发展呢?众所周知,硬件的学习和开发是有一定的难度的,人人都想通过简单的方式实现自己的创意,于是开源硬件应运而生。而开源硬件平台中知名度较高的应该就是日渐强大的 Arduino 了。Arduino 作为一款开源硬件平台,一开始被设计的目标人群就是非电子专业尤其是艺术家学习使用的,让他们更容易实现自己的创意。当然,这不是说 Arduino 性能不强、有些业余,而是表明Arduino 很简单,易上手。Arduino 内部封装了很多函数和大量的传感器函数库,即使不懂软件开发和电子设计的人也可以借助 Arduino 很快创作出属于自己的作品。可以说 Arduino 与创客文化是相辅相成的。

一方面,Arduino 简单易上手、成本低廉这两大优势让更多的人都能有条件和能力加入创客大军;另一方面,创客大军的日益扩大也促进了 Arduino 的发展。各种各样的社区、论坛的完善,不同的人、不同的环境、不同的创意每时每刻都在对Arduino进行扩展和完善。在2011年举行的GoogleI/O 开发者大会上,Google 公司发布了基于 Arduino 的 Android Open Accessory 标准和 ADK 工具,这使得大家对 Arduino 的巨大的发展前景十分看好。Arduino 发展潜力巨大,既可以让创客根据创意改造成为一个小玩具,也可以大规模制作成工业产品。国内外 Arduino 社区良好的运作和维护使得几乎每一个创意都能找到实现的理论和实验基础,相信随着城市的不断发展,人们对生活创新的不断追求,会有越来越多的人听说 Arduino、了解 Arduino、玩转 Arduino。
1.4.2 快速原型设计
纵观计算机语言的发展,从 0 和 1 相间的二进制语言到汇编语言,从 K&R 的 C 语言到现在各式各样的高级语言,计算机语言正在逐渐变成更自由、更易学易懂的大众化语言。硬件的发展已经逐渐降低软件开发的复杂性,编程的门槛正在逐渐降低。曾有人预言:未来的时代,程序员将要消失,编程不再是局限人们思维和灵感的桎梏。在软件行业飞速发展的现在,几乎任何具有良好逻辑思维能力的人只要对某些产品感兴趣,就可以通过互联网获得足够的资源从而成为一名软件开发人员。

而 Arduino 的出现,让人们看到了不仅是软件,硬件的开发也越来越简单和廉价。不必从底层开始学习开发计算机的特性让更多的人从零上手,将自己的灵感用最快的速度转化成现实。以
Arduino 为其中代表的开源硬件,降低了入行的门槛,从而设计电子产品不再是专业领域电子工程师的专利,“自学成才”的电子工程师正在逐渐成为可能。
开源硬件将会使得软件同硬件、互联网产业更好的结合到一起,在未来的一段时间里,开源硬件将会有非常好的发展,最终形成硬件产品少儿化、平民化、普及化的趋势。同时,Arduino 的简单易学也会成为一些电子爱好者进入电子行业的一块基石,随着使用 Arduino 制作电子产品的深入,相应的也会对硬件进行更深层次的探索。在简单易学的前提下,比一开始就学习单片机、汇编入行要简单有趣得多。
Arduino 开源和自由的设计无疑是全世界电子爱好者的福音,大量的资源和资料让很多人快速学习 Arduino,开发一个电子产品开始变得简单。互联网的飞速发展让科技的脚步加快,互联网产品正在变得更简单。利用 Arduino,电子爱好者们可以快速设计出原型,从而根据反馈改进出更加稳定可靠的版本。

…………
…………

完整的pdf格式文档51黑下载地址(共61页):
见2楼

评分

参与人数 2黑币 +53 收起 理由
azi197417 + 3 共享资料的黑币奖励!
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:385437 发表于 2018-8-12 10:41 | 显示全部楼层

arduino基础入门教程

arduino基础入门教程.pdf

6.01 MB, 下载次数: 429, 下载积分: 黑币 -5

回复

使用道具 举报

ID:1 发表于 2018-8-12 15:28 | 显示全部楼层
好资料,51黑有你更精彩!!!
回复

使用道具 举报

ID:379680 发表于 2018-8-24 15:54 | 显示全部楼层

好资料,51黑有你更精彩!!
回复

使用道具 举报

ID:194884 发表于 2018-11-25 08:06 来自手机 | 显示全部楼层
51黑有你更精彩!!!
回复

使用道具 举报

ID:430950 发表于 2018-11-25 15:39 来自手机 | 显示全部楼层
门外汉不知道能不能学会
回复

使用道具 举报

ID:426543 发表于 2018-12-1 16:58 | 显示全部楼层
真好啊,可惜没有黑币了
回复

使用道具 举报

ID:385722 发表于 2018-12-4 19:36 | 显示全部楼层
真好啊,可惜没有黑币了
回复

使用道具 举报

ID:440971 发表于 2018-12-6 15:45 | 显示全部楼层
好东西!学习!
回复

使用道具 举报

ID:441347 发表于 2018-12-7 00:29 | 显示全部楼层
初学者很有用啊
回复

使用道具 举报

ID:441347 发表于 2018-12-8 09:08 来自手机 | 显示全部楼层
好东西  学习用
回复

使用道具 举报

ID:438895 发表于 2018-12-11 03:18 | 显示全部楼层
好棒,对于初学者的我来讲太有用了
回复

使用道具 举报

ID:65542 发表于 2018-12-11 08:06 | 显示全部楼层
正想入门!!!
回复

使用道具 举报

ID:318672 发表于 2019-4-4 04:59 来自手机 | 显示全部楼层
感谢分享
回复

使用道具 举报

ID:471632 发表于 2019-4-4 11:16 | 显示全部楼层
好资料,下来看看
回复

使用道具 举报

ID:581091 发表于 2019-7-9 17:23 | 显示全部楼层
好资料,好喜欢
回复

使用道具 举报

ID:59884 发表于 2020-1-15 15:36 | 显示全部楼层
谢谢楼主分享!
回复

使用道具 举报

ID:690005 发表于 2020-2-4 20:36 | 显示全部楼层
这个上手相对简单,适合新手
回复

使用道具 举报

ID:693995 发表于 2020-2-16 18:20 来自手机 | 显示全部楼层
好资料,51黑有你更精彩!!!
回复

使用道具 举报

ID:626079 发表于 2020-2-28 11:36 | 显示全部楼层
感觉书没写完……意犹未尽啊…………楼主有PDF更新的吗?
回复

使用道具 举报

ID:735992 发表于 2020-4-23 12:21 | 显示全部楼层
太棒了
回复

使用道具 举报

ID:735992 发表于 2020-4-23 12:21 | 显示全部楼层
真的很不错!!!
回复

使用道具 举报

ID:735579 发表于 2020-4-23 21:34 | 显示全部楼层
多谢楼主分享
回复

使用道具 举报

ID:701198 发表于 2020-4-24 16:32 | 显示全部楼层
感谢楼主分享,谢谢
回复

使用道具 举报

ID:714229 发表于 2020-4-24 17:10 | 显示全部楼层
相见恨晚,终于找到粮食了
回复

使用道具 举报

ID:974408 发表于 2021-10-23 19:05 | 显示全部楼层
我是个新人,刚接触arduino,很想得到这本PDF,但只有2个币,实在可悲!但还应该为楼主的无私分享点赞!
回复

使用道具 举报

ID:126422 发表于 2022-6-11 08:07 | 显示全部楼层
下载了解一下,楼主资料不错。
回复

使用道具 举报

ID:280708 发表于 2022-7-6 09:30 | 显示全部楼层

好资料,51黑有你更精彩!!!
回复

使用道具 举报

ID:917430 发表于 2022-9-12 22:13 | 显示全部楼层
好资料,51黑有你更精彩!!
回复

使用道具 举报

ID:727625 发表于 2022-9-13 11:57 | 显示全部楼层
好资料,51黑有你更精彩!!
回复

使用道具 举报

ID:655665 发表于 2022-9-20 16:09 | 显示全部楼层
好资料,51黑有你更精彩!!
回复

使用道具 举报

ID:1045371 发表于 2022-9-21 09:19 | 显示全部楼层
初学好好研究一下
回复

使用道具 举报

ID:1053895 发表于 2022-11-25 14:14 | 显示全部楼层
感谢提供资料
第一次接触Arduino 真的需要这样有基础的教学资料来引导!
回复

使用道具 举报

ID:138707 发表于 2023-7-29 17:50 | 显示全部楼层
好资料,51黑有你更精彩!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表