如sdk\rtthread-nano\interrupt.c中所示。 本着尽量不改动 rtthread nano 源码的出发点,决定对 yuheng-riscv 的中断机制进行修改。 增加硬件中断向量表。 增加soft_handler 中断用于线程切换。 剩余的移植工作如 tick 的添加, UART 的添加,这个就不做介绍了,毕竟 rtthread nano 中通过 TODO 都进行标识了。 一...
支持架构:ARM:Cortex M0/ M3/ M4/ M7 等、RISC-V及其他。 功能:线程管理、线程间同步与通信、时钟管理、中断管理、内存管理。 RT-Thread Nano的特点 下载简单 RT-Thread Nano 以软件包的方式集成在KeilMDK 与 CubeMX 中,可 以直接在软件中下载 Nano 软件包获取源码,获取方式详见 基于 Keil MDK 移植 RT-Th...
支持架构:ARM:Cortex M0/ M3/ M4/ M7 等、RISC-V 及其他。功能:线程管理、线程间同步与通信、...
可见,对于不同的编译器,RT-Thread提供了不同的入口函数,对于GNUC,我们只需要将入口函数替换或者添加到gcc参数中,一般替换吧,方便。 修改完启动入口,我们需要移植中断服务函数,系统需要使用中断服务函数进行系统调度等系统级过程。需要移植的中断处理函数有三个分别是 这三个中断处理函数在 Core/Src/stm32f1xx_it.c...
支持架构:ARM:Cortex M0/ M3/ M4/ M7 等、RISC-V 及其他。 功能:线程管理、线程间同步与通信、时钟管理、中断管理、内存管理。 RT-Thread Nano的特点 下载简单 RT-Thread Nano 以软件包的方式集成在 Keil MDK 与 CubeMX 中,可 以直接在软件中下载 Nano 软件包获取源码,获取方式详见 基于 Keil MDK 移植 ...
rtthread_f1demo: 将rtthread nano3.0.3版本移植到stm32f1上; (gitee.com) 3 rt_kprintf()串口调试 //rtthread.h中,这里是ifndef,不是ifdef;这个字符串的参数居然是用(...),第一次见,先放着; #ifndefRT_USING_CONSOLE #definert_kprintf(...) ...
RT-Thread 主要采用 C 语言编写,浅显易懂,方便移植。它把面向对象的设计方法应用到实时系统设计中,使得代码风格优雅、架构清晰、系统模块化并且可裁剪性非常好。针对资源受限的微控制器(MCU)系统,可通过方便易用的工具,裁剪出仅需要 3KB Flash、1.2KB RAM 内存资源的 NANO 版本(NANO 是 RT-Thread 官方于 2017 ...
Rewriting the hifive1 board level support package for the risc-v architecture; About i.MX RT1052, we have completed various development board support: ATK, Fire, seeed studio; On i.MX RT1052, add the cache-ops functions; On i.MX RT1052, add I2S driver and WM8960 codec driver support;...
这样就成功在蜂鸟E203软核上运行 RT-Thread,具体的移植感兴趣也可以对照仓库代码详细看。 2. Picorv32 首先介绍一下 picorv32,它也是一个 Verilog 实现的开源 RISC-V 软核 https://github.com/cliffordwolf/picorv32 这里流程和蜂鸟E203略有区别,因为 picorv32 原版是没有 JTAG 接口的,所以在 EG4S32 的实现...
通过对整体架构的了解,可以总结出要让开发板移植RT-Thread,一般需要: 如果开发板的芯片架构是常见的如 ARM 、RISC-V 等,或是在 libcpu 中已存在的,那么直接使用即可。可以放在项目工程中的 CPU 文件组中;如果开发板的芯片架构在 libcpu 文件夹中并没有具体实现,就需要根据芯片架构来自行实现RT-Thread所规定必须...