首页 > 技术知识 > 正文

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

全志V853开发板–buildroot应用交叉编译-全志f1c200s原理图

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工艺,具有更优的功耗和更小的芯片面积。

全志V853开发板–buildroot应用交叉编译-全志f1c200s原理图1

全志V853开发板介绍

很荣幸能第一手拿到全志V853的开发板。接下来开始介绍介绍这款开发板。 全志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 全志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,板级支持包);能够打包生成固件包,烧录到相应设备中并运行。 全志V853开发板的硬件外设 全志V853开发板–buildroot应用交叉编译-全志f1c200s原理图2

全志V853–交叉编译

为啥要写交叉编译呢?是因为全志提供的文档中描述的OpenWRT的构建方式,而我采用的buildroot进行构建。他们两者采用的交叉工具链是不一样的。其中:OpenWRT采用musl工具链,而buildroot采用的glibc工具链。

为了避免其他人采用buildroot也按照文档进行操作,导致应用编译完无法运行起来。所以我补充一下buildroot构建中,应用的交叉编译。

编写HelloWorld:

复制#include intmain(void) { printf(“HelloWorld!”); return0; } V853的编译工具链的路径:prebuilt/rootfsbuilt/arm/。里面包含了两个工具链:musl和glibc,而buildroot采用了glic。 所以gcc编译器的路径:prebuilt/rootfsbuilt/arm/toolchain-sunxi-glibc-gcc-830/toolchain/bin/。而编译是需要用到的库文件和头文件路径:prebuilt/rootfsbuilt/arm/toolchain-sunxi-glibc-gcc-830/toolchain/arm-openwrt-linux-gnueabi/ 指定存放交叉编译需要使用的库文件头文件的文件夹 复制v853@v853:~/$exportSTAGING_DIR=~/v853/tina-v853/prebuilt/rootfsbuilt/arm/toolchain-sunxi-glibc-gcc-830/toolchain/arm-openwrt-linux-gnueabi/ 编译应用程序: 复制v853@v853:~/$exportSTAGING_DIR=~/v853/tina-v853/prebuilt/rootfsbuilt/arm/toolchain-sunxi-glibc-gcc-830/toolchain/bin/arm-openwrt-linux-gcc-ohelloworldmain.c v853@v853:~/$ls helloworldmain.c v853@v853:~/$ 我是采用挂载SD卡的形式将应用程序拷贝到板子的。所以将编译好的应用程序helloworld拷贝到SD卡。 板子上验证结果: 复制//挂载SD卡到test目录上 #mount/dev/mmcblk1/mnt/test/ //运行应用 #./helloworld HelloWorld!#

欢迎关注微信公众号『Rice嵌入式开发技术分享』

猜你喜欢