米尔更新面向工业产品的软件系统-基于瑞米派(Remi Pi)

米尔电子发布的瑞萨第一款MPU生态板卡——瑞米派(Remi Pi)自上市当天200套售罄,获得不少新老用户的青睐。为感谢大家的支持,米尔加推300套瑞米派活动,以补贴价回馈大家,抢完即止!

不仅如此,此次瑞米派发布myir-image-core系统,相比上次发布适用于HMI场景的全面型myir-image-full系统,myir-image-core系统则更轻量,非常适用于各种工业场景应用,如专为工业控制场景移植的RT-Linux实时补丁和Ethercat主站,专为轻量级工业显示场景移植的LVGL,专为工业实时性场景移植的FreeRTOS实时操作系统。瑞米派支持的系统会不断更新,下个月还会持续推出瑞米派的Ubuntu和Debian系统,敬请期待!

一、系统概述

Remi Pi的myir-image-core系统是基于 Yocto 构建的带有LVGL界面的镜像,包含完整的硬件驱动,常用的系统工具,调试工具等,包含RT-Linux实时补丁和Ethercat 主站,支持使用 Shell, C/C++进行应用开发。

类别

名称

描述

源码

Flash-Writer

Flash-Writer 1.06

TF-A

Arm Trusted Firmware 2.6

Bootloader

U-boot 2021.10

Kernel

Linux Kernel 5.10.83

Yocto

Yocto 3.1.20

文件系统

myir-image-core

yocto构建的文件系统

工具

开发工具

sdk.tar.bz2、e2 studio

烧录工具

Win32DiskImager teraterm

文档

Remi Pi_Linux软件开发指南

包含源码编译,烧录等

Remi Pi FreeRTOS应用开发笔记

包含环境搭建,工程创建等

Remi Pi实时系统与Ethercat移植应用笔记

包含rtlinux、ethercat移植

二、功能介绍

1. LVGL显示

从04_Sources目录下获取lvgl.tar.bz2源码包,解压源码包。

PC:~/renesas/04_Sources$ tar -xvf lvgl.tar.gz

编译源码包,拷贝lvgl_demo可执行文件到开发板运行即可。

PC:~/renesas/04_Sources/lvgl$ source /opt/remi-sdk/environment-setup-aarch64-poky-linux
PC:~/renesas/04_Sources/lvgl$ make

米尔-瑞米派的LVGL显示效果

2. LVGL显示

从RT官网获取L5.10.83内核版本对应的补丁,链接如下:

Index of /pub/linux/kernel/projects/rt/5.10/older/

把补丁包解压到自己的工作目录下。

PC:~/renesas/04_Sources$ tar -xvf patches-5.10.83-rt58.tar.gz

到内核源码目录下打补丁。

PC:~/renesas/04_Sources/myir-renesas-linux$ for p in `ls -1 ../patches/*.patch`;do patch -p1 < $p;done

修改mys_g2lx_defconfig配置文件

PC:~/renesas/04_Sources/myir-renesas-linux$ vi arch/arm64/configs/mys_g2lx_defconfig
CONFIG_EXPERT=y
CONFIG_ARCH_SUPPORTS_RT=y
CONFIG_PREEMPT_RT=y
#CONFIG_PREEMPT=y
#CONFIG_KVM=y

编译内核源码,更新Image文件即可。

PC:~/renesas/04_Sources/myir-renesas-linux$ source /opt/remi-sdk/environment-setup-aarch64-poky-linux
PC:~/renesas/04_Sources/myir-renesas-linux$ make ARCH=arm64 mys_g2lx_defconfig
PC:~/renesas/04_Sources/myir-renesas-linux$ make ARCH=arm64 Image dtbs   -j16

3. IGH Ethercat 主站

到官网下载1.5版本的Ethercat源码,链接如下:

https://gitlab.com/etherlab.org/ethercat/-/tree/stable-1.5?ref_type=heads

把Ethercat源码包解压到自己的工作目录下。

PC:~/renesas/04_Sources$ tar -xvf ethercat-stable-1.5.tar.bz2
PC:~/renesas/04_Sources$ cd ethercat-stable-1.5

加载环境变量。

PC:~/renesas/04_Sources/ethercat-stable-1.5$ source /opt/remi-sdk/environment-setup-aarch64-poky-linux

生成configure文件。

PC:~/renesas/04_Sources/ethercat-stable-1.5$ ./bootstrap

configure设置。

PC:~/renesas/04_Sources/ethercat-stable-1.5$ mkdir output
PC:~/renesas/04_Sources/ethercat-stable-1.5$ ./configure --prefix=/home/renesas/04_Sources/ethercat-stable-1.5/output --with-linux-dir=/home/renesas/04_Sources/myir-renesas-linux  --enable-8139too=no  --enable-generic=yes   --host=aarch64-poky-linux

编译和安装。

PC:~/renesas/04_Sources/ethercat-stable-1.5$ make
PC:~/renesas/04_Sources/ethercat-stable-1.5$ make modules
PC:~/renesas/04_Sources/ethercat-stable-1.5$ make install

编译和安装完成后,生成的ec_generic.ko驱动文件位于devices目录,ec_master.ko驱动文件位于master目录,生成的库相关文件位于output目录。

PC:~/renesas/04_Sources/ethercat-stable-1.5$ ls devices/en_genric.ko
devices/ec_generic.ko
PC:~/renesas/04_Sources/ethercat-stable-1.5$ master/ec_master.ko
devices/ec_master.ko
PC:~/renesas/04_Sources/ethercat-stable-1.5$ ls output/
bin  etc  include  lib  sbin  share

将上面output目录下的相关文件和ec_master.ko拷贝到开发板如下目录:

root@myir-remi-1g:~/output# ls
bin  etc  include  lib  modules  sbin  share
root@myir-remi-1g:~/output# cp bin/ethercat /bin/
root@myir-remi-1g:~/output# cp etc/ethercat.conf /etc/
root@myir-remi-1g:~/output# cp etc/init.d/*  /etc/init.d
root@myir-remi-1g:~/output# cp -r etc/sysconfig/ /etc/
root@myir-remi-1g:~/output# cp  lib/libethercat.* /lib64/
root@myir-remi-1g:~/output# cp -r lib/pkgconfig /lib64/
root@myir-remi-1g:~/output# cp modules/ec_master.ko /lib/modules/5.10.83-cip1-rt58-yocto-standard/
root@myir-remi-1g:~/output# cp sbin/ethercatctl  /sbin/

启动Ethercat。

root@myir-remi-1g:~# depmod
root@myir-remi-1g:~# modprobe ec_master main_devices=1E:ED:19:27:1A:B3
root@myir-remi-1g:~# /etc/init.d/ethercat start
Starting EtherCAT master 1.5.2  done

4. Freertos

首先要下载e2 studio工具并搭建好环境和到04_Sources目录获取GPIO.zip工程包,打开e2 studio工具后,点击File->Import->General-> Existing Projects into Workspace来导入GPIO工程,导入工程后点击Project->Build Project进行工程的编译,详细请参考《Remi Pi  FreeRTOS应用开发笔记》。

编译成功会生成一个debug目录,生成的如下文件拷贝到sd卡上,用于在uboot进行CM33工程调用。

GPIO_non_secure_code.bin
GPIO_non_secure_vector.bin
GPIO_secure_code.bin
GPIO_secure_vector.bin

把sd卡插入到开发板的sd卡槽,启动板子并在uboot阶段执行如下调用,查看sd卡里面的内容,如下:

=> switch_sdhi1 sdcard
switch to sdcard
=> ls mmc 1:1System Volume Information/64   GPIO_secure_vector.bin16926   GPIO_non_secure_code.bin1984   GPIO_non_secure_vector.bin480   GPIO_secure_code.bin
4 file(s), 1 dir(s)

加载编译出来的固件,如下:

=> dcache off
=> mmc dev 1
switch to partitions #0, OK
mmc1 is current device
=> fatload mmc 1:1 0x0001FF80 GPIO_secure_vector.bin
64 bytes read in 24 ms (2 KiB/s)
=> fatload mmc 1:1 0x42EFF440 GPIO_secure_code.bin
480 bytes read in 25 ms (18.6 KiB/s)
=> fatload mmc 1:1 0x00010000 GPIO_non_secure_vector.bin
1984 bytes read in 26 ms (74.2 KiB/s)
=> fatload mmc 1:1 0x40010000 GPIO_non_secure_code.bin
16926 bytes read in 29 ms (569.3 KiB/s)
=> cm33 start_debug 0x1001FF80 0x00010000

当加载完以上命令之后可以看到蓝灯在闪烁。

米尔-瑞米派的加载效果展示

三、内核清单

为了方便用户进行内核的移植,下面将内核驱动各个模块的源码路径整理如下:

模块

描述

源码路径

MMC

EMMC驱动程序

drivers/mmc/host/renesas_sdhi_internal_dmac.c

SD

SD卡驱动程序

drivers/mmc/host/renesas_sdhi_internal_dmac.c

QSPI

MTD驱动程序

drivers/memory/renesas-rpc-if.c

SPI

SPI 驱动程序

drivers/spi/spidev.c

I2C

I2C驱动程序

drivers/i2c/busses/i2c-riic.c

ADC

ADC驱动程序

drivers/iio/adc/rzg2l_adc.c

E2PROM

24C256C驱动

drivers/misc/eeprom/at24.c

USB Host

USB 驱动程序

drivers/usb/host/ehci-platform.c

drivers/usb/host/ohci-platform.c 

Ethernet

千兆网络驱动程序

drivers/net/ethernet/renesas/ravb_main.c

USB OTG

USB 驱动程序

drivers/phy/renesas/phy-rcar-gen3-usb2.c

RS232/RS485/Uart

串口驱动程序

drivers/tty/serial/sh-sci.c

CAN BUS

CAN总线驱动程序

drivers/net/can/rcar/rcar_canfd.c

GPIO KEY

KEY驱动程序

drivers/input/keyboard/gpio_keys.c

WIFI

WIFI驱动程序

drivers/staging/rtl88x2cs/*

RTC

RTC驱动程序

drivers/rtc/rtc-rx8025t.c

GPIO LED

LED驱动程序

drivers/leds/leds-gpio.c

HDMI/LVDS

MIPI转HDMI和LVDS驱动程序

drivers/gpu/drm/bridge/lt8912.c

LCD

LCD驱动程序

drivers/gpu/drm/panel/panel-simple.c

TOUCH

触摸屏驱动程序

drivers/input/touchscreen/edt-ft5x06.c

ES8388

ES8388音频驱动

sound/soc/codecs/es8328-i2c.c

OV5640

OV5640摄像头驱动

drivers/media/i2c/ov5640.c

四、获取链接

关于Remi Pi的myir-image-core系统,用户可以从下面地址获取镜像文件和源码:

下载地址:MYIR

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/540979.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kyligence 亮相 Gartner 数据与分析峰会,生成式 AI 落地赋能业务

3月11日-13日&#xff0c;Gartner 2024 数据与分析峰会 (Gartner Data & Analytics Summit) 在美国奥兰多盛大召开。作为全球领先的大数据分析和指标平台供应商&#xff0c;Kyligence 出席本次峰会并发表了 Kyligence: AI Enables Intelligent PDCA&#xff08;AI 赋能从计…

姿态旋转的哥氏定理以及速度微分的推导

姿态旋转中涉及到坐标系的转换&#xff0c;在有相对旋转的两个坐标系中观察一个向量的变化&#xff0c;用到了哥氏定理。 例如在i系中观察e系下的运动&#xff0c;则 哥氏定理的公式 wie是e相对于i的角运动 注意符号i在前e在后。 wie是e相对于i的角运动 注意符号i在前e在…

Qt之格栅布局(QGridLayout)控件填满整个单元格

Qt专栏&#xff1a;http://t.csdnimg.cn/GQN1M 目录 1.现象1 2.解决方案 3.现象2 4.解决方案 5.总结 1.现象1 今天在用QGridLayout布局的时候&#xff0c;添加到布局的QWidget有文本框、标签、组合框和按钮等等&#xff0c;布局两列&#xff0c;通过下面的方式添加进去的&…

用网格大师网络重划分时,坐标原点按照XML文件原点填写,导出的瓦块文件命名不对,坐标原点该怎么填写

瓦块名称和原来不一致的原因是瓦块原点这里设置的不对&#xff0c;要和重建设置的瓦块原点保持一致。 网格大师是一款能够解决实景三维模型空间参考、原点、瓦块大小不统一&#xff0c;重叠区域处理问题的工具“百宝箱”&#xff0c;集格式转换、坐标转换、轻量化、瓦片重划分…

算法打卡day13|二叉树篇02|Leetcode 102.二叉树的层序遍历、226.翻转二叉树、101. 对称二叉树

在做题之前说明 Deque和Queue 在Java中&#xff0c;Deque和Queue是两种不同的数据结构接口&#xff0c;它们都继承自Collection接口&#xff1b;Deque是Queue的超集&#xff0c;提供了更多的操作和灵活性&#xff0c;以下它们之间存在一些关键的区别&#xff1a; 操作范围&…

web学习笔记(三十三)

目录 1.严格模式 1.1严格模式的概念&#xff1a; 1.2严格模式在语义上更改的地方&#xff1a; 1.3如何开启严格模式 1.4严格模式应用上的变化 2.原型链 1.严格模式 1.1严格模式的概念&#xff1a; 严格模式有点像es5向es6过渡而产生的一种模式&#xff0c;因为es6的语法…

Python爬虫从基础到入门:script标签中的数据

上一篇文章: Python爬虫从基础到入门:script标签中的数据 1. 分析需要抓取的数据的在哪?2. 获取数据、解析数据3. 下载视频、音频文件4. 参考代码1. 分析需要抓取的数据的在哪? 本篇博文以B站视频为例,B站视频在用户没有登录的状态下,只能观看视频尺寸为360流畅,在登录…

C# 读取多条数据记录导出到 Word 标签模板

目录 应用需求 实现步骤 范例运行环境 配置Office DCOM 实现代码 组件库引入 ​编辑 核心代码 小结 应用需求 将数据库数据表中的数据输出并打印&#xff0c;WORD 是一个良好的载体&#xff0c; 在应用项目里&#xff0c;许多情况下我们会使用数据记录结合 WORD 标签模…

面试宝典-【spring】

目录 1.Spring是什么 ? 2.Spring框架中的单例bean是线程安全的吗&#xff1f; 3.IOC容器是什么&#xff1f; 4.什么是依赖注入&#xff1f; 6.什么是AOP &#xff1f; 7.IOC容器初始化过程&#xff1f; 8.Bean的生命周期&#xff1f; 9.BeanFactory和FactoryBean的…

游戏开发需不需要考研?

近年来&#xff0c;中国游戏行业增速放缓&#xff0c;用户基数趋于饱和&#xff0c;行业监管日趋严格&#xff0c;国外竞争激烈&#xff0c;使游戏公司面临挑战。为适应形势&#xff0c;游戏企业正在调整策略&#xff0c;采取主动学习和实战练习的方式&#xff0c;提升游戏质量…

HTML案例-4.注册页面表单练习

效果 知识点 列表标签 无序列表 <ul><li>火锅</li><li>奶茶</li><li>烤肉</li> <ul> 有序列表 <ol><li>蛋挞</li><li>水煮鱼</li><li>麻辣香锅</li> </ol> 自定义列表…

TCP相关特性

协议段格式 • 源/⽬的端⼝号:表⽰数据是从哪个进程来,到哪个进程去; • 32位序号/32位确认号:后⾯详细讲; • 4位TCP报头⻓度:表⽰该TCP头部有多少个32位bit(有多少个4字节);所以TCP头部最⼤⻓度是15*460 • 6位标志位: ◦ URG:紧急指针是否有效 ◦ ACK:确认号是否有效…