RTX5全家桶源码综合模板发布,含FreeRTOS内核版本,将其打造成直接面向实际项目应用的综合框架(2024-06-19)

本文主要是介绍RTX5全家桶源码综合模板发布,含FreeRTOS内核版本,将其打造成直接面向实际项目应用的综合框架(2024-06-19),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【说明】

1、RTX5全家桶的优势就是简单易用,初学的话,上手很快,稳定性也是杠杠的,且容易做稳定。

2、同时RTX5也是有汽车级,工业级,医疗和铁路安全认证,只是安全级别比ThreadX要稍微低些。

3、当前RTX5中间件源码已经开源了,大大方便大家问题的排查。同时提供了FreeRTOS内核版本,方便大家选择。

视频介绍:

https://www.bilibili.com/video/BV1aT421a73g/

RTX5全家桶源码综合模板发布,含FreeRTOS内核版本,将其打造成直接面向实际项目应用的综合框架


【目标】

1、这个综合源码模板,不仅仅是模块,后续持续维护,将其打造成直接面向实际项目应用的综合框架,大家可以直接添加自己的应用即可,不需要的组件可以屏蔽掉。并且提供了源码,大家也可以方便的魔改为自己专属的工程。

2、整个框架全部采用CMSIS全家桶管理,特别是CMSIS-RTOS,方便大家切换各种OS内核。


【功能】

1、本次工程集成了CMSIS6.10,CMSIS-Driver,CMSIS-DSP,CMSIS-Viwer,CMSIS-Compiler,CMSIS-RTOS V2,CMSIS-FreeRTOS,CMSIS-RTX,CMSIS-MbedTLS等,全部采用的当前最新版。
2、网络协议栈,单网络协议栈同时管理DM9000和DM9162双网口。
3、文件系统,同事管理外挂U盘,NAND Flash和SD卡。
4、USB协议栈,RL-USB同时外挂USB FS和USB HS两个USB外设,USB FS接口用于外接电脑,实现SD卡和NAND模拟U盘,USB HS用于外挂U盘设备。
5、加密算法库使用的CMSIS-mbedTLS。
6、BSP外设驱动,部分是采用的CMSIS-Driver,其他都采用我们自己设计的。

下次升级添加
1、Modbus主从机,采用我们自己设计的
2、CANopen主从机,采用之前专题视频教程采用的CanopenNode
3、GUI选择,RTX5内核版采用emWin,FreeRTOS内核版采用LVGL
4、根据大家的需要,看看是否需要提供APP + BOOT的方式,APP做固件加密,实现安全升级。


【注意事项】

1、由于程序使用了DWT时钟周期计数器,程序下载后,请将板子重新上电使用,防止DWT时钟周期计数器没有正常复位。
2、RL-FlashFS操作外挂U盘,SD卡或者NAND,是通过串口命令u,m和n来切换,m表示SD卡,n表示NAND,u表示U盘。
3、首次使用,如果操作NAND,务必调用串口命令1,进行NAND Flash的低级格式化和文件系统格式化。
4、使用FTP服务器前,请插入SD卡,执行串口命令f,不使用FTP功能后,请执行串口命令t。
     (1)FTP服务器请使用FlashFXP 5,而使用FileZilla Client不好用。
     (2)FTP用户名admin,密码123456,端口21。


【工程下载】

1、这次发布,先制作好了MDK版本(当前提供的工程是用MDK5.40 AC6编译测试),后面GCC和IAR版也将上线,大家喜欢那个IDE,方便用那个IDE ,就用那个。

2、追求更好的稳定性,推荐RTX5版,因为RTX5与其配套的中间件兼容性更好。

3、基于V7板子。

FreeRTOS All In One.7z (24.45MB)

RTX5 All In One.7z (23.29MB)


【操作说明】

1、RL-USB + RL-FlashFS文件系统操作:

请选择串口操作命令,电脑键盘打印数字即可
("首次使用,如果操作NAND,务必调用串口命令1,进行NAND Flash的低级格式化和文件系统格式化\r\n");        
("1 - 显示卡容量和剩余容量\r\n");
("2 - 显示卡根目录下的文件\r\n");
("3 - 创建三个text文本并使用不同函数写入内容\r\n");
("4 - 使用三个不同函数读取文本\r\n");
("5 - 创建一个text文本并指定一个位置对其进行读写操作\r\n");
("6 - 删除文件夹和文件\r\n");
("7 - 测试文件读写速度\r\n");
("8 - 写数据到CSV文件中\r\n");
("9 - 从CSV文件中读数据\r\n");
("m - 所有操作是针对SD卡命令\r\n");
("u - 所有操作针对U盘命令\r\n");
("n - 所有操作针对NAND命令\r\n");   
("a - 打开SD和NAND模拟U盘\r\n");
("b - 关闭SD和NAND模拟U盘\r\n");
("f - 启动FTP前,挂载SD卡\r\n");
("t - 关闭FTP后,卸载SD卡\r\n");

2、RL-TCPnet网络协议操作:

(1)强烈推荐将网线接到路由器或者交换机上面测试,因为已经使能了DHCP,可以自动获取IP地址。获取的IP地址会通过串口打印出来。
(2)DM9000和DM9162分别创建了一个TCP Server,DM9000使用端口号1002,而DM9162使用端口号1001。用户可以在电脑端用网络调试软件创建TCP Client连接此服务器端。
(3)按键K1按下,DM9162发送数据给TCP Client。
(4)按键K2按下,DM9000发送数据给TCP Client。
(5)如果使用固定IP请看双网卡教程附件章节进行设置:V7,V6,V5开发板RL-TCPnet V7.X双网口教程发布,单网络协议栈管理DM9000和DM9162(2020-11-30) - STM32H7 - 硬汉嵌入式论坛 - Powered by Discuz!

RL-Flash和RL-USB串口命令操作:

SD卡和NAND模拟U盘,互相复制粘贴

RL-TCPnet详细操作说明可以看双网卡教程第3章3.14:V7,V6,V5开发板RL-TCPnet V7.X双网口教程发布,单网络协议栈管理DM9000和DM9162(2020-11-30) - STM32H7 - 硬汉嵌入式论坛 - Powered by Discuz!

上电后会打印双网口获取的IP地址:

RTX5调试组件:

FreeRTOS调试组件:

RL-USB调试组件:

RL-TCPnet调试组件:

RL-FlashFS调试组件:

FTP服务器请使用FlashFXP 5,FTP用户名admin,密码123456,端口21

使用FTP服务器前,请插入SD卡,执行串口命令f,不使用FTP功能后,请执行串口命令t

下面是H7板子做服务器,电脑端从H7做的服务器下载速度6.xMB/S

这篇关于RTX5全家桶源码综合模板发布,含FreeRTOS内核版本,将其打造成直接面向实际项目应用的综合框架(2024-06-19)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1078731

相关文章

python版本切换工具pyenv的安装及用法

《python版本切换工具pyenv的安装及用法》Pyenv是管理Python版本的最佳工具之一,特别适合开发者和需要切换多个Python版本的用户,:本文主要介绍python版本切换工具pyen... 目录Pyenv 是什么?安装 Pyenv(MACOS)使用 Homebrew:配置 shell(zsh

mysql_mcp_server部署及应用实践案例

《mysql_mcp_server部署及应用实践案例》文章介绍了在CentOS7.5环境下部署MySQL_mcp_server的步骤,包括服务安装、配置和启动,还提供了一个基于Dify工作流的应用案例... 目录mysql_mcp_server部署及应用案例1. 服务安装1.1. 下载源码1.2. 创建独立

Linux内核定时器使用及说明

《Linux内核定时器使用及说明》文章详细介绍了Linux内核定时器的特性、核心数据结构、时间相关转换函数以及操作API,通过示例展示了如何编写和使用定时器,包括按键消抖的应用... 目录1.linux内核定时器特征2.Linux内核定时器核心数据结构3.Linux内核时间相关转换函数4.Linux内核定时

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

解决idea启动项目报错java: OutOfMemoryError: insufficient memory

《解决idea启动项目报错java:OutOfMemoryError:insufficientmemory》:本文主要介绍解决idea启动项目报错java:OutOfMemoryError... 目录原因:解决:总结 原因:在Java中遇到OutOfMemoryError: insufficient me

Java利用Spire.Doc for Java实现在模板的基础上创建Word文档

《Java利用Spire.DocforJava实现在模板的基础上创建Word文档》在日常开发中,我们经常需要根据特定数据动态生成Word文档,本文将深入探讨如何利用强大的Java库Spire.Do... 目录1. Spire.Doc for Java 库介绍与安装特点与优势Maven 依赖配置2. 通过替换

python项目环境切换的几种实现方式

《python项目环境切换的几种实现方式》本文主要介绍了python项目环境切换的几种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 如何在不同python项目中,安装不同的依赖2. 如何切换到不同项目的工作空间3.创建项目

SpringBoot项目整合Netty启动失败的常见错误总结

《SpringBoot项目整合Netty启动失败的常见错误总结》本文总结了SpringBoot集成Netty时常见的8类问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、端口冲突问题1. Tomcat与Netty端口冲突二、主线程被阻塞问题1. Netty启动阻

python项目打包成docker容器镜像的两种方法实现

《python项目打包成docker容器镜像的两种方法实现》本文介绍两种将Python项目打包为Docker镜像的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录简单版:(一次成功,后续下载对应的软件依赖)第一步:肯定是构建dockerfile,如下:第二步