- 博客(15)
- 收藏
- 关注
原创 【Linux】Makefile(一)-介绍
该笔记围绕 Makefile 展开,涵盖多方面知识。介绍了 `make` 命令需 `Makefile` 文件指导编译和链接,阐述规则包括目标、依赖及命令。给出示例,还提及高级用法,如用变量方便维护、自动推导简化编写。强调清空规则重要性,以及文件名选择和引用其他 `Makefile` 的方法。最后说明了 `make` 工作按读文件、初始化变量、分析规则、创建依赖链、决定重生成目标和执行命令等步骤进行。
2025-07-16 12:15:44
929
原创 RT-Thread内核----中断管理
经过前面文章的学习,对于 RT-Thread 处理多任务或者说线程的处理机制,基本上入门了。但是,还有一个重要的部分,那就是 RT-Thread 如何处理中断。说到中断,大家都不会陌生,对于裸机编程,很简单,编写指定的中断服务函数就可以了。如果工程建立在 RTOS 基础之上,中断是如何管理的呢?本文带你了解 RT-Thread 的中断处理过程,以及如何添加中断服务程序和相关的注意事项。
2024-12-23 16:53:12
1365
原创 RT-Thread内核----内存管理
计算机系统中,变量、中间数据一般存放在 RAM 中,只有在实际使用时才将它们从 RAM 调入到 CPU 中进行运算。一些数据需要的内存大小需要在程序运行过程中根据实际情况确定,这就要求系统具有对内存空间进行动态管理的能力,在用户需要一段内存空间时,向系统申请,系统选择一段合适的内存空间分配给用户,用户使用完毕后,再释放回系统,以便系统将该段内存空间回收再利用。这章主要介绍 RT-Thread 中的两种内存管理方式,动态内存堆管理和静态内存池管理,学完本章会了解 RT-Thread 的内存管理原理使用方法
2024-12-15 20:26:02
1088
原创 RT-Thread内核----线程间通信
在裸机编程中,经常会使用全局变量进行功能间的通信,如某些功能可能由于一些操作而改变全局变量的值,另一个功能对此全局变量进行读取,根据读取到的全局变量值执行相应的动作,达到通信协作的目的。RT-Thread 中则提供了更多的工具帮助在不同的线程中间传递信息,本章会详细介绍这些工具。邮箱服务是实时操作系统中一种典型的线程间通信方法。消息队列是另一种常用的线程间通讯方式,是邮箱的扩展。信号(又称为**软中断**信号),在软件层次上是**对中断机制的一种模拟**,在原理上,一个线程收到一个信号与处理器收到
2024-12-02 20:35:39
2556
原创 RT-Thread内核----线程间同步(二) 互斥量、事件集
互斥量又叫相互排斥的信号量,是一种特殊的二值信号量。互斥量和信号量不同的是:拥有互斥量的线程拥有互斥量的所有权,互斥量支持递归访问且能防止线程优先级翻转;并且互斥量只能由持有线程释放,而信号量则可以由任何线程释放。事件集也是线程间同步的机制之一,一个事件集可以包含多个事件,利用事件集可以完成一对多,多对多的线程间同步。事件集主要用于线程间的同步,与信号量不同,它的特点是可以实现一对多,多对多的同步。
2024-12-01 19:50:28
1101
原创 RT-Thread内核----线程间同步(一)信号量
在多线程实时系统中,一项的完成往往可以通过多个线程协调的方式共同来完成,例如,一项工作中的两个线程:一个线程从传感器中接收数据并且将数据写到共享内存中,同时另一个线程周期性的从共享内存中读取数据并发送去显示,下图描述了两个线程间的数据传递:如果对共享内存的访问不是排他性的,那么各个线程间可能同时访问它,这将引起数据一致性的问题。例如,在显示线程试图显示数据之前,接收线程还未完成数据的写入,那么显示将包含不同时间采样的数据,造成显示数据的错乱。
2024-11-26 19:11:07
1216
原创 RT-Thread内核----线程管理
在多线程操作系统中,也同样需要开发人员把一个复杂的应用分解成多个小的、可调度的、序列化的程序单元,当合理地划分任务并正确地执行时,这种设计能够让系统满足实时系统的性能及时间的要求线程是实现任务的载体,是 RT-Thread 中最基本的调度单位,对任务设置优先级,轮流运行当线程运行时,它会认为自己是以独占 CPU 的方式在运行。
2024-11-24 20:39:25
1330
原创 RT-Thread内核----时钟管理
RT-Thread 的定时器提供两类定时器机制:第一类是单次触发定时器,这类定时器在启动后只会触发一次定时器事件,然后定时器自动停止。第二类是周期触发定时器,这类定时器会周期性的触发定时器事件,直到用户手动的停止,否则将永远持续执行下去。另外,根据超时函数执行时所处的上下文环境,RT-Thread 的定时器可以分为 HARD_TIMER 模式与 SOFT_TIMER 模式,如下图。
2024-11-21 19:34:33
1190
原创 回调函数和钩子函数
在嵌入式开发中,钩子函数(Hook Function)和回调函数(Callback Function)都是常见的编程模式,虽然它们的用途和机制相似,但在设计理念和应用场景上有所区别。
2024-11-20 19:06:49
605
原创 控制算法(一)-------PID算法
比例积分微分控制,简称PID控制,其中P表示比例、I表示积分、D表示微分。PID控制算法是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好和可靠性高,被广泛应用于工业过程控制。而且也衍生出多种相关的控制算法:P控制、PI控制、PD控制、增量式PID控制、抗饱和PID、微分先行PID、自适应PID、模糊PID控制等。虽然这些算法各不相同,但都是基于最基本的PID控制算法为原型的。
2024-09-08 20:15:05
12980
3
原创 Linux文件与目录操作基础常用命令
文件概述了Linux系统中的基本命令,用于文件和目录操作、内容查看、vim编辑、复制、移动、删除、搜索、大小统计以及权限设置。
2024-04-28 22:07:57
1682
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人