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. Solr记录-solr文档xml

    Solr添加文档(XML) 在上一章中,我们学习解释了如何向Solr中添加JSON和.CSV文件格式的数据.在本章中,将演示如何使用XML文档格式在Apache Solr索引中添加数据. 示例数据 假 ...

  2. git高清技能图

    ----

  3. bzoj千题计划193:bzoj2460: [BeiJing2011]元素

    http://www.lydsy.com/JudgeOnline/problem.php?id=2460 按魔力值从小到大排序构造线性基 #include<cstdio> #include ...

  4. Linux命令(八)Linux系统信息相关命令

    top:

  5. CSS规范 - 最佳实践--(来自网易)

    最佳选择器写法(模块) /* 这是某个模块 */ .m-nav{}/* 模块容器 */ .m-nav li,.m-nav a{}/* 先共性 优化组合 */ .m-nav li{}/* 后个性 语义化 ...

  6. shift 用法

    shift  shift命令用于对参数的移动 (左移),通常用于在不知道传入参数个数的情况下依次遍历每个参数然后进行相应处理(常见于Linux中各种程序的启动脚本). 示例 1  示例 依次读取输入的 ...

  7. UVALive 6176 Faulhaber's Triangle

    题目链接 http://acm.sdibt.edu.cn/vjudge/ojFiles/uvalive/pdf/61/6177.pdf 题意是  给定一个数n,代表着一共有n个人,且他们的身高从1到n ...

  8. C语言字节对齐 __align(),__attribute((aligned (n))),#pragma pack(n)【转】

    转自:https://www.cnblogs.com/ransn/p/5081198.html 转载地址 : http://blog.csdn.net/21aspnet/article/details ...

  9. 让linux中 history显示每条命令的操作时间及操作用户【转】

    一.history 中显示日期时间用户名的办法 history 命令,用来显示命令行上的操作记录 不过默认是仅显示操作命令行本身,而没有记录操作时间等细节 例如 这样,我们查找记录时很麻烦,想回顾下某 ...

  10. mysql-8.0.11-winx64 免安装版配置方法

    mysql-8.0.11-winx64.zip  下载地址:https://dev.mysql.com/downloads/file/?id=476233 mysql-8.0.11-winx64.zi ...