您尚未登录。

楼主 # 2022-07-19 15:22:20

RiceChen
会员
注册时间: 2021-01-07
已发帖子: 1
积分: 96

全志V853开发板--构建编译

## 全志V853-高性能边缘AI视觉处理芯片

1


V853 是一颗面向智能视觉领域推出的新一代高性能、低功耗的处理器SOC,可广泛用于智能门锁、智能考勤门禁、网络摄像头、行车记录仪、智能台灯等智能化升级相关行业。
V853 集成Arm Cortex-A7和RISC-V E907 双CPU,内置最大 1T 算力 NPU,使用全志自研 Smart 视频引擎,最大支持5M@25fps H.265编码和5M@25fps H.264编解码,同时集成高性能 ISP 图像处理器,可为客户提供专业级图像质量。V853 还支持 16-bit DDR3/DDR3L,满足各类产品高带宽需求;支持 4lane MIPI-CSI/DVP/MIPI-DSI/RGB 等丰富的专用视频输入输出接口,满足各类AI视觉产品需求;采用先进的22nm工艺,具有更优的功耗和更小的芯片面积。

1


## 全志V853开发板介绍
1. 很荣幸能第一手拿到全志V853的开发板。接下来开始介绍介绍这款开发板。
2. 全志V853开发板规格参数:

| 类型 | 说明 |
|------|------|
| 主控 | 全志V853 (Arm A7 1GHz + RISC-V E907 600MHz + 1T NPU) |
| DDR | 512MB DDR3 |
| Memory | 8GB eMMC |
| 无线网络 | 2.4G WiFi/BT(型号:全志XR829模组) |
| 有线网络 | 100Mbps以太网 |
| 摄像头 | 1080P双目摄像头 |
| 屏幕 | 7寸 LCD屏幕 |
| 麦克风 | 模拟麦克风 *2 |
| DEBUG | 支持uart串口调试,支持ADB USB调试 |
| USB | Type-C USB * 1, 同时支持供电和数据传输 |
| PMU | 全志AXP2101 |

3. 全志V853系统配置:官方支持Tina Linux 5.0系统,基于Linux4.9内核和uboot-2018。其中:
- Tina Linux 是全志科技基于Linux内核开发的针对智能硬件类产品的嵌入式软件系统。
- Tina Linux v5.0 中包含 Linux 系统开发用到的 boot 源码、内核源码、驱动、工具、系统中间件与应用程序包。可以方便的定制、编译、打包生成Linux固件镜像。
- Tina Linux v5.0 可以支持构建 openWrt 和 buildroot 不同构建系统;也支持单独编译 BSP(Board Support Package,板级支持包);能够打包生成固件包,烧录到相应设备中并运行。

4. 全志V853开发板的硬件外设

1

## 全志V853开发板初体验
1. 拿到开发板,我没有立马去编译构建代码,而是进入板子内部的默认系统,看看外设适配的怎么样。V853的开发板提供了两个调试串口(分别为:A7调试串口(UART0),E907 RV调试串口(UART3))。我分别连接了对应的串口,A7调试串口的接口可以输出启动信息,但是无法输入命令。E907 RV调试串口的接口没有任何任何日志,怀疑里面没有任何代码。

2. 虽然A7调试串口的接口无法输入命令行,但是A7的调试提供了ADB Shell调试。
- 全志ADB工具下载:https://www.aw-ol.com/downloads?cat=5。
- 下载解压后,把ADB工作目录添加到环境变量中:右键 ”此电脑“,属性,找到高级系统设置,点击环境变量,xxx用户的环境变量,Path,新增一个环境变量。

1

3. 环境设置完毕,既可以在CMD终端中输入adb shell

1

#### GPIO点灯测试
- 学习一门编程语言,首先要学会在终端输出“Hello world”。学习一个开发板,首先要学会如何点亮一颗LED灯。开发板的指示灯接在PH11引脚上。所以GPIO编号为:7 * 32 + 11 = 235。所以我们可以直接操作GPIO235。实际板子的GPIO编号已经被导出了。

root@TinaLinux:/# cd /sys/class/gpio/gpio235
root@TinaLinux:/sys/devices/platform/soc/pio/gpiochip0/gpio/gpio235# ls
active_low  direction   power       uevent
device      edge        subsystem   value
root@TinaLinux:/sys/devices/platform/soc/pio/gpiochip0/gpio/gpio235# echo 0 > value
root@TinaLinux:/sys/devices/platform/soc/pio/gpiochip0/gpio/gpio235# echo 1 > value
root@TinaLinux:/sys/devices/platform/soc/pio/gpiochip0/gpio/gpio235#

1

#### WIFI测试
- V853开发板使用WIFI模组是自家的--XR829,它是Wi-Fi & BT。WIFI部分采用SDIO总线与V853通信。
- Tina提供一套简易方便的WIFI测试套件,通过wifi命令可以设置WIFI的工作模式,扫描网络,连接网络等等。以WIFI的STA模式测试:

root@TinaLinux:/# wifi -o sta
root@TinaLinux:/# wifi -c Rice 12345678
root@TinaLinux:/# ifconfig
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 4C:34:1E:9A:F1:B0
          inet addr:192.168.137.37  Bcast:192.168.137.255  Mask:255.255.255.0
          inet6 addr: fe80::4e34:1eff:fe9a:f1b0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:970 (970.0 B)  TX bytes:1730 (1.6 KiB)

root@TinaLinux:/# ping baidu.com
PING baidu.com (220.181.38.148): 56 data bytes
64 bytes from 220.181.38.148: seq=0 ttl=50 time=48.033 ms
64 bytes from 220.181.38.148: seq=1 ttl=50 time=55.773 ms
64 bytes from 220.181.38.148: seq=2 ttl=50 time=55.524 ms
64 bytes from 220.181.38.148: seq=3 ttl=50 time=50.839 ms
^C
--- baidu.com ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 48.033/52.542/55.773 ms
root@TinaLinux:/#

#### LCD测试
- V853开发板配套7寸LCD屏幕,并配备电容式触摸。
- 花屏测试:

root@TinaLinux:/# cat /dev/urandom > /dev/fb0

1

- 彩色条纹测试:

root@TinaLinux:/# echo 1 > /sys/class/disp/disp/attr/colorbar

1

## 编译环境搭建
1. 使用的开发环境是:VMware + ubuntu18.04
2. ubuntu安装完毕,只需要几条命令就可以把编译环境搭建完成。

// 更新软件列表

v853@v853:~/v853$ sudo apt-get update

// 安装各种工具及软件包
v853@v853:~/v853$ sudo apt-get install build-essential subversion git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl mercurial bzr ecj cvs unzip lib32z1 lib32z1-dev lib32stdc++6 libstdc++6 -y

// 设置git用户信息
v853@v853:~/v853$ git config --global user.email "980307037@qq.com"
v853@v853:~/v853$ git config --global user.name "RiceChen"

## V853工程构建
1. 首先源码下载需要在全志客户服务平台。如果没有注册需要先注册在登陆。链接:https://open.allwinnertech.com/#/login?cas=true
2. 将开发环境的钥匙对添加到全志客户服务平台。
- 生成钥匙对:

v853@v853:~/v853$ ssh-keygen -t rsa

- 导出公钥, 将导出公钥进行复制:

v853@v853:~/v853$ cat ~/.ssh/id_rsa.pub

- 公钥粘贴到全志客户服务平台:

1

3. 安装repo引导脚本
- 下载repo引导脚本:

v853@v853:~/v853$ git clone ssh://RiceChen@sdk.allwinnertech.com/git_repo/repo.git

- 修改repo脚本的username:

REPO_URL='ssh://username@sdk.allwinnertech.com/git_repo/repo.git'
改为
REPO_URL='ssh://RiceChen@sdk.allwinnertech.com/git_repo/repo.git'

- 添加repo引导脚本到环境中:

v853@v853:~/v853$ sudo cp repo/repo /usr/bin/repo
v853@v853:~/v853$ sudo chmod 777 /usr/bin/repo
// 测试是否添加成功
v853@v853:~/v853$ repo help

4. 下载SDK
- 创建SDK存放文件夹,并进入文件夹

v853@v853:~/v853$ mkdir tina-v853
v853@v853:~/v853$ cd tina-v853

- 初始化repo仓库:

v853@v853:~/v853/tina-v853$ repo init -u ssh://RiceChen@sdk.allwinnertech.com/git_repo/V853Tina_Open/manifest.git -b master -m tina-v853-open.xml

- 同步仓库代码,并创建分支:

v853@v853:~/v853/tina-v853$ repo sync
v853@v853:~/v853/tina-v853$ repo start product-v853 --all

5. 构建v853工程
- 构建工程前,需要安装mkimage:

sudo apt-get install u-boot-tools

- 配置编译模式:

v853@v853:~/v853/tina-v853$ ./build.sh config
========ACTION List: mk_config ;========
options :
All available platform:
   0. android
   1. linux
Choice [linux]: 1
All available linux_dev:
   0. bsp
   1. buildroot
   2. tinyos
   3. openwrt
Choice [openwrt]: 1
All available ic:
   0. v853
Choice [t113]: 0
All available board:
   0. vision
Choice [vision]: 0
All available flash:
   0. default
   1. nor
Choice [default]: 0

- 编译固件,然后

v853@v853:~/v853/tina-v853$ ./build.sh

...
[GPU]: No GPU type is configured in /home/v853/v853/tina-v853/kernel/linux-4.9/.config.
regenerate rootfs cpio
16149 blocks
16150 blocks
build_ramfs
Copy boot.img to output directory ...
Copy modules to target ...
./scripts/build.sh

sun8iw21p1 compile Kernel successful


INFO: ----------------------------------------
INFO: build Tina OK.
INFO: ----------------------------------------
v853@v853:~/v853/tina-v853$ 

- 打包固件:

v853@v853:~/v853/tina-v853$ ./build.sh pack

...
FileLength=7d7000Add partion rootfs.fex ROOTFS_FEX000000
Add partion very rootfs.fex ROOTFS_FEX000000
FilePath: rootfs.fex
FileLength=338ac00BuildImg 0
Dragon execute image.cfg SUCCESS !
----------image is at----------

72M	/home/v853/v853/tina-v853/out/v853/vision/buildroot/v853_linux_vision_uart0.img

pack finish
v853@v853:~/v853/tina-v853$ 

## 烧录验证
1. 下载全志USB驱动,链接:https://www.aw-ol.com/downloads/resources/15。解压并点击batch脚本安装即可。

1

2. 下载固件烧写工具PhoenixSuit,链接:https://www.aw-ol.com/downloads/resources/13。
- 解压并打开可执行程序:PhoenixSuit.exe。

1

- 选择固件,并选择立即升级。然后按住开发的uboot和reset按键,先松开reset按键。就可以看到进度条的变化。

1

1

3. 下载完成。串口终端便可以输出:

1


<br/>关注微信公众号『Rice嵌入式开发技术分享』,后台回复“微信”添加作者微信,备注”入群“,便可邀请进入技术交流群。

1

最近编辑记录 RiceChen (2022-07-19 15:23:55)

离线

#1 2022-07-19 15:47:24

aozima
会员
所在地: 深圳
注册时间: 2019-05-25
已发帖子: 462
积分: 329.5
个人网站

Re: 全志V853开发板--构建编译

向楼主学习,里面的RV MCU啥时候用起来?

最近编辑记录 aozima (2022-07-19 15:58:32)

离线

#2 2022-07-20 15:58:01

小王子&木头人
会员
注册时间: 2018-05-08
已发帖子: 72
积分: 4

Re: 全志V853开发板--构建编译

饭爷牛逼

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn