单片机怎么实现真正的多线程?

单片机怎么实现真正的多线程?

不考虑多核情况时,CPU在一个时间点只能做一件事,因为切换的速度快所以看起来好像是同时执行多个线程而已。

实际上就是用定时器来做时基,以时间片的方式分别执行来实现的,只不过实现起来细节比较复杂,核心思想就是你猜想的那样。最近很多小伙伴找我,说想要一些单片机的资料,然后我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「单片机资料从专业入门到高级教程+工具包」,点个关注,全部无偿共享给大家!!!

评论区回复"888",关注我之后私信回复"666",即可拿走。

如果你仅仅想知道具体思路,我可以告诉你。就是划分一块内存区域做线程的上下文切换空间,另外以一个定时器做定时时基。例如设为1ms,每隔1ms检测是否有其它线程要工作,如果有,保存当前线程的CPU寄存器以及工作状态到当前线程的上下文空间,从要运行的线程上下文空间取出寄存器值填充到CPU寄存器中,这样就完成了线程的切换,CPU就接着另一个线程的工作继续做下去了。

打个比方,我们把一个人关在小房间里,给他布置了写作业和洗衣服的两个任务。

相关推荐
泡泡糖的中文规格书42 分钟前
STM32G030F6P6中文规格书开放获取(完整中英对照/ARM Cortex-M0+ MCU)
stm32·单片机·嵌入式硬件·pcb设计·硬件设计·中文数据手册
正点原子2 小时前
《ESP32-S3使用指南—IDF版 V1.6》第十章 ESP32-P4存储器类型
单片机·物联网·嵌入式
森利威尔电子-5 小时前
SL4011:2.7V-12V输入,12.8V输出高效率升压型DC-DC转换器
单片机·嵌入式硬件·集成电路·芯片·电源芯片
想搞嵌入式的小白5 小时前
LDO和DC-DC的异同
单片机·嵌入式硬件
EVERSPIN5 小时前
RGB显示驱动MCU单片机—CH643键盘应用方案
单片机·嵌入式硬件·mcu·计算机外设·mcu单片机
edjxj6 小时前
PFC电路学习
单片机·学习
电气_空空7 小时前
基于 Labview/Matlab 的人脸识别系统设计与实现
单片机·嵌入式硬件·毕业设计·labview
西城微科方案开发8 小时前
智能充气泵PCBA充气解决方案
单片机
v先v关v住v获v取8 小时前
轴吸盘机械手关节型机器人设计含+8张CAD图+SW模型+运动仿真+说明书
科技·单片机·51单片机
学嵌入式的小杨同学8 小时前
STM32 进阶封神之路(十一):串口通信底层原理全解析 ——UART/USART 区别 + 电平标准 + 协议规范(面试重点)
stm32·单片机·嵌入式硬件·mcu·硬件架构·硬件工程·智能硬件