Arduino Yun的硬件介绍Arduino Yun快速入门教程大学霸
Arduino Yun的硬件介绍Arduino Yun快速入门教程大学霸
Arduino Yun的硬件
前面也说过,Yun可以看做是拥有网络功能的Leonardo。更专业点来说它集Arduino Leonardo、Arduino Ethernet Shield和Arduino WIFI Shield的功能于一体。额,原谅笔者又把大家带偏了,我们回到正题。
本节的内容是介绍Arduino Yun的硬件,至于为何要介绍硬件,笔者认为是Arduino的开发不同于软件开发。Arduino是微控制器,它的核心是同各种外设之间交互。这种交互包括从外设读取数据以及向外设写入数据,而这基于的就是Arduino版上的两排插口,如图1.1所示。
图1.1 Arduino Yun上的插口
此时,你应该拿起板子看看这些插座,同时应该注意到了这些插座上的贴纸,如图1.2和1.3所示。
图1.2 Arduino Yun右侧的插座
图1.3 Arduino Yun左侧的插座
从图中或者手中的Arduino板子可以看到,这些标记名称各异,这就表明了他们可能有不同的作用,事实确实是这样。所以,本节的核心部分就是介绍这些插座的功能,其余部分则是介绍其他组件。当然,本着“四肢发达,头脑简单”的原则,我们先介绍板子上的大块头,然后再介绍这些“浓缩就是精华”插座。
1.4.1 主要部件
Yun的主要部件如图1.4所示。
图1.4 Arduino Yun的主要部件
在Yun小小的板子上集成了两颗处理器。一个是ATmega32u4(标号6),它是Arduino端的控制器,与连接的是MicorUSB(标号8)和两排数据插座以及ICSP头(标号4)。另一个处理器在标号3部分,与它相连的是网络接口(标号1)、USB host(标号7)以及WIFI(标号2)。下面依次介绍各个标号部分的作用:
q 网络接口(标号1):RJ45接口,即我们常见的有线网络接口,它用来连接有线网络;
q WIFI模块(标号2):WIFI模块,用于连接无线网络;
q AR9331处理器(标号3):Linux端的处理器,它运行的是基于Linux系统OpenWrt-Yun,它的作用是执行一些Linux端的命令;
q ICSP头(标号4):它通常用来调试ATmega32u4。通常向ATmega32u4上传程序是通过MicroUSB,当引导部分损坏后,就需要使用ICSP来重建引导。当然有些盾板也使用它来传输数据;
q 指示灯组(标号5):对应的指示灯有不同的功能,这在1.4.2中介绍;
q ATmega43u4(标号6):Arduino端的处理器,它主要控制Yun上的两排插座,之后编程的主要部分就是针对它;
q USB Host(标号7):可以连接各种使用这种接口标准的设备,例如摄像头;
q MicroUSB(标号8):功能包括为整个板子提供电源和为ATmega32u4编程。
1.4.2 指示灯组
指示灯组的放大图如图1.5所示。
图1.5 指示灯组
各个指示灯对应的功能如下:
q RX:对应于0号端口,串行通讯的接收指示,在接收数据时闪烁;
q TX:对应于1号端口,串行通讯的发送提示,在发送数据时闪烁;
q L13:连接在13号端口,当13号端口为高电平时被点亮;
q WAN:有线网络连接指示,在网线有数据交换的时候点亮;
q ON:电源指示;
q WLAN:WIFI指示,同时也可以用来在Linux端复位时指示进度;
q USB:表示USB口已经可用,通常在OpenWrt-Yun完全启动后点亮。
1.4.3 3个复位按钮
三个复位按钮的位置如图1.6所示。
图1.6 3个复位按钮的位置
这三个复位按钮的作用分别如下:
q 32U4 RST(标号1):用来复位ATmega32U4微处理器,它里面的程序(在Arduino中被称为Sketch)会重新运行;
q YUN RST(标号2):用来复位AR9331微处理器,导致的结果是Linux系统重启,在RAM中的数据都会丢失;
q WLAN RST(标号3):这个复位按钮有两个功能:将WIFI恢复出厂设置和将Linux image恢复出厂设置。要将WIFI恢复出厂设计需要将按钮按下5秒,此时WLAN LED会持续闪烁到释放按钮后的5秒,之后则表示恢复完成。重置Linux image则需要按下按钮30秒,在重置后,所有安装的软件及存储的数据都会丢失。这两种重置都会导致Linux系统重启。
1.4.4 电源插座
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。
1.4.5 数字IO
数字IO即为数字信号的输入输出,所有20个端口都可以作为数字IO,它们主要分布在两个部分,如图1.9和1.10所示。
图1.9 数字IO部分
图1.10 数字IO部分
数字IO用来交换数字信号,数字信号只有高低两个状态。计算机中处理的数据就是数字信号、包括文本、视频、图像。在Arduino的周边设备中,数字设备有开关,LED点阵以及集成电路。
1.4.6 模拟输入
模拟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)。
1.4.7 PWM
PWM是Pulse Width Modulation(脉冲宽度调制)的首字母缩写。它使用微处理器的数字输出来控制模拟电路,也就是说它用数字信号模拟模拟信号。例如,PWM这可以驱动扬声器发出不同音调的声音。具有PWM的插座非常容易区分,它们的端口号后都带有“~”符号,如图1.13所示。
图1.13 PWM口
从图中可以看出,它们分别是3、5、6、9、10和11号端口,共6个。
1.4.8 Serial
Serial即串口,它复用0和1号端口,0作为接收端而1作为发送端,这从图1.14中的箭头方向可以看出来。
图1.14 SerialArduino Yun的硬件介绍Arduino Yun快速入门教程大学霸
向下的箭头则表示数据进入端口,而向上箭头则表示数据从端口发出。
1.4.9 TWI
TWI是Two-Wire Interface的首字母缩写,它实现的功能与I2C(Inter-Integrated Circuit)总线一样,但由于I2C受版权保护、已注册商标,所以Atmel以TWI来表示它。这种方式只需要两条线即可工作:SDA(串行数据)和SCL(串行时钟)。在Arduino Yun中,它们复用2和3号端口即2号端口作为SDA,3号作为SCL。
1.4.10 SPI
SPI是Serial Peripheral Interface的首字母缩写,它是一种同步串行外设接口,它使用的是ICSP头(图1.4中的标号6)。
1.4.11 外部中断
中断可以使处理器更高效地运行。Yun有5个外部中断,他们分别复用3、2、0、1和7号端口。关于中断细节将在第4章进行介绍,这里就不再赘述。
1.4.12 两个微处理器的规格
因为Yun有两个微处理器,所以分别使用两个表格来列出他们的规格。AVR Arduino微控制器的规格如表1.1所示,Linux微处理器的规格如表1.2所示。
表1.1 AVR Arduino微处理器规格Arduino Yun的硬件介绍Arduino Yun快速入门教程大学霸
微控制器 | ATmega32u4 |
操作电压 | 5V |
输入电压 | 5V |
数字IO口 | 20 |
PWM通道 | 7 |
模拟输入通道 | 12 |
IO口最大供电流 | 40 mA |
3.3V口最大供电电流 | 50 mA |
闪存 | 32 KB (4KB用作启动引导) |
SRAM | 2.5 KB |
EEPROM | 1 KB |
时钟频率 | 16 MHz |
这里我们需要注意的参数是“IO口最大供电流”和“3.3V口最大供电电流”。如果超过这些最大值,则有可能损坏板子。所以通常情况下不要使用IO口驱动继电器、直流电机等大功率器件。
表1.2 Linux微处理器规格
处理器型号 | Atheros AR9331 |
架构 | MIPS @400MHz |
操作电压 | 3.3V |
有线网络接口 | IEEE 802.3 10/100Mbit/s |
WiFi网络接口 | IEEE 802.11b/g/n |
USB A型口 | 2.0 Host |
读卡器r | Micro-SD |
RAM | 64 MB DDR2 |
闪存 | 16 MB |
长度 | 73 mm |
宽度 | 53 mm |
重量 | 32 g |
对于Linux未处理我们需要注意的参数就是“闪存”的容量,16MB的容量就限制了它不可以存储太多的多媒体文件,但是安装一些常用的软件还是足够的。Arduino Yun的硬件介绍Arduino Yun快速入门教程大学霸
Comments are closed.