0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于瑞芯微RK3562 四核 ARM Cortex-A53 + 单核 ARM Cortex-M0工业评估板——Linux应用开发手册

Tronlong创龙科技 ? 来源:Tronlong创龙科技 ? 作者:Tronlong创龙科技 ? 2025-04-16 10:56 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文主要介绍TL3562-MiniEVM评估板的AMP(Asymmetric Multi-processing)开发案例,适用开发环境如下:

Windows开发环境:Windows 7 64bit、Windows 10 64bit

Linux开发环境:VMware16.2.5、Ubuntu20.04.6 64bit

U-Boot:U-Boot-2017.09

Kernel:Linux-5.10.209

LinuxSDK:rk3562-ubuntu20.04-sdk-[版本号](基于rk3562_linux_release_v1.2.0)

工程调试工具:OpenOCD、Eclipse

评估板支持Linux(Kernel-5.10.209)、Baremetal(HAL)、RTOS(RT-Thread)组合的AMP混合架构设计,满足如电力物联网、电网继电保护电力系统安全控制、工业自动化的需求。

我司提供的AMP-SDK开发包基于官方的rk3562_linux_release_v1.2.0进行拆解。AMP-SDK开发包与AMP案例位于“4-软件资料Demoamp-demos”目录下,具体说明如下所示。

备注:

(1) a53-3_baremetal为Cortex-A53(CPU3)核心Baremetal工程文件;

(2) a53-3_rtos为Cortex-A53(CPU3)核心RT-Thread(RTOS)工程文件;

(3) m0_baremetal为Cortex-M0(MCU)核心Baremetal工程文件;

(4) m0_rtos为Cortex-M0(MCU)核心RT-Thread(RTOS)工程文件;

(5) a53-3_baremetal、a53-3_rtos、m0_baremetal、m0_rtos工程均可单独与Linux端通信

wKgZO2f_TgWAGZHqAABPCakWLsQ709.pngwKgZPGf_TgWAWk85AAEI1DDDXmM83.jpeg

备注:不同案例目录结构会有所不同,请以实际情况为准。

HAL(Hardware Abstraction Layer,硬件抽象层)是位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。瑞芯微的Standalone系统是一个简单的、low-level的软件层,内部实现基于HAL,提供对基本处理器特性(如Cache、Interrupts和Exceptions)的访问,以及对基础外设(如标准输入和输出、UARTCAN、GMAC、I2C等)的驱动支持。

RT-Thread(Real Time-Thread)是一款国产嵌入式开源实时多线程操作系统,由RT-Thread工作室的专业开发人员开发、维护。RT-Thread不仅仅是一款高效、稳定的实时核心,也是一套面向嵌入式系统的软件平台,覆盖了全抢占的实时操作系统内核。

评估板简介

创龙科技 TL3562-MiniEVM 是一款基于瑞芯微 RK3562J/RK3562 处理器设计的四核 ARM Cortex-A53 + 单核 ARM Cortex-M0 国产工业评估板,主频高达 2.0GHz。评估板由核心板和评估底板组成,核心板 CPU、ROMRAM电源、晶振等所有元器件均采用国产工业级方案,国产化率 100%,评估底板大部分元器件亦采用国产工业级方案,国产化率约 99%(按元器件数量占比,数据仅供参考)。核心板经过专业的 PCB Layout 和高低温测试验证,支持选配屏蔽罩,质量稳定可靠,可满足各种工业应用环境要求。

评估板引出 2 路 Ethernet、2 路 USB、Micro SD、UART 等通信接口,同时引出 2 路 M IPI CSI、LVDS LCD、MIPI LCD、HDMI OUT、MIC IN、SPK OUT、HP OUT 多媒体接口,支

持 1080P@60fps H.264 视频编码、4K@30fps H.265 视频解码。

评估板体积小巧,尺寸为 85x130mm,可作为卡片式电脑使用,且便于产品集成,方便用户快速进行产品方案评估与技术预研。

wKgZO2f-IqCAe9vvAA6rUTREGz8634.png

评估板硬件资源图解 1

wKgZO2f-IsCAPfA9AA0HAUm3ZNI793.png

评估板硬件资源图解 2

开发环境搭建

本章节主要介绍基于Linux + RT-Thread(RTOS)、Baremetal的AMP案例的开发环境搭建。

打开Ubuntu,在任意目录下执行如下命令,安装AMP案例编译所需的相关工具。

Host# sudo apt update

wKgZO2f_TgaAYk3EAAZVFGPi_i8184.png

图 1

Host# sudo apt install scons

wKgZPGf_TgaAVN85AAKC36clQLA348.png

图 2

请将位于产品资料“4-软件资料Demoamp-demosAMP-SDK”目录下的AMP-SDK开发包AMP-SDK-[版本号].tar.gz拷贝至Ubuntu的RK3562工作目录下,版本号请以实际情况为准。执行如下命令,将AMP-SDK开发包解压至RK3562工作目录。hal目录用于存放裸机代码,rt-thread目录用于存放rt-thread代码。

Host# tar -zxf amp-sdk-v1.0.tar.gz

wKgZO2f_TgeALCRHAAEssLEnCFw335.png

图 3

至此,AMP开发环境搭建完成。

工程编译与固化

评估板支持Cortex-M0(MCU)、Cortex-A53(CPU3)核心运行Baremetal(HAL)、RTOS(RT-Thread)程序。本章节以led_flash案例为例,演示基于Linux + RT-Thread(RTOS)、Baremetal的AMP开发案例导入和编译方法。

工程导入

Baremetal工程导入

(1) Cortex-M0(MCU)核心Baremetal工程导入

请将产品资料“4-软件资料Demoamp-demosled_flashm0_baremetalproject”目录下的整个工程源码文件夹led_flash拷贝至AMP-SDK源码目录"hal/project/"下,如下图所示。

wKgZPGf_TgeAC_5KAAErp8bIkBI149.png

图 4 m0_baremetal

(2) Cortex-A53(CPU3)核心Baremetal工程导入

请将产品资料“4-软件资料Demoamp-demosled_flasha53-3_baremetalproject”目录下的整个工程源码文件夹led_flash拷贝至AMP-SDK源码目录"hal/project/"下,如下图所示。

wKgZO2f_TgeAH3KeAAErp8bIkBI813.png

图 5 a53-3_baremetal

RT-Thread(RTOS)工程导入

(1) Cortex-M0(MCU)核心RT-Thread(RTOS)工程导入

请将产品资料“4-软件资料Demoamp-demosled_flashm0_rtosproject”目录下的整个工程源码文件夹led_flash拷贝至AMP-SDK源码目录"rtos/bsp/rockchip/"下,如下图所示。

wKgZPGf_G7iAF6hbAAC96SifPEo432.png

图 6 m0_rtos

(2) Cortex-A53(CPU3)核心RT-Thread(RTOS)工程导入

请将产品资料“4-软件资料Demoamp-demosled_flasha53-3_rtosproject”目录下的整个工程源码文件夹led_flash拷贝至AMP-SDK源码目录"rtos/bsp/rockchip/"下,如下图所示。

wKgZPGf_G7iAF6hbAAC96SifPEo432.png

图 7 a53-3_rtos

工程编译

Baremetal工程编译

(1) Cortex-M0(MCU)核心Baremetal工程编译

在AMP-SDK目录下,执行如下命令,进入"hal/project/led_flash/GCC/"目录,对Baremetal工程进行编译。

Host# cd hal/project/led_flash/GCC/

Host# make clean

Host# make

wKgZPGf_HBmAP_s-AAFWls7XOUw549.png

图 8

wKgZPGf_HCqACqeBAAFck2Bk0XU118.png


图 9

wKgZO2f_HD-AJYPwAAEbz8h9yeE006.png


图 10

编译完成后,在"hal/project/led_flash/GCC/"目录下生成程序镜像文件TestDemo.bin。

wKgZPGf_HE2AbZWKAABP1j1QJGU463.png

图 11

执行如下命令进入led_flash源码目录,将Baremetal程序镜像文件TestDemo.bin制作生成amp.img镜像文件。

备注:不同案例打印信息可能会有所差异,请以实际为准。

Host# cd /home/tronlong/RK3562/amp-sdk-v1.0/hal/project/led_flash/

Host# ./mkimage.sh

wKgZO2f_HFuACpwMAAFcnHLuKlY391.png

图 12

制作完成后,将会在Image目录下生成Baremetal工程的amp.img镜像文件。

wKgZO2f_HGqAPG4VAABOOQLs81M029.png

图 13

(2) Cortex-A53(CPU3)核心Baremetal工程编译

在AMP-SDK的目录下,执行如下命令,进入"hal/project/led_flash/GCC/"目录,对Baremetal工程进行编译。

Host# cd hal/project/led_flash/GCC/

Host# make clean

Host# ./build.sh 3 //编译在Cortex-A53(CPU3)上运行的程序

wKgZO2f_HIuAYL0UAAETQ6dFJdI270.png

图 14

wKgZPGf_HJqAK7juAADPcozi2ZY634.png

图 15

wKgZO2f_HKmAPpW7AAE1oEzYRt8942.png

图 16

编译完成后,在"hal/project/led_flash/GCC/"目录下生成程序镜像文件hal3.bin。

wKgZO2f_HLiAZSKxAAEQ2Zd6aSA365.png

图 17

执行如下命令进入led_flash源码目录,将Baremetal程序镜像文件hal3.bin制作生成amp.img镜像文件。

备注:不同案例打印信息可能会有所差异,请以实际为准。

Host# cd /home/tronlong/RK3562/amp-sdk-v1.0/hal/project/led_flash

Host# ./mkimage.sh

wKgZO2f_HMeANQNZAAFaCNKIcmI545.png

图 18

制作完成后,将会在Image目录下生成Baremetal工程的amp.img镜像文件。

wKgZPGf_HNiAZ4cgAABPxo2maG8118.png

图 19

RT-Thread(RTOS)工程编译

(1) Cortex-M0(MCU)核心RT-Thread(RTOS)工程编译

执行如下命令,进入AMP-SDK下的"rtos/bsp/rockchip/led_flash/"目录,配置交叉编译工具链环境。

Host# cd /home/tronlong/RK3562/amp-sdk-v1.0/rtos/bsp/rockchip/led_flash/

Host# export RTT_EXEC_PATH=/home/tronlong/RK3562/amp-sdk-v1.0/prebuilts/gcc/linux-x86/arm/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux/bin

wKgZO2f_HSCAVJZbAACVwjz4RHg664.png

图 20

执行如下命令,对RT-Thread(RTOS)工程进行编译。

Host# scons -c

Host# scons

wKgZPGf_HTeAfcsbAAFBqrhtjdo429.png

图 21

wKgZO2f_HUSAFqebAACeDBeAWGU269.png

图 22

制作完成后,将会在当前目录下生成RT-Thread(RTOS)工程的rtthread.bin程序镜像文件。

wKgZPGf_HVGAeJX5AABL6lv-bg8856.png

图 23

执行如下命令,将RT-Thread(RTOS)程序镜像文件rtthread.bin制作生成amp.img镜像文件。

Host# ./mkimage.sh

wKgZPGf_HWOAGclWAAErxzOCjxM632.png

图 24

制作完成后,将会在Image目录下生成RT-Thread(RTOS)工程的amp.img镜像文件。

wKgZPGf_HXaATBN9AABOvtRDvBA326.png

图 25

(2) Cortex-A53(CPU3)核心RT-Thread(RTOS)工程编译

执行如下命令,进入AMP-SDK下的"rtos/bsp/rockchip/led_flash/"目录,对RT-Thread(RTOS)工程进行编译。

Host# cd /home/tronlong/RK3562/amp-sdk-v1.0/rtos/bsp/rockchip/led_flash

Host# ./build.sh 3

wKgZPGf_HYSADGtnAAEOowKWyU8206.png

图 26

wKgZO2f_HZGAakHCAACQl_K6cb8600.png

图 27

编译完成后,将会在当前目录下生成RT-Thread(RTOS)工程的rtt3.bin程序镜像文件。

wKgZPGf_Ha-ARuNDAABTu1Q0jk0859.png

图 28

执行如下命令,将RT-Thread程序镜像文件rtt3.bin制作生成amp.img镜像文件。

Host# ./mkimage.sh

wKgZO2f_HxCAUqTnAAEfQ2xqjb8514.png

图 29

制作完成后,将会在Image目录下生成RT-Thread(RTOS)工程的amp.img镜像文件。

wKgZPGf_Hx6AJrbRAABNzNXNfl4477.png

图 30

配置文件说明

Cortex-M0(MCU)核心Baremetal/RT-Thread(RTOS)案例的配置文件为amp.its,Cortex-A53(CPU3)核心Baremetal/RT-Thread(RTOS)案例的配置文件为amp_linux.its,此文件均位于Baremetal/RT-Thread(RTOS)案例Image目录下,负责描述打包生成amp.img镜像的配置信息。在U-Boot启动后,读取amp.img并解析amp.img中的配置信息,然后根据配置信息加载Baremetal、RT-Thread(RTOS)程序到指定内存地址,并启动Cortex-M0/Cortex-A53核心运行程序。

(1) amp.its

wKgZO2f_HzaAJx-AAACkRzk1L3M656.png

图 31 Baremetal/RT-Thread(RTOS)程序配置文件amp.its

(2) amp_linux.its

wKgZPGf_H0eALmG2AACrxV-rom0973.png

图 32 Baremetal/RT-Thread(RTOS)程序配置文件amp_linux.its

Baremetal/RT-Thread(RTOS)程序配置文件中的参数说明如下表所示:

wKgZPGf_H1qAJhxoAADc-SXPXx0579.png

工程固化

本小节以“4-软件资料Demoamp-demosled_flashm0_baremetalbin”目录下的amp.img镜像文件为例,演示将amp.img镜像固化至系统启动卡或eMMC的加载运行方法。案例"m0_rtosbin"、"a53-3_baremetalbin"、"a53-3_rtosbin"目录下的amp.img镜像操作方法类似。

评估板重新上电启动,在U-Boot启动阶段将读取amp.img镜像文件,解析amp.img中的配置信息(配置信息由amp配置文件保存在amp.img),并根据配置信息加载Baremetal、RT-Thread工程至指定内存地址,然后启动指定CPU运行程序。

通过Linux命令行固化

请将待固化的amp.img镜像拷贝至评估板文件系统,执行如下命令将其固化至系统启动卡对应分区。

备注:如需固化至eMMC,请将设备节点修改为"/dev/mmcblk0p8"。

Target# dd if=amp.img of=/dev/mmcblk1p8 conv=fsync

Target# sync

Target# reboot

wKgZO2f_H4KAaJ84AAAmC4NMesI862.png

图 33

通过瑞芯微开发工具RKDevTool固化

请确保评估板Micro SD卡槽未插入Micro SD卡,并使用Type-C线将评估板USB2.0 OTG接口连接至PC机USB接口。

备注:本小节操作方法仅支持固化amp.img镜像文件至eMMC,不支持固化至系统启动卡。

(1) 请参考《系统启动卡制作及系统固化》文档安装瑞芯微开发工具RKDevTool。将待固化的amp.img镜像文件拷贝至Windows非中文工作目录下。

(2) 打开瑞芯微开发工具,amp选项选择待固化的amp.img镜像文件存放路径,并勾选对应选项,具体如下图所示。

wKgZO2f_H5qAXS_gAABdkhaB38w339.png

图 34

(3) 将评估板断电,长按USER1(KEY3)按键,再将评估板上电,此时瑞芯微开发工具界面将会出现提示信息“发现一个LOADER设备”,然后松开USER1(KEY3)按键。

wKgZPGf_H6qAPRuqAABYJejv5Sw216.png

图 35

(4) 点击“执行”选项,将程序镜像文件amp.img固化至eMMC。

wKgZO2f_H7mAZ1gOAABYs7BXBnU197.png

图 36

(5) 直至出现如下界面,提示“下载完成”的信息,表示将amp.img镜像文件固化至eMMC成功,此时评估板将自动重启。

wKgZO2f_H9iAK5YQAABeECBSV1E871.png

图 37

通过系统镜像固化

请参考《Ubuntu系统使用手册》拆解update.img系统镜像,将“4-软件资料Demoamp-demosled_flashm0_baremetalbin”目录下的amp.img镜像文件拷贝至Mkimage的"output/Image/"目录下。

wKgZO2f_H_SAVQwbAACHFLI4JFw120.png

图 38

执行如下命令,即可在"output/update"目录合成新的update.img镜像。

Host# ./mkimage.sh pack

wKgZPGf_IAOAI2JmAADpd0fZ8Rs365.png

图 39

wKgZPGf_IBKAdWSoAACQo-vdKvU705.png

图 40

请参考《系统启动卡制作及系统固化》文档,将系统镜像文件固化至Micro SD卡或eMMC。

备注:Linux内核已预留Cortex-M0/Cortex-A53内存,评估板固化amp.img镜像后,在U-Boot启动时Cortex-M0/Cortex-A53将识别此部分内存已被占用,打印以下警告信息,忽略即可。

wKgZO2f_ICyAF3QyAAEBqmO5a14957.png

图 41

wKgZPGf_IDuAU8OwAAEe7yG2BDw739.png

图 42

AMP开发案例

本章节主要介绍基于Linux + RT-Thread(RTOS)、Baremetal的AMP开发案例说明。

本章节默认使用系统启动卡(即SD启动卡,Micro SD方式)启动系统,使用USB TO UART0串口作为系统调试串口,使用UART2串口作为RT-Thread(RTOS)、Baremetal程序的调试串口。

备注:UART2调试串口的波特率为115200。

请使用Type-C线将评估板USB TO UART0串口连接至PC机,使用杜邦线将USB TO TTL串口模块与评估底板EXPORT0拓展口的UART2串口连接至PC机的USB接口。

wKgZPGf_IFqAcDEGAABLOol9v5c479.pngwKgZPGf_IGiAU4EjAADkxyHF4K4836.png

图 43

wKgZPGf_IHmATxqNAAd47lu2lDQ059.png

图 44

led_flash案例

案例说明

案例功能:

(1) Cortex-A53(CPU0、CPU1、CPU2、CPU3)核心运行Linux系统;Cortex-M0核心运行RT-Thread(即m0_rtos)、Baremetal(即m0_baremetal)程序,分别控制评估底板用户可编程指示灯每隔0.5s闪烁一次。

(2) Cortex-A53(CPU0、CPU1、CPU2)核心运行Linux系统;Cortex-A53(CPU3)核心运行RT-Thread(即a53-3_rtos)、Baremetal(即a53-3_baremetal)程序,分别控制评估底板用户可编程指示灯每隔0.5s闪烁一次。

wKgZPGf_IJ-AO5csAAAol4p4sPw565.png

图 45

案例测试

请参考“工程编译与固化”章节将位于案例目录下"xxxbinamp.img"镜像固化至评估板。

由于Linux内核会占用UART2串口、LED1和LED2外设资源,因此在运行Baremetal(HAL)、RTOS(RT-Thread)程序前,需先替换关闭相关外设资源的内核镜像。我司提供已修改的内核镜像boot.img,位于案例"dtsbin"目录下,请将其拷贝至评估板文件系统,执行如下命令替换评估板系统内核镜像。

备注:如需固化至eMMC,请将设备节点修改为"/dev/mmcblk0p3"。

Target# dd if=boot.img of=/dev/mmcblk1p3 conv=fsync //替换内核镜像

Target# sync

Target# reboot

wKgZO2f_ILSAKz9_AAAZEG0Ecos468.png

图 46

U-Boot启动后,将加载运行amp.img镜像,UART2串口终端将打印程序运行信息,同时评估底板用户可编程指示灯LED1、LED2每隔0.5s闪烁一次。

其中m0_baremetal、m0_rtos、a53-3_baremetal、a53-3_rtos程序镜像固化后,UART2串口终端打印信息如下:

备注:评估板断电时,UART2串口终端可能会打印乱码信息,不影响正常功能,忽略即可。

wKgZPGf_IMeAIfq3AAAOiBiTKHk559.png

图 47 m0_baremetal

wKgZO2f_INqAJjMkAAAR0wy4SAw449.png

图 48 m0_rtos

wKgZO2f_IO-AZQvCAAAE08NyZSE555.png

图 49 a53-3_baremetal

wKgZPGf_IQaAK_VLAAAeeY2h6-o290.png

图 50 a53-3_rtos

测试完成后,如需恢复系统默认的内核镜像,请将位于产品资料“4-软件资料UbuntuKernelimagelinux-5.10.209-[版本号]-[Git系列号]”目录下的内核镜像boot.img拷贝至评估板文件系统,执行如下命令替换内核镜像。

备注:如需固化至eMMC,请将设备节点修改为"/dev/mmcblk0p3"。

Target# dd if=boot.img of=/dev/mmcblk1p3 conv=fsync

Target# sync

Target# reboot

wKgZO2f_IRyAA14MAAAkdBPimAA303.png

图 51

案例编译

(1) RT-Thread、Baremetal程序编译

请参考“工程编译与固化”章节将案例m0_baremetal、m0_rtos、a53-3_barametal或a53-3_rtos目录下的程序源码进行编译。

(2) 内核编译

为了避免Linux内核占用案例的外设资源,需替换或修改设备树文件。

我司已提供配置好的设备树文件,位于案例"dtssrctl3562-minievm-led-flash.dts"路径下,可直接使用。如需重新编译适用于本案例的内核镜像,请将tl3562-minievm-led-flash.dts设备树文件拷贝至内核源码"arch/arm64/boot/dts/rockchip/"目录下,然后参考《Ubuntu系统使用手册》文档“编译设备树文件”章节重新编译生成内核镜像即可。

其中,tl3562-minievm-led-flash.dts设备树文件是基于内核源码"arch/arm64/boot/dts/rockchip/"目录下的tl3562-minievm.dts设备树文件修改配置的。

修改内容如下:

a) 关闭user_led0、user_led1节点。

wKgZPGf_ITmAJjFcAABe_J6HxqE301.png

图 52 tl3562-minievm-led-flash.dts

b) 配置rockchip_amp节点。

由于修改了设备树文件关闭UART2节点,系统启动时默认关闭UART2时钟及不配置UART2 pinctrl,因此需在rockchip_amp节点配置UART2时钟及UART2 pinctrl,保证系统启动后UART2功能正常,并加入UART2中断配置,使Cortex-A53(CPU3)正常响应UART2中断。

wKgZO2f_IU2AHg9pAAAkRVQrWxE662.png

图 53 tl3562-minievm.dts

修改内容如下:

&rockchip_amp {

clocks = <&cru FCLK_BUS_CM0_CORE>, <&cru CLK_BUS_CM0_RTC>,

<&cru PCLK_MAILBOX>, <&cru PCLK_INTC>,

<&cru PCLK_TIMER>, <&cru CLK_TIMER4>, <&cru CLK_TIMER5>,

<&cru SCLK_UART2>, <&cru PCLK_UART2>; //需修改内容

amp-irqs = /bits/ 64 ; //需修改内容

pinctrl-names = "default"; //需修改内容

pinctrl-0 = <&uart2m1_xfer>; //需修改内容

};

wKgZPGf_IV-AFx5eAACyEmi57z8287.png

图 54 tl3562-minievm-led-flash.dts

c) 配置princtrl节点

由于UART2串口作为RT-Thread(RTOS)、Baremetal程序的调试串口,需使用UART2引脚,因此需删除Linux内核占用的引脚。

wKgZO2f_IW-AMu8eAABPJzfTfpo364.png

图 55 tl3562-minievm-led-flash.dts

删除如下内容:

0 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none

0 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none

关键代码

本案例Baremetal程序Cortex-M0(MCU)、Cortex-A53(CPU3)核心控制评估底板的LED1、LED2的关键代码相同;RT-Thread(RTOS)程序Cortex-M0(MCU)、Cortex-A53(CPU3)核心控制评估底板的LED1、LED2的关键代码相同。

(1) Baremetal程序

Baremetal程序的main.c文件位于案例"xxxprojectled_flashsrc"目录下。

a) 初始化GPIO。

wKgZO2f_IZWAIMfbAACYZmrkX7k665.png

图 56

b) 控制LED每隔0.5s状态翻转。

wKgZPGf_IamAEpGeAACZHtYxtSo510.png

图 57

(2) RT-Thread(RTOS)程序

RT-Thread(RTOS)程序的main.c文件位于案例"xxxprojectled_flashapplications"目录下。

a) 初始化GPIO。

wKgZO2f_Ig2ASRedAABys-pupuI337.png

图 58

b) 控制LED每隔0.5s状态翻转。

wKgZPGf_IiOAUaOaAAB0RwHHgmo216.png

图 59

(3) amp.its配置文件

amp.its配置文件为Cortex-M0(MCU)核心配置文件,amp_linux.its配置文件为Cortex-A53(CPU3)核心配置文件,均位于案例Image目录下,负责描述打包生成amp.img镜像的配置信息。

wKgZO2f_IkGAOjg5AADD9LFh_eg305.png

图 60 Baremetal/RT-Thread程序配置文件amp.its

wKgZO2f_IlSAFdHBAACrZvlLTrM478.png

图 61 Baremetal/RT-Thread程序配置文件amp_linux.its

uart_echo案例

案例说明

案例功能:

(1) Cortex-A53(CPU0、CPU1、CPU2、CPU3)核心运行Linux系统;Cortex-M0(MCU)核心运行RT-Thread(即m0_rtos)、Baremetal(即m0_baremetal)程序,实现UART3串口回显功能。

(2) Cortex-A53(CPU0、CPU1、CPU2)核心运行Linux系统;Cortex-A53(CPU3)核心运行RT-Thread(即a53-3_rtos)、Baremetal(即a53-3_baremetal)程序,实现UART3串口回显功能。

wKgZO2f_In-AC8hNAAAZp_wU_eY576.png

图 62

案例测试

请使用Type-C线将评估板USB TO UART0串口连接至PC机,使用杜邦线将两个USB TO TTL串口模块与评估底板EXPORT0拓展口的UART2和UART3串口连接至PC机的USB接口。

两个USB TO TTL串口模块与评估底板EXPORT0拓展口的UART2和UART3串口连接方法如下表所示。

UART2连接关系

wKgZO2f_IqaAHc4DAABNZlyx1og458.png

UART3连接关系

wKgZPGf_IrKAe4uIAABOhr4BFTM799.pngwKgZO2f_I12ADZItAAA5p0t6gAE937.png

图 63

硬件连接如下图所示。

wKgZPGf_I4aAAH8pAAjSssh503w858.png

图 64

请参考“工程编译与固化”章节将位于案例目录下"xxxbinamp.img"镜像固化至评估板。

由于Linux内核会占用RS232 UART2串口、RS485 UART3串口外设资源,因此在运行Baremetal(HAL)、RTOS(RT-Thread)程序前,需先替换关闭相关外设资源的内核镜像。我司提供已修改的内核镜像boot.img,位于案例"dtsbin"目录下,请将其拷贝至评估板文件系统,执行如下命令替换评估板系统内核镜像。

备注:如需固化至eMMC,请将设备节点修改为"/dev/mmcblk0p3"。

Target# dd if=boot.img of=/dev/mmcblk1p3 conv=fsync //替换内核镜像

Target# sync

Target# reboot

wKgZPGf_I5eAFdo-AAAZIBOwt7E030.png

图 65

U-Boot启动后,将加载运行amp.img镜像,UART2串口终端将打印程序运行信息。

其中m0_baremetal、m0_rtos、a53-3_baremetal、a53-3_rtos程序镜像固化后,UART2串口终端打印信息如下:

wKgZO2f_I6eAE-DNAAAV_xbHTuE882.png

图 66 m0_baremetal

wKgZO2f_I72ATdlkAAAYhddX0Ys062.png

图 67 m0_rtos

wKgZPGf_I82AeY0jAAAKWMtknoc247.png

图 68 a53-3_baremetal

wKgZPGf_I_eAVetPAAAkq6NfAnk957.png

图 69 a53-3_rtos

在UART3串口终端输入8个字符后按回车,串口终端将回显接收到的字符。

wKgZPGf_JAuABtAsAAAM-Mfydr4228.png

图 70

备注:评估板断电时,UART2串口终端可能会打印乱码信息,不影响功能使用,忽略即可。

案例编译

(1) RT-Thread(RTOS)、Baremetal程序编译

请参考“工程编译与固化”章节将案例m0_baremetal、m0_rtos、a53-3_barametal或a53-3_rtos目录下的程序源码进行编译。

(2) 内核编译

为了避免Linux内核占用案例的外设资源,需替换或修改设备树文件。

我司已提供配置修改好的设备树文件,位于案例目录下"dtssrctl3562-minievm-uart-echo.dts",可直接使用。如需重新编译本案例内核镜像,请将tl3562-minievm-uart-echo.dts设备树文件拷贝至内核源码"arch/arm64/boot/dts/rockchip/"目录下,然后参考《Ubuntu系统使用手册》文档“编译设备树文件”章节重新编译生成内核镜像即可。

其中,tl3562-minievm-uart-echo.dts设备树文件是基于内核源码"arch/arm64/boot/dts/rockchip/"目录下的tl3562-minievm.dts设备树文件修改配置的。

修改内容如下:

a) 修改设备树文件关闭设备树uart3和uart2节点。

wKgZO2f_JDyAWw_FAAAqoGm3MlE441.png

图 71 tl3562-minievm.dts

wKgZPGf_JEyAElNUAAAl06Vlxa8627.png

图 72 tl3562-minievm.dts

b) 配置rockchip_amp节点。

由于修改了设备树文件关闭UART2节点和UART3节点,系统启动时默认关闭UART2、UART3时钟及不配置UART2 pinctrl、UART3 pinctrl,因此需在rockchip_amp节点配置UART2、UART3时钟及不配置UART2 pinctrl、UART3 pinctrl,保证系统启动后UART2和UART3功能正常,并加入UART2、UART3中断配置,使Cortex-A53(CPU3)正常响应UART2、UART3中断。

修改内容如下:

&rockchip_amp {

clocks = <&cru FCLK_BUS_CM0_CORE>, <&cru CLK_BUS_CM0_RTC>,

<&cru PCLK_MAILBOX>, <&cru PCLK_INTC>,

<&cru PCLK_TIMER>, <&cru CLK_TIMER4>, <&cru CLK_TIMER5>,

<&cru SCLK_UART2>, <&cru PCLK_UART2>,

<&cru SCLK_UART3>, <&cru PCLK_UART3>;

amp-irqs = /bits/ 64

GIC_AMP_IRQ_CFG_ROUTE(64, 0xd0, CPU_GET_AFFINITY(3, 0))

GIC_AMP_IRQ_CFG_ROUTE(65, 0xd0, CPU_GET_AFFINITY(3, 0))>;

pinctrl-names = "default";

pinctrl-0 = <&uart2m0_xfer &uart3m0_xfer>;

};

wKgZPGf_JGiAKrMSAADU_SOlrxg391.png

图 73 tl3562-minievm-uart-echo.dts

c) 配置princtrl节点

由于UART2串口作为RT-Thread(RTOS)、Baremetal程序的调试串口,UART3用于案例串口回显功能,需使用UART2、UART3引脚,因此需删除Linux内核占用的引脚。

wKgZPGf_JHuARDDwAABxjIecVUw619.png

图 74 tl3562-minievm-uart-echo.dts

删除如下内容:

0 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none

0 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none

4 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none

4 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none

关键代码

(1) m0_baremetal/m0_rtos程序关键代码

m0_baremetal程序的main.c文件位于案例"m0_baremetalprojectuart_echosrc"目录下,m0_rtos程序的main.c文件位于案例"m0_rtosprojectuart_echoapplications"目录下。其中,Baremetal与RT-Thread程序main.c文件的关键代码相同。

备注:main.c源码文件中包含官方板级初始化代码,本小节仅对程序的关键代码进行说明。

a) 初始化UART3及其中断。

wKgZPGf_JKmAR2zjAAAifaFTE9s391.png

图 75 main.c

b) 清除数据buf,拉低流控GPIO,准备接收数据。

wKgZPGf_JMKAYBJdAAAgU-h3Ft4343.png

图 76 main.c

c) 在中断处理函数中,接收8个字节后,拉高流控GPIO,把接收的8个字节发送回去。

wKgZPGf_JNKAAQG-AABRBympTHw033.png

图 77 main.c

d) amp.its配置文件位于RT-Thread(RTOS)/Baremetal案例Image目录下,负责描述打包生成amp.img镜像的配置信息。

wKgZO2f_IkGAOjg5AADD9LFh_eg305.png

图 78 amp.its

(2) a53-3_baremetal/a53-3_rtos核心程序关键代码

Baremetal程序的main.c文件位于案例"a53-3_baremetalprojectuart_echosrc"目录下,RT-Thread程序的main.c文件位于案例"a53-3_rtosprojectuart_echoapplications"目录下。其中,Baremetal与RT-Thread程序main.c文件的关键代码存在差异,具体说明如下。

备注:main.c源码文件中包含官方板级初始化代码,本小节仅对程序的关键代码进行说明。

a) 初始化UART3及其中断。

wKgZPGf_JQCAMt0JAAAj0-XuQCA631.png

图 79 a53-3_baremetal main.c程序

wKgZO2f_JQ-AEcrEAAAijrsclek293.png

图 80 a53-3_rtos main.c程序

b) 清除数据buf,拉低流控GPIO,准备接收数据。

wKgZO2f_JSKAVfbtAAAbM45fF4U426.png

图 81 a53-3_baremetal main.c程序

wKgZPGf_JS-AOA7nAAAbCMBlVAM728.png

图 82 a53-3_rtos main.c程序

c) 中断处理函数中,接收8个字节后,拉高流控GPIO,把接收的8个字节发送回去。

wKgZO2f_JUmAGOiMAABFT8Bremg394.png

图 83 a53-3_baremetal main.c程序

wKgZPGf_JVSAKJjXAABRITQjGGA125.png

图 84 a53-3_rtos main.c程序

d) amp_linux.its配置文件位于RT-Thread(RTOS)/Baremetal案例Image目录下,负责描述打包生成amp.img镜像的配置信息。

wKgZO2f_IlSAFdHBAACrZvlLTrM478.png

图 85 amp_linux.its

rpmsg_echo案例

案例说明

案例功能:

(1) Cortex-A53(CPU0、CPU1、CPU2、CPU3)核心运行Linux系统与rpmsg_echo应用程序(即host_linux);Cortex-M0(MCU)核心运行RT-Thread(即m0_rtos)、Baremetal(即m0_baremetal)程序,实现Linux端的rpmsg数据的接收与发送功能。

(2) Cortex-A53(CPU0、CPU1、CPU2)核心运行Linux系统与rpmsg_echo应用程序(即host_linux);Cortex-A53(CPU3)核心运行RT-Thread(即a53-3_rtos)、Baremetal(即a53-3_baremetal)程序,实现Linux端的rpmsg数据的接收与发送功能。

案例程序原理如下:

a) RT-Thread(RTOS)、Baremetal端等待接收Linux端的rpmsg数据;

b) Linux端的rpmsg_echo应用程序发送rpmsg数据至RT-Thread(RTOS)、Baremetal端;

c) 当RT-Thread(RTOS)、Baremetal端接收到来至Linux端的rpmsg数据后会将数据发送回Linux端;

d) Linux端将接收来自RT-Thread(RTOS)、Baremetal端的rpmsg数据;

e) Linux程序与RT-Thread(RTOS)、Baremetal程序之间循环往复接收与发送rpmsg数据,实现核间通信。

案例程序流程图如下:

wKgZPGf_JYSAMRbuAAvFWzk79Hw501.png

图 86

案例测试

请参考“工程编译与固化”章节将位于案例目录下"xxxbinamp.img"镜像固化至评估板。

为了使Linux端的rpmsg正常运行,需按如下步骤替换评估板系统内核镜像。请将案例"dtsbin"目录下的内核镜像boot-rpmsg-echo-mcu.img拷贝至评估板文件系统,执行如下命令将其固化至系统启动卡。

备注:

a) 如需固化至eMMC,请将设备节点修改为"/dev/mmcblk0p3";

b) 如需运行Cortex-A53(CPU3)核心案例程序,请将内核镜像替换为boot-rpmsg-echo-a53-3.img内核镜像。

Target# dd if=boot-rpmsg-echo-mcu.img of=/dev/mmcblk1p3 conv=fsync

Target# sync

Target# reboot

wKgZPGf_JZqALFqPAAAiQCHv9-Q569.png

图 87

U-Boot启动后,将加载运行amp.img镜像,UART2串口终端将打印程序运行信息。

wKgZO2f_JamABAO4AAAaxZwpMI4067.png

图 88 m0_baremetal

wKgZO2f_JbqAR5ohAAAeNDRVuWc837.png

图 89 m0_rtos

wKgZPGf_JcuAZeB-AAANa8_m7BY063.png

图 90 a53-3_baremetal

wKgZPGf_JfiASLPRAAAegOfmOwY503.png

图 91 a53-3_rtos

将案例"host_linuxbin"目录下的应用程序rpmsg_echo拷贝至评估板文件系统,执行如下命令查看程序参数信息。"-n"表示rpmsg数据包个数,默认为10。

Target# ./rpmsg_echo -h

wKgZPGf_JhOAVtegAAE4yR3QT6E457.png

图 92

执行如下命令运行Linux应用程序,发送8个rpmsg数据包至运行Baremetal程序的Cortex-M0核心,当Cortex-M0核心每收到1个rpmsg数据包就会将数据包发送回Linux端。rpmsg数据包内容为"hello there x!"(x是rpmsg数据包序号,每发送一次加1)。

Target# ./rpmsg_echo -n 8

wKgZO2f_JiSASqjdAAAq8mXVKas717.png

图 93

备注:评估板断电时,UART2串口终端可能会打印乱码信息,不影响功能使用,忽略即可。

案例编译

(1) RT-Thread(RTOS)、Baremetal程序编译

请参考“工程编译与固化”章节将案例m0_baremetal、m0_rtos、a53-3_barametal或a53-3_rtos目录下的程序源码进行编译。

(2) 内核编译

为了避免Linux内核占用案例的外设资源,需替换或修改设备树文件。

我司已提供配置修改好的设备树文件,位于案例目录"dtssrc"下,可直接使用。如需重新编译本案例内核镜像,请将设备树文件拷贝至内核源码"arch/arm64/boot/dts/rockchip/"目录下,然后参考《Ubuntu系统使用手册》文档“编译设备树文件”章节重新编译生成内核镜像即可。

其中,tl3562-minievm-rpmsg-echo-mcu.dts设备树和tl3562-minievm-rpmsg-echo-a53-3.dts设备树文件是基于内核源码"arch/arm64/boot/dts/rockchip/"目录下的tl3562-minievm.dts设备树文件修改配置的。

修改内容如下:

a) 关闭设备树uart2节点。

wKgZPGf_JkGARNDDAAA6lZW3_0E388.png

图 94 tl3562-minievm -rpmsg-echo-mcu.dts

b) 配置rockchip_amp节点。

由于修改了设备树文件关闭UART2节点,系统启动时默认关闭UART2时钟以及不配置UART2 pinctrl,因此需在rockchip_amp节点配置UART2时钟以及UART2 pinctrl,保证系统启动后UART2功能正常,并加入UART2、MAILBOX中断配置,使Cortex-A53(CPU3)正常响应UART2、MAILBOX中断。

修改内容如下:

&rockchip_amp {

clocks = <&cru FCLK_BUS_CM0_CORE>, <&cru CLK_BUS_CM0_RTC>,

<&cru PCLK_MAILBOX>, <&cru PCLK_INTC>,

<&cru PCLK_TIMER>, <&cru CLK_TIMER4>, <&cru CLK_TIMER5>,

<&cru SCLK_UART2>, <&cru PCLK_UART2>;

amp-irqs = /bits/ 64

GIC_AMP_IRQ_CFG_ROUTE(64, 0xd0, CPU_GET_AFFINITY(3, 0))>;

pinctrl-names = "default";

pinctrl-0 = <&uart2m0_xfer>;

};

wKgZO2f_JlWAVVXJAADh-ib2t6Q258.png

图 95 tl3562-minievm -rpmsg-echo-mcu.dts

c) 配置rpmsg节点。link-id参数为运行案例程序CPU序号,0x03为Cortex-A53(CPU3),0x04为Cortex-M0(MCU)。

wKgZO2f_JmWAfuIFAAAmy4KsY3w792.png

图 96 tl3562-minievm -rpmsg-echo-mcu.dts

(3) Linux应用程序编译

请将案例host_linux目录下的src源码目录拷贝至Ubuntu工作目录下。执行如下命令,配置应用程序交叉编译工具链环境变量,并编译程序,编译完成将会在相同目录下生成可执行程序。

Host# source /home/tronlong/RK3562/Ubuntu/rk3562-ubuntu20.04-sdk-v1.0/environment

Host# make

wKgZPGf_JnWAEztdAACuA_TCvWY725.png

图 97

关键代码

本案例Baremetal程序Cortex-M0(MCU)、Cortex-A53(CPU3)核心的关键代码相同;RT-Thread(RTOS)程序Cortex-M0(MCU)、Cortex-A53(CPU3)核心的关键代码相同。

(1) Baremetal程序关键代码

Baremetal程序的main.c文件位于案例"xxxprojectrpmsg_echosrc"目录下。

备注:main.c源码文件中包含官方板级初始化代码,本小节仅对程序的关键代码进行说明。

a) 检查共享内存,确定主从CPU ID。

wKgZPGf_JoyAU-V9AABZ1mybVQ0691.png

图 98 main.c

b) 初始化rpmsg,并等待与Linux连接。

wKgZO2f_JpmAEsfcAABV-8c0EQA877.png

图 99 main.c

c) 与Linux连接成功后,创建rpmsg端点,并把端点信息传递至Linux。

wKgZPGf_JqeAH4crAABheMRBZIc135.png

图 100 main.c

d) 接收到rpmsg数据包后将数据包发送回Linux。

wKgZPGf_JrSAEacgAABRyGqera0338.png

图 101 main.c

e) amp配置文件位于RT-Thread(RTOS)/Baremetal案例Image目录下,负责描述打包生成amp.img镜像的配置信息。

wKgZPGf_JseAeiEbAACpRuijsfE774.png

图 102 amp.its

wKgZO2f_IlSAFdHBAACrZvlLTrM478.png

图 103 amp_linux.its

(2) RT-Thread程序关键代码

RT-Thread程序的main.c文件位于案例"xxxprojectrpmsg_echoapplications"目录下。

a) 检查共享内存,确定主从CPU ID。

wKgZO2f_JuWAddxXAABX2XgyGYU367.png

图 104 main.c

b) 初始化rpmsg,设定等待超时时间为10s,并等待与Linux连接。

wKgZO2f_JwCAD298AABXMQtQVGo807.png

图 105 main.c

c) 与Linux连接成功后,创建rpmsg端点,并把端点信息传递至Linux。

wKgZO2f_Jw-AUD0iAABh46NFSnk091.png

图 106 main.c

d) 接收到rpmsg数据包后将数据包发送回Linux。

wKgZO2f_JyKAG-sFAABRZSTKm5k672.png

图 107 main.c

(3) Linux端程序关键代码

Linux端程序的rpmsg_echo.c文件位于案例"rpmsg_echohost_linuxsrc"目录下。

a) 创建并打开rpmsg端点。

wKgZPGf_JzOAYpBDAAA9h6fW1uw216.png

图 108

b) 点地址选择准则如下。

本地端点地址(RPMSG_MASTER_ADDR):由于1024及以下的端点地址被Linux内核使用,因此本地端点地址需指定大于1024。

远程端点地址(RPMSG_REMOTE_ADDR):需与Baremetal程序设定的端点地址对应。

wKgZPGf_Jz-ACAKIAABKN4Fjgm4108.png

图 109 rpmsg_echo.c文件

wKgZPGf_J1iAKRSzAAA0J9i0i8U396.png

图 110 Baremetal程序main.c文件

c) 构建数据包,通过rpmsg将数据包发送出去,再通过rpmsg接收数据包。

wKgZPGf_J02AVmRxAAD4Xv3W9DY905.png

图 111

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 瑞芯微
    +关注

    关注

    25

    文章

    631

    浏览量

    52670
  • 评估板
    +关注

    关注

    1

    文章

    766

    浏览量

    30380
  • RK3562
    +关注

    关注

    0

    文章

    81

    浏览量

    425
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    微米尔RK3562国产核心ARM中量级多面手

    网关、边缘计算等领域提供了高性价比的解决方案。 核心基于 RK3562RK3562J处理器,采用
    发表于 02-28 15:32

    基于ARM Cortex-M0的MCU设计及应用

    知网链接:基于ARM Cortex-M0的MCU设计及应用
    发表于 11-05 15:35 ?18次下载
    基于<b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-M0</b><b class='flag-5'>核</b>的MCU设计及应用

    新一代低价开发板芯片RK3562来啦! — 触觉智能RK3562开发板

    3566,RK3568之类的,咋最近还出了个RK3562啊。这个RK3562可以认为是RK3568的低配版,可以进一步的降低价格。RK3562
    的头像 发表于 08-15 17:42 ?3410次阅读
    新一代低价<b class='flag-5'>开发板</b>芯片<b class='flag-5'>RK3562</b>来啦! — 触觉智能<b class='flag-5'>RK3562</b><b class='flag-5'>开发板</b>

    全国产!3562Mini(2GHzA53 NPU)工业开发板规格书

    评估简介创龙科技TL3562-MiniEVM是一款基于
    的头像 发表于 03-10 09:16 ?1044次阅读
    全国产!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>3562</b>Mini(2GHz<b class='flag-5'>四</b><b class='flag-5'>核</b><b class='flag-5'>A53</b> NPU)<b class='flag-5'>工业</b><b class='flag-5'>开发板</b>规格书

    RK3506(3ARM+Cortex-A7 + ARM Cortex-M0工业核心选型资料

    创龙科技SOM-TL3506是一款基于RK3506J/RK3506B处理器设计的3
    的头像 发表于 04-09 09:04 ?1467次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK</b>3506(3<b class='flag-5'>核</b><b class='flag-5'>ARM+Cortex-A</b>7 + <b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-M0</b>)<b class='flag-5'>工业</b>核心<b class='flag-5'>板</b>选型资料

    RK3576,82.2GHz+6T算力NPU工业核心说明书

    创龙科技SOM-TL3576-S是一款基于RK3576J/RK3576高性能处理器设计的4
    的头像 发表于 04-09 09:46 ?3139次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK</b>3576,8<b class='flag-5'>核</b>2.2GHz+6T算力NPU<b class='flag-5'>工业</b>核心<b class='flag-5'>板</b>说明书

    国产!RK3506 3ARM+Cortex-A7 + ARM Cortex-M0 工业评估说明书

    创龙科技TL3506-EVM是一款基于RK3506J/RK3506B处理器设计的3
    的头像 发表于 04-29 15:42 ?2245次阅读
    国产!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK</b>3506 3<b class='flag-5'>核</b><b class='flag-5'>ARM+Cortex-A</b>7 + <b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-M0</b> <b class='flag-5'>工业</b><b class='flag-5'>评估</b><b class='flag-5'>板</b>说明书

    基于RK3562 ARM Cortex-A53 + 单核 ARM Cortex-M0工业评估——NPU开发案列

    本文主要介绍基于创龙科技TL3562-MiniEVM评估的NPU开发案例,适用开发环境如下。
    的头像 发表于 04-15 17:18 ?365次阅读
    基于<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3562</b> <b class='flag-5'>四</b><b class='flag-5'>核</b> <b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-A53</b> + <b class='flag-5'>单核</b> <b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-M0</b><b class='flag-5'>工业</b><b class='flag-5'>评估</b><b class='flag-5'>板</b>——NPU<b class='flag-5'>开发</b>案列

    基于RK3576国产ARM2.2GHz A72 工业评估——Docker容器部署方法说明

    创龙科技TL3576-MiniEVM是一款基于RK3576J/RK3576高性能处理器设计的4
    的头像 发表于 04-18 10:18 ?588次阅读
    基于<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK</b>3576国产<b class='flag-5'>ARM</b>八<b class='flag-5'>核</b>2.2GHz <b class='flag-5'>A</b>72 <b class='flag-5'>工业</b><b class='flag-5'>评估</b><b class='flag-5'>板</b>——Docker容器部署方法说明

    全国产! RK3576 ARM 2.2GHz 工业开发板—LVGL应用开发案例

    本文主要基于评估演示LVGL应用开发案例,适用开发环境如下。创龙科技 TL3576-EVM 是一款基于
    的头像 发表于 06-23 15:17 ?318次阅读
    全国产!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK</b>3576 <b class='flag-5'>ARM</b> 八<b class='flag-5'>核</b> 2.2GHz <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—LVGL应用<b class='flag-5'>开发</b>案例

    全国产! RK3576 ARM 2.2GHz 工业开发板Linux系统使用手册

    创龙科技 TL3576-EVM 是一款基于 RK3576J/RK3576高性能处理器设计的4
    的头像 发表于 06-24 10:50 ?362次阅读
    全国产!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK</b>3576 <b class='flag-5'>ARM</b> 八<b class='flag-5'>核</b> 2.2GHz <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—<b class='flag-5'>Linux</b>系统使用<b class='flag-5'>手册</b>

    全国产! RK3576 ARM 2.2GHz 工业开发板Linux开发环境搭建

    创龙科技 TL3576-EVM 是一款基于 RK3576J/RK3576高性能处理器设计的4
    的头像 发表于 06-25 10:17 ?264次阅读
    全国产!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK</b>3576 <b class='flag-5'>ARM</b> 八<b class='flag-5'>核</b> 2.2GHz <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—<b class='flag-5'>Linux</b><b class='flag-5'>开发</b>环境搭建

    全国产! RK3576 ARM 2.2GHz 工业开发板Linux应用开发手册

    创龙科技 TL3576-EVM 是一款基于 RK3576J/RK3576高性能处理器设计的4
    的头像 发表于 06-25 16:44 ?419次阅读
    全国产!<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK</b>3576 <b class='flag-5'>ARM</b> 八<b class='flag-5'>核</b> 2.2GHz <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—<b class='flag-5'>Linux</b>应用<b class='flag-5'>开发</b><b class='flag-5'>手册</b>

    创龙 RK3562 国产 2GHz A53 工业开发板—调试工具安装

    创龙科技 TL3562-EVM-B 是一款基于 RK3562J/RK3562 处理器设计的
    的头像 发表于 06-30 10:28 ?281次阅读
    创龙<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK3562</b> 国产 2GHz <b class='flag-5'>四</b><b class='flag-5'>核</b><b class='flag-5'>A53</b> <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—调试工具安装

    创龙 RK3562 国产 2GHz A53 工业开发板—IRIG-B码对时案例

    创龙科技 TL3562-EVM-B 是一款基于 RK3562J/RK3562 处理器设计的
    的头像 发表于 07-08 14:07 ?285次阅读
    创龙 <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b> <b class='flag-5'>RK3562</b> 国产 2GHz <b class='flag-5'>四</b><b class='flag-5'>核</b><b class='flag-5'>A53</b> <b class='flag-5'>工业</b><b class='flag-5'>开发板</b>—IRIG-B码对时案例