NK-RK3399-V0A

资源特性

  • CPU:Rockchip RK3399 6 核处理器,2*A73 ( up to 1.8GHz ) + 4*A53 ( up to 1.4GHz )
  • GPU:Mail-T860 GPU MP4 四核心 GPU ,支持 OpenGL ES1.1/2.0/3.0/3.1,OpenVG1.1,OpenCL,DX11
  • 内存:板载 DDR4 2GB (可选 4G)
  • 存储 :板载 eMMC 16G
  • TF :1*TF 卡接口,最大支持 32GB
  • 网络: 2 * 10/100/1000Mbps 速率自侦测以太网口
  • WIFI: 1* 板载 AW-NM372 芯片
  • 4G/5G:1*MiniPCIE 支持
  • 串口: 4xCOM
  • COM1 默认 RS485 , 可设置 RS232 ( DB9 )
  • COM2 默认 RS232 , 可设置 RS485 ( DB9 )
  • COM3 默认 RS232
  • COM4 默认 RS232 , 其中 COM4 可设置 TTL
  • HDMI:1 * HDMI 接口 ,最大支持 1920×1080 输出
  • LVDS:1* 24bit LVDS 接口,1920*1080P 输出
  • EDP:1*eDP , 最大支持 1920*1080P 输出
  • Audio:1 * 功放(各 6W 8 欧,左右声道,PH2.0-4P), MIC IN*1 ( PH2.0-2P)
  • USB:6*USB 接口(4 在海岸线,其中 1 为 USB3.0 ,2 个为内部 PH2.0-4P )
  • KEY:1*Return,U-boot 复用
  • OTG:1*OTG (A 型 USB,USB3.0 复用 )
  • Debug:1* debug 接口
  • LED:1*系统指示灯(蓝色) 1*电源指示灯( 绿色 )
  • IO:4*GPI、4*GPO ( 2*PH2.0-5P ) , 1*TP 接口(PH2.0 6P , 含 i2c 定义)

—-

接口布局和尺寸


接口概览


接口引脚定义

主板内置插针式引脚排序方式

机械尺寸



Linux系统的使用

系统下载

Linux系统

Ubuntu 18.04: 系统下载链接

工具链下载

工具

烧录工具下载

烧录工具

系统烧录

1、将烧录线连接主板OTG接口,接上后接通电源

USB3.0口为OTG系统烧录口,红色箭头标记区域,如上图所示。 电源:12v-24V电源输入。

2、下载烧录工具:

  • 请务必先安装驱动,烧录工具链接含有驱动DriverAssitant压缩包,解压后点击DriverInstall.exe安装驱动

3、开始烧录:

  • 将数据线一端与主板OTG连接,另一端连接电脑。注意烧录前,需要按住SW2 recovery按键再接通电源

  • 打开压缩包中开发工具 » 升级固件 » 点击固件并选择好固件 » 点升级开始烧录

  • 烧录过程中的状态,会有进度显示

  • 更换系统平台(例如安卓切换到Linux)时,可能出现无法烧录的情况,此时打开开发工具 » 高级功能 » 点击进入Maskrom切换烧录模式后烧录系统

4、完成烧录:

  • 烧录过程不需要任何操作,烧录成功后右框会显示设备自动重启,烧录完成。

600×456

串口调试

  • Windows 上一般用 putty 或 SecureCRT。以 putty 为例介绍如何使用串口调试功能
  • putty下载链接:下载链接,选择putty.exe
  • 串口通讯参数配置:
 波特率:115200
 数据位:8
 停止位:1
 奇偶校验:无
 流控:无
  • putty设置界面如下:

 1.Connection type设置为Serial
 2.Serial line设置为pc端连接的串口(此项填写pc端实际的串口号)
 3.Speed设置为150000
 4.点击Open按钮打开终端
  • 查看PC端的串口号:

  • 右键点击我的电脑->管理->设备管理器->端口(COM和LPT)找到本机对应的串口
  • 如无设备请先确定pc端是否自带串口及驱动是否安装
  • 进入串口调试终端:

  • 如图进入交互界面,敲击回车或者输入命令会有反馈

以太网使用方法

  • 在设置中找到Ethernet,Ethernet IP mode可更改三种模式模式。

  • 静态IP设置方式

WIFI使用方法

  • 设置中开启WLAN,可连接能扫描到的WIFI。

BT使用方法

  • 打开设置,无线和网络菜单

  • 蓝牙,开启蓝牙,即可搜索附近的蓝牙设备

  • 点击想要连接的蓝牙设备可进行配对

声卡使用方法

  • 设备
    • 查看所有设备列表
cat /proc/asound/cards

478×113

  • 查看所有播放设备
aplay -l

720×165

  • 查看所有录制设备
arecord -l

740×120

  • 使用
    • 录制音频
arecord -D sysdefault:CARD=rockchipes8316c -f cd -d 10 -t wav test.wav

593×82

  • 播放音乐
aplay -D sysdefault:CARD=rockchipes8316c test.wav

571×81

串口使用方法

  1. 将COM设备与板卡连接,确认连接无误后开机(连接方法参照上文[接口引脚定义]并注意232/485模式的选择)
  2. 确认所连接的节点
  3. 瑞芯微(RK)一般有/dev/ttyS0-4,其中/dev/ttyS2一定为COM_DB,其余按顺序依次对应
  4. 开始通信

GPIO使用方法

xxx

4G模块使用方法

  • 连接4G模块(如EC20全网通模块)到主板的4G卡槽,插入micro SIM卡到主板的SIM卡槽内,如下指引图

  • 上电启动,4G模块识别到后,4G信号如下图

  • 4G连通后,打开终端ping网络测试,或者打开浏览器浏览网页

usb使用方法

  • 连接USB存储设备或者USB键鼠,到主板3个USB2.0口,USB3.0口仅作为OTG使用。

TF使用方法

  • 插入TF扩展卡到卡槽内,可读取TF数据和写入数据到TF外部存储卡。

RTC使用方法

  1. 在终端输入“date”可查看当前RTC时间,
  2. 输入“ date -s +时间设置格式”,可设置当前时间,
  3. 输入“hwclock -w”,保存时间,重启主板。即可保存。

ubuntu 18.04 使用方法

Qt交叉编译环境支持
  1. 安装:

进入 Qt 官方下载页面,选择一个版本下载 qt-creator-opensource-linux-x86_64-x.x.x.run,下载完成之后,在终端执行./xxxx.run运行安装,注意文件需要有执行权限。

  1. 配置:

安装完成后,启动 Qt Creator,打开菜单 Tools → Options,找到 Kits。

  • 配置 Qt Versions

点击右侧 add 按钮添加,选择 Qt 环境安装位置中的 qmake 即可 qmake:/opt/firefly-qt-5.12.2-aarch64/host/bin/qmake

  • 配置 Compilers

点击右侧 add 按钮添加 gcc 和 g++ 交叉编译器的位置

如果主机安装了 crossbuild-essential-arm64,则编译器就在 /usr/bin/ 下

如果使用了第三方的交叉编译器,找到安装位置并添加即可

如果目标平台是 Buildroot,则需要使用 Buildroot Qt 环境包中的编译器

g++:/opt/firefly-qt-5.12.2-aarch64/host/bin/aarch64-buildroot-linux-gnu-g++

gcc:/opt/firefly-qt-5.12.2-aarch64/host/bin/aarch64-buildroot-linux-gnu-gcc

为方便调试,配置 Debuggers 和 Devices 用于在线调试:

  • 配置 Debuggers

点击右侧 add 按钮添加 gdb

选择和上一步使用的编译器处于相同位置的 gdb

gdb:/opt/firefly-qt-5.12.2-aarch64/host/bin/aarch64-buildroot-linux-gnu-gdb

  • 配置 Devices

设置好设备的 IP、用户名 (root) 和密码 (firefly) 。为了方便调试,可以在设备上设置静态 IP。

  • 配置 Kits

将前面设置的配置项添加到 Kits。 如果目标平台是 Ubuntu 系统,这一步也需要添加 sysroot 的路径

  1. 编译运行:

打开 demo 程序,Welcome → Open Project,选择要使用的 Kits:

之后打开 Projects → Run,配置命令行参数,这里设置为 -platform wayland:

目标平台是 Ubuntu 则使用 -platform xcb (Ubuntu 桌面环境),或者根据需要选择 linuxfb、eglfs

配置环境变量,即 export XDG_RUNTIME_DIR=/tmp/.xdg:

RK356X Buildroot 则需要使用 /var/run 而不是 /tmp/.xdg

目标平台是 Ubuntu 则需要根据之前设置的 platform 添加不同的环境变量,详情在 Qt 环境包中的说明文件中

编译运行:

点击 Build 交叉编译 Qt 程序;点击 Run 或 Debug 在设备上运行或调试程序。要重新运行程序时,记得手动点击 Stop 关闭已经运行的程序

编译生成目录和 demo 目录在同一位置。

视频硬件编解码支持

RK3399集成的VPU具有优秀的视频编解码能力,Mpp是Rockchip为VPU提供的一套视频编解码的api, 并且基于mpp。Rockchip提供了一套gstreamer的编解码插件。用户可以根据自己的需求,基于gstreamer来做视频编解码的应用,或者直接调用mpp,来实现硬件的编解码加速。

系统提供了一个测试视频文件,位于/usr/local/test.mp4 ,测试文件为1080P, 24Fps, H264编码, Mp4格式。

可以通过一下几种方式,验证和开发视频编解码相关应用

  1. Gstreamer
  • Ubuntu 16.04 下,gstreamer 1.12 已经安装在/opt/目录下。
  • Ubuntu 18.04下, gstreamer 1.12 已经安装到系统中。

/usr/local/bin/h264dec.sh 测试硬件H264解码。

/usr/local/bin/h264enc.sh 测试硬件H264编码。

用户可以参照这两个脚本,配置自己的gstreamer应用。

- MPV

系统提供的Mpv播放器,可以直接调用rkmpp解码插件

  1. FFmpeg

FFmpeg 对于 Rockchip 暂时只支持通过 Mpp 实现硬件解码,暂时没有硬件编码的支持。

Firefly Ubuntu 已经安装了 FFmpeg,用户可以直接使用。

  • 确认rkmpp解码器
 $ ffmpeg -decoders | grep "rkmpp"
 V..... h264_rkmpp           h264 (rkmpp) (codec h264)
 V..... hevc_rkmpp           hevc (rkmpp) (codec hevc)
 V..... vp8_rkmpp            vp8 (rkmpp) (codec vp8)
 V..... vp9_rkmpp            vp9 (rkmpp) (codec vp9)
  • 测试命令
$ ffmpeg -y -c:v h264_rkmpp -i test.mp4 -an  output.yuv

特别注意: FFmpeg h264_rkmpp 解码获得的是 AV_PIX_FMT_DRM_PRIME,也就是 DRM 帧数据,如果是基于drm显示,可以直接输出帧,否则,需要用 hwdownload 进行转换。

更多内容可以参考FFmpeg 官网

  1. MMP
  • Ubunut 系统下, mpp 相关dev包都已经安装到系统中。

更多相关资料,可参考linux-sdk/docs/Linux/Multimedia下的相关文档

QTCreator 使用方法

通用方法


查看CPU温度

root@nodka:/ # cat /sys/class/hwmon/hwmon0/device/temp1_input            
45

查看CPU序列号

root@nodka:/ # cat /proc/cpuinfo | grep Serial
Serial		: c7a2958e9e958b2d

查看CPU频率

root@nodka:/ # cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq       
1800000
root@nodka:/ # cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq       
126000
root@nodka:/ # cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq       
126000
root@nodka:/ # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq       
126000

查看内存容量

root@demo:~# busybox free -m
             total       used       free     shared    buffers     cached
Mem:          3839        232       3607         24         13        121
-/+ buffers/cache:         97       3742
Swap:            0          0          0

查看存储容量

root@demo:~# busybox df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/root                14.2G      3.5G     10.1G  26% /
devtmpfs                  1.9G         0      1.9G   0% /dev
tmpfs                     1.9G         0      1.9G   0% /dev/shm
tmpfs                     1.9G     18.4M      1.9G   1% /run
tmpfs                     5.0M         0      5.0M   0% /run/lock
tmpfs                     1.9G         0      1.9G   0% /sys/fs/cgroup
tmpfs                   384.0M         0    384.0M   0% /run/user/0

Android系统的使用

系统下载

Android系统

Android 7.1.2: 系统下载链接

工具链下载

工具

烧录工具下载

烧录工具

系统烧录

1、将烧录线连接主板OTG接口,接上后接通电源

USB3.0口为OTG系统烧录口,红色箭头标记区域,如上图所示。 电源:12v-24V电源输入。

2、下载烧录工具:

  • 请务必先安装驱动,烧录工具链接含有驱动DriverAssitant压缩包,解压后点击DriverInstall.exe安装驱动

3、开始烧录:

  • 将数据线一端与主板OTG连接,另一端连接电脑。注意烧录前,需要按住SW2 recovery按键再接通电源

  • 打开压缩包中开发工具 » 升级固件 » 点击固件并选择好固件 » 点升级开始烧录

  • 烧录过程中的状态,会有进度显示

  • 更换系统平台(例如安卓切换到Linux)时,可能出现无法烧录的情况,此时打开开发工具 » 高级功能 » 点击进入Maskrom切换烧录模式后烧录系统

4、完成烧录:

  • 烧录过程不需要任何操作,烧录成功后右框会显示设备自动重启,烧录完成。

600×456

有线adb连接

1、板子与电脑连接

  • 用数据线一端连接电脑,一端连接板子的USB3.0口,如图:

2、勾选上连接的设置

  • 在设置→USB→Connect to Pc 中把选择框勾选上,如图:

3、工具下载

工具链接

  • 工具下载后放到C盘下的用户目录中并解压,如下图

  • 按住Windows键+R键打开输入框,输入cmd然后回车进入命令窗口

  • 输入cd platform-tools进入工具的路径下

  • 输入adb shell 就成功用adb进入板子系统

网络adb连接

  • 在同一个局域网内,可以利用wifi、以太网用adb进入板子系统。
  • 下面以wifi为例子,通过网络adb连接到板子

1、到设置→WLAN→连接一个wifi,保持电脑也在这个局域网内。

2、查看此wifi的ip地址

3、电脑打开命令窗口,ping板子的ip。

  • 如果ping不同,检查一下ip地址是否正确,是否在同一个网内

4、输入cd platform-tools进入工具的路径

5、输入adb connect ip 连接到板子

6、adb shell 进入系统

串口进后台

1、通过串口进入系统后台,需要利用板子的Debug接口,接口位置和定义如图:

* 接口只需要用到3个引脚,TX、RX、GND

2、需要用到串口小板工具

  • A部分需要接入TX、RX、GND
  • B部分连接电脑USB口

3、硬件部分连接效果图

4、在电脑的设备管理器→端口 中看有没有串口信息

5、打开Xshell新建一个会话,在连接下选择协议为SERIAL,操作如图:

6、点击串口,端口号为设备管理器看到的串口号,波特率为:1500000

7、最后点击连接,串口进入后台

打印/导出