[原创]翻译系列之四Arduino Nano
概况
Arduino Nano是基于ATmega168(Arduino Nano 2.x) 或 ATmega328 (Arduino Nano 3.x) 微控制器的微型板。可直接插在面包板上使用。功能跟Arduino Duemilanove很像,但属于不同的包。用Mini-BUSB线替代了直流电源插口。
Arduino Nano 由Gravitech设计和生产。
技术规格
微处理器 ATmega168 or ATmega328
工作电压 5V
输入电压(推荐) 7-12 V
输入电压(限制范围) 6-20 V
数字输入/输出引脚 14路(其中6路可用于PWM输出)
模拟输入 8
每路输入/输出引脚的直流电流 40 mA
闪存存储器 16 KB (ATmega168) or 32KB (ATmega328) 其中 2 KB 用于引导区
SRAM 1 KB (ATmega168) or 2 KB (ATmega328)
EEPROM 512 bytes (ATmega168) or 1 KB (ATmega328)
时钟频率 16 MHz
尺寸 0.73英寸 x 1.70英寸
长度 45 mm
宽度 18 mm
重量 5 g
文件
OSH:原理图、参考设计和开发板尺寸
Arduino Nano 是开源硬件!您可以使用下列文件建立自己的主板:
Arduino Nano 3.0 (ATmega328): 原理图, Eagle files.
Arduino Nano 2.3 (ATmega168): manual (pdf), Eagle files.
Note: since the free version of Eagle does not handle more than 2 layers, and this version of the Nano is 4 layers, it is published here unrouted, so users can open and use it in the free version of Eagle.
注意:因为Egale的免费版本不能处理多于2层板,这个版本是4层,这里发布的是没有布线版本,用户可以用Eagle免费版本来打开。
电源
Arduino Nano可以通过Mini-B USB连接供电,6-20V未稳压外部电源(引脚30)或 5V稳压外部电源(引脚27)。自动选择最高电压的电源供电。
存储
ATmega168 16kb 空间保存代码,其中2KB用于引导程序, 它有1KB SRAM 和 512字节的EEPROM(可利用EEPROM library来读写)。 ATmega328 有32KB空间,2KBSRAM和1KB EEPROM。
输入和输出
Nano上的14路数字引脚中的每一路引脚都可以作为输入或输出引脚。这可以通过使用pinMode(), digitalWrite(), 和digitalRead() 函数来实现。各引脚的工作电压均为5V。各引脚可以提供或接收最大电流值不得超过40mA, 且配有20-50kΩ的内部上拉电阻(默认处于断开状态)。
此外,某些引脚还具有专用功能:
接口:0(RX)和1(TX)号引脚'用于接收(RX)和发送(TX)TTL串行数据。这两路引脚连接到的USB-to-TTL串行芯片的相应引脚上。
外部连接中断:2和3号引脚:可以对这些引脚进行配置,以便出现低值、上升沿或下降沿或数值变化等现象时,能发出中断连接指令。更多详细信息,请参阅中断连接指令()功能。
PWM:3、5、6、9、10和11号引脚:通过analogWrite() 函数,提供8位PWM输出。
SPI:10(SS)、11(MOSI)、12(MISO)和13(SCK)号引脚:这些引脚支持通过 SPI库进行通信。
LED:13号引脚''':有一个内置LED连接到13号数字引脚。当引脚位于高位值时,LED亮起,而当引脚位于低位值时,LED熄灭。
模拟输入:Nano有8个模拟输入引脚,每路输入提供10位分辨率(即1024位不同的值)。但其默认输入值范围为0-5V。可通过analogReference() 函数来改变值。模拟引脚6和7不能用做数字引脚。
I2C: A4 (SDA) and A5 (SCL):支持通过线库进行Wire库通信
AREF:模拟输入的参考电压,通过analogReference()函数处理
复位:减小该引脚的输入值,以便让单片机复位。该功能通常用于因外壳限制了开发板上的复位按钮,而需要在外壳中添加一个复位按钮的情况。
通信
Arduino Nano配有许多设施,便于与计算机、另一个Arduino 开发板或其他单片机通信。ATmega168和ATmega328提供UART用于TTL(5V)串行通信,这可以通过0(RX)1(TX)号数字引脚实现。开发板上也能通过USB接通串行通信, 并在计算机(采用Windows系统的计算机将需要配置一个.inf文件,而采用OSX和Linux系统的计算机将自动识别开发板为COM端口)中提供一个软件虚拟COM端口。。Arduino软件(IDE)中包含有串口监听软件,允许通过开发板发送和接收简单的文本数据。
可通过软件串行库在Nano的任意数字引脚上实现串行通信。
Nano还支持I2C(TWI)和SPI通信。Arduino软件(IDE)包括一个线库,以简化使用I2C总线的操作,更多详细信息请参阅文档。对于SPI通信,请参阅SPI库。
自动(软件)复位
对于Arduino Nano开发板,用户可以通过其所连接电脑中正在运行的软件将其复位,而不需要在上传代码之前手动按下复位按钮。ATmega168 或ATmega328的其中一根硬件流控制线(DTR)通过一个100纳法的电容器连接到ATmega168 或ATmega328的复位线上。该线路被确定(降低)后,复位线降到足够长度以复位芯片。 通过该功能,Arduino软件允许用户通过轻按Arduino软件(IDE)上的上传按钮来上传代码。这意味着,引导程序逾时更短,因为降低DTR可以与启动上传代码协调进行。
这种设置还具有其他含义。当Nano连接到采用Mac OS X或Linux系统的计算机时,每次从软件(通过USB)连接到Pro时,Pro都会进行复位操作。在复位后的0.5s左右时间内,引导程序将在Nano上运行。若将Nano编程设计为忽略缺陷数据(即除新代码上传以外的任何数据), 则打开连接后,Nano将会拦截发送到开发板上的前面几个字节的数据。若Nano首次启动时,开发板上运行的草图接收了一次性配置或其他数据,请确保连接打开后以及发送该数据之前,与Nano通信的软件有等待1s。
来自 https://www.arduino.cc/en/Main/ArduinoBoardNano