RT-Thread
Aspirant-GQ
这个作者很懒,什么都没留下…
展开
-
FreeRTOS—链表的实现
文章目录一.C语言链表1.单向链表2.双向链表3.链表与数组二.FreeRTOS中链表实现1.定义节点结构体2.定义精简节点结构体3.定义根节点结构体4.节点初始化5.根节点初始化6.将节点插入到链表尾部7.将节点插入到固定位置8.删除节点三.仿真验证一.C语言链表链表作为C语言中的一种基础的数据结构,在平时的程序中使用次数比较少,但在操作系统中链表中的使用次数比较多。链表的最大作用就是可以把...原创 2019-08-30 23:14:28 · 2130 阅读 · 1 评论 -
RT-Thread—线程挂起与恢复
文章目录为什么要线程管理线程的五种状态线程挂起函数rt_thread_suspend()线程恢复函数rt_thread_resume()为什么要线程管理在RTT中,线程是竞争系统运行资源的最小运行单位,而且RTT是一个支持多线程的操作系统,所以就会有各种线程要占用CPU的资源。由于线程都是独立的,每个线程都有单独的堆栈空间、运行状态…所以,在线程进行切换的时候就很有必要保存每个线程的相关信息...原创 2019-11-20 00:56:00 · 7386 阅读 · 1 评论 -
RT-Thread—创建线程的俩种方式
文章目录概述静态创建定义线程栈定义线程函数定义线程控制块初始化线程启动线程函数动态创建概述创建线程三要素:1.线程栈2.线程控制块3.线程主体函数在RTT中线程的创建方式有俩种:静态创建动态创建从字面意思上还是比较好理解俩种方法的,静态创建就是提前申请好一点的空间,动态创建就是根据所需空间大小自动分配空间。静态创建所谓静态创建,就是在SRAM中提前给线程划分一部分内存空间...原创 2019-11-17 22:34:31 · 3384 阅读 · 2 评论 -
RT-Thread—RTT启动流程
文章目录RTOS的俩种启动方式方式一:先创建所有线程,再调度方式二:在启动线程中,创建线程RTT的启动流程1.上电后首先执行的复位函数2.调用__main函数3.main函数的预操作`$Sub$$main`函数`rtthread_startup()`函数`rt_application_init()`函数`main_thread_entry`函数4.main函数中创建线程RTOS的俩种启动方式R...原创 2019-11-17 20:56:41 · 2480 阅读 · 0 评论 -
RT-Thread—重映射串口到rt_kprintf
文章目录重映射rt_kprintf()函数定义自定义rt_hw_console_output()重映射在初学C语言时,用的最多的怕是printf()函数了,其作用就是将传入的参数打印到屏幕上,可以实现人机交互或方便用户对程序的调试等等。在RT-Thread中,也有一个打印函数rt_kprintf(),其作用和printf()类似,可以在调试时输出各种信息。但是如果想要使用rt_kprintf...原创 2019-11-17 15:54:14 · 4680 阅读 · 1 评论