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

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

3天内不再提示

开发环境搭建 | 飞凌嵌入式RK3568开发板深度评测

飞凌嵌入式 2022-06-23 09:07 次阅读

作者:ouxiaolong

题图:飞凌嵌入式


开发环境——

主机:Ubuntu18.04

开发板:飞凌嵌入式OK3568-C开发板

Windows下有很多虚拟机软件,目前市面上流行的有VMware和VirtualBox。VMware分为收费专业版Workstation Pro 和非商用免费版Workstation Player,推荐使用Workstation Player。

笔者这里使用的编译主机的Ubuntu18.04,关于Workstation和Ubuntu安装笔者这里不在赘述,网上资料很多,笔者默认已经装好Workstation和Ubuntu。

1、依赖库安装

1.1更新主机的源列表

$sudo apt-get update

1.2安装依赖工具

$sudo apt-get install repo git ssh make gcc libssl-devliblz4-toolexpect g++ patchelf chrpath gawk texinfo chrpathdIFfstatbinfmt-supportqemu-user-static live-build bison flex fakeroot cmakegcc-multilibg++-multilib unzip device-tree-compiler python-piplibncurses5-devbuild-essential vim tree

2、TFTP服务环境搭建与测试

TFTP简单文件传输协议,是一个基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大、不复杂的应用场合。

TFTP协议专门为小文件传输而设计,只能从服务器上获取文件,或者向服务器写入文件,不能列出目录,也不能进行认证

1)下载并安装tftp

$sudo apt-get install openbsd-inetd

2)新建tftp目录和改变其属性

$sudo mkdir /tftpboot

3)修改/etc/inetd.conf文件

$sudo vim /etc/inetd.conf

新增如下内容:

tftpdgram udp wait nobody /usr/sbin/tcpd/usr/sbin/in.tftpd /tftpboot

4)启动tftp

$sudo /etc/init.d/openbsd-inetd start

5)本地测试

/tftpboot/目录下新建一个文件test,输入内容、保存。然后打开另外一个终端,测试文件传输。

–输入命令tftp127.0.0.1

–输入gettest

–输入q可以退出

–退出后,使用ls命令可以发现当前目录下有test文件,如果这个文件和服务器中的test文件内容一模一样,表明服务器搭建成功。

f5848710-f17c-11ec-a2f4-dac502259ad0.png

6)开发板测试

开发板下载测试

#tftp-g -l test -r test +IP地址

f5a64832-f17c-11ec-a2f4-dac502259ad0.png

(注:-l后的文件是下载后文件名,可以自定义;-r后的是服务器的文件名)

3、安装配置交叉编译工具链

Linaro官网中有很多种GCC交叉编译工具链,因为我们所使用的RK3568开发板是一个Cortex-A55内核64位的开发板,选择aarch64-linux-gnu。

地址:https://releases.linaro.org/components/toolchain/binaries/latest-7/aarch64-linux-gnu/

f5cb010e-f17c-11ec-a2f4-dac502259ad0.jpg

图中有很多种交叉编译器,我们只需要关注这两种:

针对32位系统的gcc-linaro-7.5.0-2019.12-i686_aarch64-linux-gnu.tar.xz和针对64位系统的gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz。

大家根据自己所使用的Ubuntu系统类型选择合适的版本,比如我安装的Ubuntu14.04是64位系统,因此我要使用gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz。

4、交叉编译器安装

将交叉编译器拷贝Ubuntu中的/opt目录下(没有opt则新建该目录),进行如下步骤:

1.解压gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar

用以下命令

$sudotar -xvf gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar //

必须用超级用户模式。

2.编辑~/.bashrc文件

$vi ~/.bashrc

在文件最后增加一行

exportPATH=$PATH:/opt/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin

保存退出。

3.运行source~/.bashrc让文件生效

$source ~/.bashrc

5、交叉编译器验证

方法一:

在命令行下输入aarch64-l然后按tab键看会不会自动补全

方法二:

输入:aarch64-linux-gnu-gcc-v

f5efb904-f17c-11ec-a2f4-dac502259ad0.jpg

如上图则表示配置成功!

从图中可以看出当前交叉编译器的版本号为7.5.0,说明交叉编译工具链安装成功(注:编者安装的交叉编译器版本为7.5.0,OK3568-C开发板源码包里是9.3.0版本)。

使用刚刚安装的交叉编译器的时候使用的命令是:

aarch64-linux-gnu-gcc

该命令的具体含义如下:

1.aarch64表示这是编译aarch64架构代码的编译器。AArch64是ARMv8架构的一种执行状态。

2.linux表示运行在linux环境下。

3.gnu表式嵌入式二进制接口

4.gcc表示是gcc工具。

最好的验证验证方法就是直接编译一个例程,我们就编译第一个裸机例程“hello.c”试试。

$vim hello.c #include intmain() { printf("Hello,OK3568-C!\n"); return0; } $aarch64-linux-gnu-gcc hello.c -o hello

使用如下命令查看hello文件信息

$file hello

f6036c92-f17c-11ec-a2f4-dac502259ad0.jpg

从图中可以看到hello是64位LSB的ELF格式文件,目标机架构为ARMaarch64,,说明我们的交叉编译器工作正常。

最后将程序下载到开发板,修改用户权限后即可运行。

f61044d0-f17c-11ec-a2f4-dac502259ad0.png

值得注意的是,在RK3568的源码中有交叉编译链,只是版本要旧些,在源码prebuilts目录下。笔者配置该工具链主要用在应用开发。

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

    关注

    134

    文章

    9084

    浏览量

    367373
  • 嵌入式开发板

    关注

    5

    文章

    81

    浏览量

    18731
收藏 人收藏

    评论

    相关推荐

    RK3568内置MCU开发介绍之一

    A55(下文简称AP)和1个RISCV(下文简称MCU)。 硬件准备 首先介绍一下硬件。主板为风火轮科技的YY3568开发板,主控RK3568。此开发板的相关介绍可以参考 https
    的头像 发表于 12-01 16:09 368次阅读
    <b class='flag-5'>RK3568</b>内置MCU<b class='flag-5'>开发</b>介绍之一

    基于迅为RK3568开发板全国产平台,快速实现APP开机自启动技术分享

    基于迅为RK3568开发板全国产平台,快速实现APP开机自启动技术分享
    的头像 发表于 11-21 13:58 353次阅读
    基于迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>全国产平台,快速实现APP开机自启动技术分享

    【迅为】瑞芯微RK3588开发板RK3568开发板区别及优势

    RK3568开发板
    的头像 发表于 11-18 14:19 342次阅读
    【迅为】瑞芯微<b class='flag-5'>RK</b>3588<b class='flag-5'>开发板</b><b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>区别及优势

    迅为iTOP-RK3568/RK3588开发板获麒麟软件适配认证

    迅为iTOP-RK3568/RK3588开发板获麒麟软件适配认证
    的头像 发表于 10-18 14:56 513次阅读
    迅为iTOP-<b class='flag-5'>RK3568</b>/<b class='flag-5'>RK</b>3588<b class='flag-5'>开发板</b>获麒麟软件适配认证

    北京迅为RK3568开发板嵌入式学习之Linux驱动全新更新-CAN+

    北京迅为RK3568开发板嵌入式学习之Linux驱动全新更新-CAN+
    的头像 发表于 09-04 15:29 494次阅读
    北京迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b><b class='flag-5'>嵌入式</b>学习之Linux驱动全新更新-CAN+

    国产核心全面进攻-RK3568开发板评测

    随着端侧AI应用的落地,预计集成NPU的SoC产品将迎来爆发式的增量市场。本期与非网给大家带来一款采用国内知名SoC厂商的产品——基于瑞芯微RK3568开发板
    的头像 发表于 08-30 11:49 1164次阅读
    国产核心<b class='flag-5'>板</b>全面进攻-<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b><b class='flag-5'>评测</b>

    如何get RK3568核心的音频功能

    的是,嵌入式RK3568核心凭借采样范围为0~1.8V、采样精度为10bits的ADC采样接口的加持,辅以巧妙的电路设计,可轻松实现耳
    发表于 08-29 14:34

    鸿蒙OpenHarmony南向/北向快速开发教程-迅为RK3568开发板

    大家期待已久的迅为RK3568开发板终于迎来了鸿蒙4.1系统的强势支持!想知道如何实现快速开发学习吗?跟着我们一起来探索吧! 迅为RK3568开发板
    发表于 07-23 10:44

    RK3568开发板支持AMP双系统

    RK3568开发板支持AMP双系统
    的头像 发表于 06-04 15:33 706次阅读
    <b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>支持AMP双系统

    鸿蒙OpenHarmony【标准系统编译】 (基于RK3568开发板

    DevEco Device Tool支持Rockchip RK3568开发板的源码一键编译功能,提供编译工具链和编译环境依赖的检测及一键安装,简化复杂编译环境的同时,提升了编译的效率。
    的头像 发表于 04-24 20:55 1264次阅读
    鸿蒙OpenHarmony【标准系统编译】 (基于<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>)

    迅为RK3568开发板驱动开发指南-输入子系统

    迅为RK3568开发板驱动开发指南-输入子系统
    的头像 发表于 02-23 15:11 860次阅读
    迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>驱动<b class='flag-5'>开发</b>指南-输入子系统

    嵌入式RK3568开发板蓝牙收、发文件测试

    本文由电子发烧友论坛用户fsdzdzy提供,感谢分享。嵌入式每月定期开展新的开发板体验活动,欢迎更多工程师朋友的关注和参与。
    的头像 发表于 02-02 16:31 1866次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b><b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>蓝牙收、发文件测试

    迅为RK3568开发板助力智能车载产业快速发展

    迅为RK3568开发板助力智能车载产业快速发展
    的头像 发表于 01-23 13:59 565次阅读
    迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>助力智能车载产业快速发展

    AMP“双系统”加持,嵌入式RK3568核心强实时性再升级

    嵌入式FET3568-C系列核心再度迎来新升级——支持“AMP”双系统。
    的头像 发表于 01-17 11:30 972次阅读
    AMP“双系统”加持,<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b><b class='flag-5'>RK3568</b>核心<b class='flag-5'>板</b>强实时性再升级

    技术帖 | 嵌入式T113-i开发板的休眠及唤醒操作

    嵌入式OK113i-S开发板支持两种休眠方式:freeze和mem。本篇内容小编会为大家介绍如何让
    的头像 发表于 12-29 08:02 1232次阅读
    技术帖 | <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>T113-i<b class='flag-5'>开发板</b>的休眠及唤醒操作