NanoPi K2/zh

From FriendlyELEC WiKi
Revision as of 07:02, 7 April 2017 by Yonganch (Talk | contribs) (接口布局)

Jump to: navigation, search

English

1 介绍

NanoPi K2-1.jpg
NanoPi K2-2.jpg
NanoPi K2-3.jpg
  • NanoPi K2是友善电子专门针对商业级用户以及创客、嵌入式爱好者、电子艺术家等群体推出的一款小巧但接口和功能丰富的开发板。
  • NanoPi K2采用Amlogic S905作为主控,搭配2GB DDR3内存, 集成千兆以太网以及Wi-Fi蓝牙模块, 并且支持动态调频调压以及睡眠唤醒功能。Amlogic S905芯片,采用28纳米工艺制程,CPU是四核ARM Cortex-A53,GPU则是五核的ARM Mali™-450。
  • NanoPi K2配备了丰富的接口,包括HDMI,eMMC模块接口、千兆以太网口、 I2S接口、四个标准USB-A型口, 一个microUSB OTG接口等。而且板载红外接收器,拥有独立的调试串口,丰富的GPIO口。解码能力上支持超高清4K@60fps硬件解码,支持H.265 10比特、H.264和AVS+等众多格式,能满足目前以视频播放为主的OTT的应用, 视频服务是OTT上最重要的功能,解码能力提高到了4K 10bit模式,支持Dolby,DTS,能提供4K,高保真音频的完美还原。

2 资源特性

  • CPU: Amlogic S905, Quad-core ARM Cortex-A53@1.5GHz, DVFS
  • GPU: Penta-core ARM Mali™-450
  • RAM: 2GB DDR3
  • 以太网: 10/100/1000M (RTL8211F)
  • Wireless:802.11 b/g/n
  • Bluetooth:4.0 dual mode
  • 天线: Wi-Fi和蓝牙共用, 板载陶瓷天线, 同时提供IPX接口
  • 红外:板载红外接收模块
  • 音频:Via HDMI/蓝牙
  • eMMC: 板载eMMC模块接口以及eMMC模块固定柱子
  • I2S:板载I2S接口, 7Pin, 2.54mm排针
  • SD: microSD卡槽一个
  • USB Host: 4 x USB 2.0 Host, 标准A型接口
  • Micro USB: 1 x USB 2.0, 有OTG功能, 可作为电源输入和数据传输
  • HDMI: HDMI 2.0, Type-A型口, 支持4K显示
  • GPIO扩展接口: 40 Pin,2.54mm排针, 包含I2C, SPI, ADC, GPIO, UART, PWM, SPDIF, CVBS等
  • 调试串口:4Pin,2.5mm单排针
  • 按键:电源按键一个
  • LED:电源指示灯一个, 系统状态指示灯一个
  • 电源接口:DC电源接口, microUSB接口
  • PCB Size:56x85mm,6层,沉金工艺
  • 供电: DC 5V/2A

3 接口布局和尺寸

3.1 接口布局

File:NanoPC-M2A-1610-IF-001.png
NanoPi-M2A接口布局
  • GPIO管脚定义
Pin# Name Pin# Name
1 SYS_3.3V 2 VDD_5V
3 GPIODV_24/I2C_SDA_A 4 VDD_5V
5 GPIODV_25/I2C_SCK_A 6 GND
7 GPIOY_0 8 GPIOY_13/UART_TX_C
9 DGND 10 GPIOY_13/UART_RX_C
11 GPIOY_1 12 GPIOY_16/PWM_A
13 GPIOY_2 14 GND
15 GPIOY_3 16 GPIOY_15/PWM_F
17 SYS_3.3V 18 GPIOY_4
19 GPIOY_5 20 GND
21 GPIOY_7 22 GPIOY_6
23 GPIOY_9 24 GPIOY_8
25 DGND 26 GPIOY_10
27 GPIODV_26/I2C_SDA_B 28 GPIODV_27/I2C_SCK_B
29 GPIOY_11/SPDIF_IN 30 GND
31 GPIOAO_5 32 GPIOY_12/SPDIF_OUT
33 GPIOH_3 34 GND
35 GPIOCLK_1 36 CVBS
37 AIN1 38 1.8V Vref Out
39 GND 40 AIN0
  • eMMC接口管脚定义
Pin# Name Pin# Name
1 eMMC_D0 2 eMMC_D1
3 eMMC_D2 4 eMMC_D3
5 eMMC_D4 6 eMMC_D5
7 eMMC_D6 8 eMMC_D7
9 eMMC_DS 10 GND
11 eMMC_CMD 12 eMMC_CLK
13 NC 14 GND
15 NC 16 1.8V OUT
17 eMMC_RST 18 3.3V OUT
19 GPIOY_5 20 GND
  • Debug Port(UART0)
Pin# Name
1 GND
2 VDD_5V
3 UART_TX_AO_A
4 UART_RX_AO_A
  • 7Pin I2S接口定义
Pin# Name
1 GND
2 VDD_3.3V
3 I2S_SCLK
4 I2S_LRCLK
5 I2S_DATA_OUT
6 I2S_DATA_IN
7 I2S_MCLK
说明
  1. SYS_3.3V: 3.3V电源输出
  2. VDD_5V: 5V电源输入/输出。输入范围:4.7~5.6V
  3. 全部信号引脚均为3.3V电平
  4. 更详细的信息请查看原理图:[]

3.2 机械尺寸

NanoPi K2 Dimensions

详细尺寸:[]

4 快速入门

4.1 准备工作

启动NanoPi K2前,请先准备好以下硬件

  • NanoPi K2主板
  • TF卡: Class10或以上的 8GB SDHC卡
  • 一个DC接口的外接电源,要求输出为5V/2A
  • 一台支持HDMI输入的显示器或者电视(或选购LCD配件)
  • 一套USB键盘鼠标,同时连接还需要USB HUB (或选购串口转接板,要PC上进行操作)
  • 一台电脑,需要联网,建议使用Ubuntu 14.04 64位系统

4.2 经测试使用的TF卡

制作启动NanoPi K2的TF卡时,建议Class10或以上的 8GB SDHC卡。以下是经友善之臂测试验证过的高速TF卡:

  • SanDisk闪迪 TF 8G Class10 Micro/SD 高速 TF卡:

SanDisk MicroSD 8G

  • SanDisk闪迪 TF128G 至尊高速MicroSDXC TF 128G Class10 48MB/S:

SanDisk MicroSD 128G

  • 川宇 8G手机内存卡 8GTF卡存储卡 C10高速class10 micro SD卡:

chuanyu MicroSD 8G

4.3 制作一张带运行系统的SD卡

4.3.1 快速从SD卡启动NanoPi K2

首先访问[此处的下载地址]下载需要的固件文件:

  • 您需要准备一张4G或以上容量的SDHC卡,该卡的已有数据将会被破坏,因此请先对SD卡上的数据进行备份。
固件文件列表:
s905-android-sd4g-xxx.img.zip Android5.1系统固件
烧写工具:
win32diskimager.rar Windows平台下的烧写工具,Linux系统可以用dd命令
  • 将固件和烧写工具分别解压,在Windows下插入SD卡(限8G及以上的卡),以管理员身份运行 win32diskimager 工具, 在win32diskimager工具的界面上, 选择你的SD卡盘符,选择你要烧写的系统固件,点击 Write 按钮烧写即可。
  • 当制作完成 SD 卡后,拔出 SD 卡插入 NanoPi K2 的 BOOT 卡槽,上电启动(注意,这里需要 5V/2A 的供电),你可以看到红灯以及蓝灯长亮,这时你已经成功启动 NanoPi K2。

4.3.2 在Linux Desktop下通过脚本制作

  • 1) 将microSD插入Ubuntu的电脑,用以下命令查看你的SD卡设备名
dmesg | tail

当dmesg输出类拟信息 sdc: sdc1 sdc2时,则表示SD卡对应的设备名为 /dev/sdc,也通过用命令cat /proc/partitions来查看。

  • 2) 下载Linux下的制作脚本
git clone https://github.com/friendlyarm/sd-fuse_amlogic.git
cd sd-fuse_amlogic
  • 3) 以下是制作启动Android的SD卡的方法
su
./fusing.sh /dev/sdx

(注:/dev/sdx请替换为实际的SD卡设备文件名)
制作包中未包含Android烧写文件,第一次使用时会提示需要下载,输入Y下载,N或10秒未输入则取消。

4.3.3 NanoPi K2 扩展TF卡分区

  • Android扩展分区,要在pc上执行下列操作:
sudo umount /dev/sdx?
sudo parted /dev/sdx unit % resizepart 4 100 resizepart 7 100 unit MB print
sudo resize2fs -f /dev/sdx7

(注:/dev/sdx请替换为实际的SD卡设备文件名)

4.3.4 关于HDMI分辨率

对于HDMI的显示模式,Android则是会通过EDID获得HDMI设备如电视机所支持的显示模式,然后自动选择一个合适的分辨率。

4.4 在电脑上修改SD卡上的系统

如果你想在运行系统之前,先对系统做一些修改,可以参看本节内容,否则可以跳过本节。
将制作好microSD卡插入一台运行Linux的电脑,可以挂载SD卡上的boot和rootfs等分区,对分区内容进行修改,通过在以下情况下你需要进行这些操作:
1) 你想更改Kernel Command Line参数,则可以通过sd-fuse_amlogic/tools目录下的fw_setenv工具来操作。
查看当前的Command Line:

cd sd-fuse_nanopi2/tools
./fw_printenv /dev/sdc | grep bootargs

目前的Android 5.1.1_r6启用了SELinux,缺省模式是enforcing,你可以通过Command Line来修改它,例如:

./fw_setenv /dev/sdc bootargs XXX androidboot.selinux=permissive

即可修改为permissive模式,其中上面的XXX需要替换成原来的bootargs值。

2) 更新内核
对于Android来说是同一个文件,因此直接使用新编译的uImage来替换SD卡boot分区下的文件即可。

4.5 运行Android

  • 将制作好SD卡插入NanoPi K2,连接HDMI,最后接电源,NanoPi K2会从SD卡启动。你可以看到板上PWR灯以及蓝灯常亮,这说明系统已经开始启动了,同时电视上也将能看到系统启动的画面。

NanoPi K2 Android

  • 如同所有PC, 正确的关机对NanoPi K2而言很重要,否则可能会损坏安装在MicroSD卡中的系统文件,导致下次无法顺利启动运行,如要关机,直接按PWR按键即可。