当前位置: 代码网 > 科技>人工智能>动态 > 探索新升级!在 ART-Pi Smart 体验 RT-Thread Smart v5.1.0

探索新升级!在 ART-Pi Smart 体验 RT-Thread Smart v5.1.0

2024年08月04日 动态 我要评论
1.引言 RT-Thread Smart v5.1.0 已经正式发布。这一版本在内核和功能上做了大量的改进与增强。我们可以在ART-Pi Smart开发板尽情探索这一新版更完善更强大的RT-Thread Smart操作系统。ART-Pi Smart开发板搭载了米尔科技的i.MX6ULL核心板,硬件设计和制作由韦东山团队完成,整体的BSP板级支持包由社区完成。这是首个运行 RT-Thread Smart 的 ARM Cortex-A7 开发板,具有强大的硬件性能和丰富的外设接口,非常适合学习,开发和调试...

1.引言

rt-thread smart v5.1.0 已经正式发布。这一版本在内核和功能上做了大量的改进与增强。我们可以在art-pi smart开发板尽情探索这一新版更完善更强大的rt-thread smart操作系统。art-pi smart开发板搭载了米尔科技的i.mx6ull核心板,硬件设计和制作由韦东山团队完成,整体的bsp板级支持包由社区完成。这是首个运行 rt-thread smart 的 arm cortex-a7 开发板,具有强大的硬件性能和丰富的外设接口,非常适合学习,开发和调试rt-thread smart系统。

硬件规格情况

开发板购买链接:https://m.tb.cn/h.guly2j1?tk=7ah8wy7fme1

在art-pi smart的板卡上包括了百兆以太网,tf卡插槽,usb device,usb host接口,以及rw007 wifi模块,type-c的usb uart,rgb888 fpc座,camera fpc座等资源。核心板上板载i.mx6ull 800mhz arm cortex-a7单核32位处理器,512mb ddr3内存,4gb emmc。

2.  rt-thread smart v5.1.0 新体验

rt-thread v5.1.0 版本的 smart 中带来了诸多改进和新功能,以下是一些和smart系统密切相关的主要新增特性和增强点:

●  更完善的libc支持:高性能互斥锁 futex 和原生 libc 动态链接功能,使系统在多任务处理和内存管理上更高效。新增或修复了 setitimer、setaffinity 等api,提升了系统的灵活性和稳定性。

●  更完善的 posix 终端支持:

○  完整的终端设备及伪终端设备支持

○  可嵌套,支持作业控制,支持系统调用重启的 posix 信号支持

○  进程组和会话管理

○  新的ipc方法 `rt_condvar`

○  dfsv2 devfs 支持符号链接等功能。

○  ……

这些特性不仅使 rt-thread smart 在功能上更加完善,同时也提升了系统的稳定性和性能,为开发者提供了更强大的工具和更多的可能性。

3.  快速上手

下面介绍如何在art-pi smart开发板上运行v5.1.0版本rt-thread smart操作系统。

○  搭建xmake编译环境

对于rt-thread smart的开发,推荐使用linux ubuntu环境,也可以远程使用linux环境,在windows桌面上使用vscode登陆到linux ubuntu环境上使用。

在linux ubuntu下需要先安装xmake环境

1sudo add-apt-repository ppa:xmake-io/xmake
2sudo apt update
3sudo apt install xmake

更多安装方式,请参考

https://xmake.io/#/zh-cn/guide/installation

○  应用编译

拉取用户态应用仓库 https://github.com/rt-thread/userapps.git 可以获得一些示例程序工程。我们通过 xmake f 命令配置构建的目标平台,使用 xmake 命令编译构建工程,最后通过 xmake smart-rootfs -f fat 命令将构建完成的产物制作为 fat 格式的根文件系统镜像。这个镜像会在后面被烧录到 sd 卡中使用。

1source env.sh//设置环境变量
2//编译app
3cd apps
4// 配置为 arm平台
5xmake f -a arm
6xmake -j8
7//生成rootfs
8xmake samrt-image -f fat

○  内核编译

前面xmake已经下载了工具链,工具链具体位置在这里(arm-smart-musleabi 路径后的数字可能因为版本更新而不同)

1~/.xmake/packages/a/arm-smart-musleabi/211536-3de435f234/f5d0c3febbd2497fa950eb569871a3c0

下载内核主线最新代码 https://github.com/rt-thread/rt-thread.git

进入bsp目录 rt-thread/bsp/nxp/imx/imx6ull-smart

1# 更新在线软件包 (主要涉及wifi软件包)
2source ~/.env/env.sh 
3pkgs --update
4# 编译内核
5scons -j8

○  emmc镜像制作

art-pi smart 支持 emmc,sd,tftp 等方式启动内核。我们以 emmc 为例子说明。在 bsp 目录下,可以看到 ./emmc/boot.fat文件。这是一个预先制作的 fat 文件系统镜像,其中已经包含一些文件。我们创建 tmp 目录,将 boot.fat 临时本地挂载到 tmp 目录下,使用tree命令可以看到如下的文件目录结构。

 1.
2├── boot.fat
3├── image
4│   ├── genimage
5│   ├── genimage.cfg
6│   ├── images
7│   │   └── art-pi.img
8│   ├── input
9│   │   ├── boot.fat
10│   │   └── u-boot-dtb.imx
11│   ├── root
12│   └── tmp
13│       └── root
14└── tmp
15    ├── bin
16    │   └── ash
17    ├── etc
18    │   └── inittab
19    ├── kernel
20    │   ├── rtthread.bin
21    │   ├── rtthread.elf
22    │   ├── rtthread.img
23    │   └── rtthread.imx
24    ├── root
25    │   └── bin
26    │       └── hello.elf
27    └── sbin
28        └── init

● tmp/kernel下是内核相关文件

● tmp/sbin/init和tmp/bin/ash用来开机启动ash

● tmp/root/bin是应用文件夹,可以放置一些自定义应用

每次更新内核/应用,可以参考以下脚本内容生成新的art-pi.img映像文件

 1sudo mount ./boot.fat ./tmp/
2sudo rm -rf tmp/kernel/*
3sudo cp -r ../rtthread.bin tmp/kernel/
4sudo cp -r ../rtthread.elf tmp/kernel/
5sudo cp -r ../rtthread.img tmp/kernel/
6sudo cp -r ../rtthread.imx tmp/kernel/
7sudo sync
8sudo umount ./tmp
9sudo cp boot.fat image/input/
10cd image
11mkdir root
12rm -rf tmp
13./genimage

art-pi.img位置在 rt-thread/bsp/nxp/imx/imx6ull-smart/emmc/image/images 目录下

○  镜像烧写

1.  首先准备一台 windows 测试电脑,下载 100ask_imx6ull 烧写工具(由百问网提供)

a.  工具下载地址:

https://github.com/100askteam/gui_for_nxp_uuu/blob/master/100ask_imx6ull%e7%83%a7%e5%86%99%e5%b7%a5%e5%85%b7/100ask_imx6ull_flashing_tool.exe

b.  ⚠️100ask_imx6ull 烧写工具需要到 github 去下载,网络不稳定。如果出现无法访问或无法下载,请多刷新网页多尝试几次

2.  将用于烧录的 usb type-c(上方口) 先连接到 windows 测试电脑

3.  将另外一个 usb type-c(下方口)也连接上 windows 测试电脑,给开发板供电

4.  在测试电脑上,打开串口调试终端:115200 波特率、8位数据位、1位停止位、无奇偶校验、无流控

5.  先拔掉 art-pi smart 开发板上的 sd 卡(⚠️必须先拔掉 sd 卡)

6.  配置 art-pi smart 开发板进入到 usb 固件下载模式

操作方法:开发板上电之后,先按下 "boot 启动按键" 不松开,再按下 “rst 复位键”,即可切换到 usb 固件下载模式。

7.  windows 主机电脑上,打开烧录工具 100ask_imx6ull_flashing_tool.exe,查看烧录工具是否与art-pi smart usb 连接成功

在烧写软件的专业版,烧写制作的镜像文件art-pi.img

○ 运行系统和应用

在运行系统之前,还有一件必不可少的工作 —— 准备根文件系统镜像。根文件系统提供了应用程序运行的必要环境。前文提到,我们在 userapp 仓库已经构建好了根文件系统。在前面我们以 emmc 为例介绍了内核烧录的方式。这里换一种方式,我们以 sd/tf 卡为例子介绍根文件系统。

首先准备一张sd/tf卡,在linux下为其创建一个大于1gb的分区作为第一分区,在userapp/apps/build下使用sudo dd if=fat.img of=/dev/sdb1命令将根文件系统烧入sd/tf卡中(这里的sd*根据自己sd/tf卡所在位置来设置):

系统上电后我们进入 uboot 并将 bootcmd 修改如下。

1bootcmd=fatload mmc 1:1 0x80001000 /kernel/rtthread.bin; dcache flush; go 0x80001000

将sd卡插入再重新启动开发板后使用mount sd01 /mnt 将sd卡挂载到处我们的mnt目录下,进入mnt目录即可看到我们刚刚用userapp制作好的文件系统。

进入/mnt/bin目录下可以看到该目录下已经包含了一些可执行程序。以 hello 程序为例子,输入命令执行程序,将得到如下输出。


rt-thread smart官方开发板助你开启rt-thread smart v5.1.0之旅



开发板购买链接:

https://m.tb.cn/h.guly2j1?tk=7ah8wy7fme1


——————end——————



 点击阅读原文进入官网

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com