env使用方法:https://www.rt-thread.org/document/site/programming-manual/env/env/#bsp-menuconfig 配置好之后,退出保存即可。 注意:如果menuconfig里面没有你要使用的串口号怎么办,这个问题请跳到后面查看 “常见问题解答”。 2、重新生成工程 在env输入下面的命令,重新生成新的工程。 提示:会使用env的话应该都...
静态线程创建成功的话会返回0,失败的话会返回一个负值,若成功创建线程,我们调用rt_thread_startup函数使线程2进入就绪态,并执行线程处理函数。 if(ret < 0){LOG_E("rt2_thread_create create failed ...\n"); // 错误信息打印return ret;}LOG_D("rt_thread2_create create successes ...\n");rt_thre...
rt_err_trt_thread_init(struct rt_thread*thread,constchar*name,void(*entry)(void*parameter),void*parameter,void*stack_start,rt_uint32_t stack_size,rt_uint8_t priority,rt_uint32_t tick); (2)脱离线程 对于用rt_thread_init() 初始化的线程,使用rt_thread_detach() 将使线程对象在线程队列和内...
rt_thread_ready_priority_group0x20000210Data4scheduler.o(.data) rt_thread_defunct0x20000214Data8scheduler.o(.data) rt_interrupt_from_thread0x20000240Data4cpuport.o(.data) rt_interrupt_to_thread0x20000244Data4cpuport.o(.data) rt_thread_switch_interrupt_flag0x20000248Data4cpuport.o(.data) sh...
如果希望在一个板卡上使用 RT-Thread 内核,除了需要有相应的芯片架构的移植,还需要有针对板卡的移植,也就是实现一个基本的 BSP。 主要任务是建立让操作系统运行的基本环境,需要完成的主要工作是: 1)初始化 CPU 内部寄存器,设定 RAM 工作时序。 2)实现时钟驱动及中断控制器驱动,完善中断管理。
登录成功后显示RT-Thread Studio的主界面 main.png 创建工程 以英飞凌的开发板PSoc 62使用调试为例,PSoc 62是RT-Thread和英飞凌合作开发推出的一块demo板 点击左上角菜单栏文件(F)->新建(N)->RT-Thread 项目 new-project.png 在新建项目页面,点击基于开发板,在开发板处下拉框选择添加更多... ...
空闲线程使用rt_thread_init函数进行创建,使用此函数创建的属于静态线程,其TCB和线程栈在编译时已经分配好,不能被用户取消。我们知道,取消一个线程无非两种考虑:1.用户的逻辑需要取消此线程2.此线程已经完成了其使命,避免继续占用系统资源。空闲线程在RTT中的定位就是长期存在且使用最低优先级,不会占用系统资源。因此...
RT-Thread 支持 Finsh 功能,用户调试和查看系统信息,用户可以使用命令进行操作。输入help或者按 tab 键可以查看系统支持的命令: 我们尝试输入指令list_thread,显示系统当前正在运行的线程,以及线程状态和堆栈大小等信息: Finsh 具有自动补全功能,输入命令的部分字符,按下 Tab 键盘,则系统会根据当前已经输入的字符,从系统...
动态模块 elf 文件主要放置于 RT-Thread下的文件系统上。 1、功能简介 动态模块为 RT-Thread 提供了动态加载程序模块的机制,因为也独立于内核编译,所以使用方式比较灵活。从实现上讲,这是一种将内核和动态模块分开的机制,通过这种机制,内核和动态模块可以分开编译,并在运行时通过内核中的模块加载器将编译好的...