ArduinoYun教程之ArduinoYun硬件介绍

ArduinoYun的电源插座

Arduino Yun有两排插座,这些插座可以按类型分为三类:电源、数字IO和模拟输入。电源部分主要集中在如图1.7所示的部分。

 

图1.7  电源集中部分

还有两个在如图1.8所示的位置。

 

图1.8  电源部分

下面我们介绍对应图中的各个名称及其含义:

  • q  3个GND:接地,他们虽然分布在不同的位置,但是功能都一样;
  • q  Vin:电源输入,通过它可以为整个板子供电,类似MicroUSB的供电功能,但是需要注意这个端口会绕过保护电路,如果过压则会毁坏板子。所以,对自己的实力没有信心时候不要使用这种方式。通常。USB供电已经能满足绝大部分的需求了;
  • q  5V:5V电源输出,这是绝大部分芯片使用的电压;
  • q  3.3V:3.3V电压输出,有些芯片需要使用这个电压,但注意它最大可以提供50ma的电流;
  • q  RESET:重置ATmega32u4,它通常被盾板使用;
  • q  IOREF:操作参考电压,它被盾板用来选择操作电压(3.3V或者5V);
  • q  AREF:模拟操作的参考电压,它用作模数转换(模拟和数字信号间的转换)。模拟输入口提供10bit的分辨率也就是1024个不同的值(2的10次方)。假设AREF为5V而输入为2.5V,那么模数转换的结果就是1024*(2.5/5)=512;如果AREF为10V则同样的输入2.5V转换结果则为256。

ArduinoYun的数字IO

数字IO即为数字信号的输入输出,所有20个端口都可以作为数字IO,它们主要分布在两个部分,如图1.9和1.10所示。

 

图1.9  数字IO部分

 

图1.10  数字IO部分

数字IO用来交换数字信号,数字信号只有高低两个状态。计算机中处理的数据就是数字信号、包括文本、视频、图像。在Arduino的周边设备中,数字设备有开关,LED点阵以及集成电路。

ArduinoYun的模拟输入

模拟IO与数字IO对应,它用来交换模拟信号,模拟信号是连续变化的。最常的模拟信号的例子是室内温度、湿度,它们的变化是连续的不会发生突变。模拟输入接受连续变化的电压输入,Yun有12个模拟输入,其中6个集中在如图1.11所示的部分。

 

图1.11  模拟输入

其余6个复用4、6、8、9、10和12,如图1.12所示。

 

图1.12  模拟输入

模拟输入的在使用时可以使用前置的A标识,即12个模拟输入端口可以通过A0~A11标识。其中,A0~A5对应图1.11中的A0~A5;A6~A11则对应4(A6)、6(A7)、8(A8)、9(A9)、10(A10)和12(A11)。

ArduinoYun的PWM

PWM是Pulse Width Modulation(脉冲宽度调制)的首字母缩写。它使用微处理器的数字输出来控制模拟电路,也就是说它用数字信号模拟模拟信号。例如,PWM这可以驱动扬声器发出不同音调的声音。具有PWM的插座非常容易区分,它们的端口号后都带有“~”符号,如图1.13所示。

 

图1.13  PWM口

从图中可以看出,它们分别是3、5、6、9、10和11号端口,共6个。

ArduinoYun的Serial

Serial即串口,它复用0和1号端口,0作为接收端而1作为发送端,这从图1.14中的箭头方向可以看出来。

 

1.14  Serial

向下的箭头则表示数据进入端口,而向上箭头则表示数据从端口发出。

ArduinoYun的TWI

TWI是Two-Wire Interface的首字母缩写,它实现的功能与I2C(Inter-Integrated Circuit)总线一样,但由于I2C受版权保护、已注册商标,所以Atmel以TWI来表示它。这种方式只需要两条线即可工作:SDA(串行数据)和SCL(串行时钟)。在Arduino Yun中,它们复用2和3号端口即2号端口作为SDA,3号作为SCL。

ArduinoYun 的SPI

SPI是Serial Peripheral Interface的首字母缩写,它是一种同步串行外设接口,它使用的是ICSP头(图1.4中的标号6)。

ArduinoYun的外部中断

中断可以使处理器更高效地运行。Yun有5个外部中断,他们分别复用3、2、0、1和7号端口。关于中断细节将在第4章进行介绍,这里就不再赘述。

ArduinoYun的两个微处理器的规格

因为Yun有两个微处理器,所以分别使用两个表格来列出他们的规格。AVR Arduino微控制器的规格如表1.1所示,Linux微处理器的规格如表1.2所示。

表1.1  AVR Arduino微处理器规格

 

这里我们需要注意的参数是“IO口最大供电流”和“3.3V口最大供电电流”。如果超过这些最大值,则有可能损坏板子。所以通常情况下不要使用IO口驱动继电器、直流电机等大功率器件。

表1.2  Linux微处理器规格

对于Linux未处理我们需要注意的参数就是“闪存”的容量,16MB的容量就限制了它不可以存储太多的多媒体文件,但是安装一些常用的软件还是足够的。

本文选自:Arduino Yun快速入门教程大学霸内部资料,转载请注明出处,尊重技术尊重IT人!

ArduinoYun教程之ArduinoYun硬件介绍的更多相关文章

  1. ArduinoYun教程之Arduino环境与Linux环境的桥梁Bridge

    ArduinoYun教程之Arduino环境与Linux环境的桥梁Bridge Arduino环境与Linux环境的桥梁——Bridge 在第一章中介绍Arduino Yun硬件的时候提到过,它上面有 ...

  2. ArduinoYun教程之Arduino编程环境搭建

    ArduinoYun教程之Arduino编程环境搭建 Arduino编程环境搭建 通常,我们所说的Arduino一般是指我们可以实实在在看到的一块开发板,他可以是Arduino UNO.Arduino ...

  3. ArduinoYun教程之OpenWrt-Yun与CLI配置Arduino Yun

    ArduinoYun教程之OpenWrt-Yun与CLI配置Arduino Yun OpenWrt-Yun OpenWrt-Yun是基于OpenWrt的一个Linux发行版.有所耳闻的读者应该听说他是 ...

  4. Xamarin Anroid开发教程之Anroid开发工具及应用介绍

    Xamarin Anroid开发教程之Anroid开发工具及应用介绍 Xamarin开发Anroid应用介绍 如今智能手机已经盛行了好几年,而针对这些智能手机的软件开发也变得异常火热.但是在Andro ...

  5. AppleWatch开发教程之Watch应用对象新增内容介绍以及编写运行代码

    AppleWatch开发教程之Watch应用对象新增内容介绍以及编写运行代码 添加Watch应用对象时新增内容介绍 Watch应用对象添加到创建的项目中后,会包含两个部分:Watch App 和 Wa ...

  6. Python基础教程之udp和tcp协议介绍

    Python基础教程之udp和tcp协议介绍 UDP介绍 UDP --- 用户数据报协议,是一个无连接的简单的面向数据报的运输层协议.UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但 ...

  7. jQuery EasyUI教程之datagrid应用(三)

    今天继续之前的整理,上篇整理了datagrid的数据显示及其分页功能 获取数据库数据显示在datagrid中:jQuery EasyUI教程之datagrid应用(一) datagrid实现分页功能: ...

  8. Kali Linux系列教程之OpenVas安装

    Kali Linux系列教程之OpenVas安装 文 /玄魂 目录 Kali Linux系列教程之OpenVas安装 前言 1.  服务器层组件 2.客户层组件 安装过程 Initial setup ...

  9. Playmaker Input篇教程之Playmaker购买下载和导入

    Playmaker Input篇教程之Playmaker购买下载和导入 Playmaker Input篇认识Playmaker Playmaker是Unity的插件,其标志如图1-1所示.开发者使用它 ...

随机推荐

  1. linux c 编程 ------ 串口编程

    http://blog.csdn.net/specialshoot/article/details/50707965 对于串口的打开操作,必须使用O_NOCTTY参数.O_NOCTTY如果路径名指向终 ...

  2. poj 1776 Task Sequences

    http://poj.org/problem?id=1776 题意: 有一个机器要完成N个作业, 给你一个N*N的矩阵, M[i][j]=1,表示完成第i个作业后不用重启机器,继续去完成第j个作业 M ...

  3. bzoj千题计划225:bzoj2143: 飞飞侠

    http://www.lydsy.com/JudgeOnline/problem.php?id=2143 分层图最短路 把能够弹跳的曼哈顿距离看做能量 dp[i][j][k]表示在(i,j)位置,还有 ...

  4. 流媒体技术学习笔记之(十一)Windows环境运行EasyDarwin

    流媒体平台框架下载安装 Github下载 下载地址:https://github.com/EasyDarwin/EasyDarwin/releases 解压安装 选择Windows 安装平台的安装包( ...

  5. Linux驱动中completion接口浅析(wait_for_complete例子,很好)

    completion是一种轻量级的机制,它允许一个线程告诉另一个线程工作已经完成.可以利用下面的宏静态创建completion:                          DECLARE_CO ...

  6. Petrozavodsk WinterTraining 2015

    PetrozavodskWinterTraining2015 A - Three Servers 题目描述:有\(n\)个数,将这\(n\)个数分成\(3\)堆,使得\(3\)堆中和的最大值减最小值最 ...

  7. 巧用PHP数组函数

    2014年3月5日 08:48:39 情景:项目中需要根据传递来的参数的不同,使用不同的缓存 假如传递来的参数最多有这几个(在这个范围内,但是每次传过来的参数不确定): $arg = array( ' ...

  8. ipsec-tools安装教程

    ipsec-tools最新版本为0.8.2,此处以0.7.3版本为例说明安装和使用过程.可参考ipsec-howto. 安装步骤 ipsec-tools依赖于linux2.6版本内核,在安装ipsec ...

  9. python基础--模块使用

      一:模块介绍 模块分为三种: 自定义模块 内置标准模块(又称标准库) 开源模块 自定义模块使用 # -*- coding:utf-8 -*- __author__ = 'shisanjun' &q ...

  10. Nuxt学习笔记

    参考地址:https://zh.nuxtjs.org/guide/installation  官网 http://jspang.com/2018/02/26/nuxt/ 1.目录结构 2.Nuxt常用 ...