getfromcode软考考证 会员免费

韦东山·90天单片机RTOS双架构双系统项目实战班

《韦东山·90天单片机RTOS双架构双系统项目实战班》以项目为导向/按需学习:RTOS涉及软件、硬件,软件又分为移植、驱动、APP等内容。自下向上学习时,以往学完10几个知识点后,还无法做项目,打击积极性。【技能收获】学完可掌握:Linux 运维。课程以实战为导向,覆盖从基础概念到完整项目落地的关键步骤,配套章节笔记便于课后复盘与面试前快速回顾。【学习建议】建议按目录顺序学习,先打基础再进入综合实战章节;每完成 2~3 节可结合笔记整理一份学习小结,最终尝试独立复现一套完整 Demo 写入个人作品集。【就业发展】可面向岗位:相关领域工程师、技术专项人才、项目实战型开发者。系统学习并产出可展示的

单课价¥29.90新品 上架
会员价 会员免费开通会员,全站课程按额度无限下载套餐详情
1 人关注 更新于 2026-09-20 永久有效
发货

网盘链接 · 支付成功后自动发货

保障

永久有效 · 链接失效免费补发

客服

每日 9:00-21:00 在线客服 联系客服

支付成功后自动发货,可在「我的订单」查看网盘链接;链接失效可联系客服免费补链。

正版保障 极速发货 售后无忧

韦东山这套 90 天单片机 RTOS 双架构双系统项目实战班,本质上不是一门"先学完再动手"的课,而是把项目拆成需求再回头补知识点的组织方式。这一点决定了它适合哪类人:已经能点亮 LED、会写简单的裸机 while(1) 轮询,但一到多任务、中断和驱动分层就理不清结构的开发者。如果你连寄存器操作和中断向量表都还没碰过,直接上这套内容会比较吃力。

课程的技术栈与双架构含义

所谓双架构,指的是课程同时覆盖两类 MCU 内核的移植与开发思路,而不是只绑定某一块具体开发板。RTOS 的可移植层、时钟节拍、上下文切换、临界区保护这些机制,在不同内核上的实现方式不一样,对照着看反而更容易理解哪些是 RTOS 的通用抽象、哪些是芯片相关的适配代码。双系统则是指裸机工程与 RTOS 工程两条线并行,先看清裸机下任务调度的局限,再进入 RTOS 的任务、信号量、消息队列、事件组等机制,这样切换的动机是具体的,而不是概念堆砌。

按需学习:软件分层怎么落地

RTOS 项目在软件侧通常分成移植层、驱动层和应用层。课程按这个顺序展开,但每个层次的引入都挂在一个实际功能上,比如串口收发、按键消抖、定时任务。移植层你要处理的是与内核打交道的接口;驱动层关注的是设备如何被上层以统一接口调用,以及中断与任务之间怎么传递数据;应用层才是业务逻辑。这套分层不是纸面上的规范,而是写代码时目录结构和头文件依赖的真实约束。学的时候建议把每一层的接口单独拎出来,想清楚"如果换一块芯片,这一层要不要改",这对后面自己搭工程很关键。

可复用的工程模块

  • 移植适配:时钟节拍配置、上下文切换入口、中断优先级分组,这些是换平台时改动最集中的部分。
  • 驱动封装:GPIO、UART、定时器等外设的统一注册与回调机制,避免应用层直接操作寄存器。
  • 任务间通信:信号量、队列、事件组的使用场景区分,比如何时用队列传数据、何时用事件组做同步。
  • 调试手段:日志输出、断言、栈溢出检测,这些在 RTOS 环境下比裸机更需要提前布好。

这些模块的价值在于可以整块搬到其他项目里,前提是你在学的时候把它们当成独立组件来整理,而不是跟着视频敲一遍就算完。

自学路径与练习方式

建议先跟着课程把裸机部分的功能跑通,确认自己对中断和寄存器操作没有盲区,再进入 RTOS 部分。RTOS 阶段按"移植—驱动—应用"的顺序推进,但每完成一个功能点,试着不看书自己重新写一遍接口调用,尤其是任务创建和通信部分。90 天的节奏里,前段可以慢一点,把移植和驱动的基础打牢,后段做综合项目时才有能力独立排查问题。遇到调不通的地方,优先看任务栈大小、优先级设置和中断与任务的交互顺序,这三处是 RTOS 项目里最常见的坑。

整体来看,这套资料适合拿来对照实践:一边看它怎么分层、怎么组织工程,一边在自己的开发板上复现,逐步把可复用的模块沉淀成自己的工程模板。纯看视频不写代码,收获会非常有限。


以项目为导向/按需学习:RTOS涉及软件、硬件,软件又分为移植、驱动、APP等内容。自下向上学习时,以往学完10几个知识点后,还无法做项目,打击积极性。

课程推荐

《韦东山·90天单片机RTOS双架构双系统项目实战班》以项目为导向/按需学习:RTOS涉及软件、硬件,软件又分为移植、驱动、APP等内容。自下向上学习时,以往学完10几个知识点后,还无法做项目,打击积极性。【技能收获】学完可掌握:Linux 运维。课程以实战为导向,覆盖从基础概念到完整项目落地的关键步骤,配套章节笔记便于课后复盘与面试前快速回顾。【学习建议】建议按目录顺序学习,先打基础再进入综合实战章节;每完成 2~3 节可结合笔记整理一份学习小结,最终尝试独立复现一套完整 Demo 写入个人作品集。【就业发展】可面向岗位:相关领域工程师、技术专项人才、项目实战型开发者。系统学习并产出可展示的项目成果,是技术岗跳槽与晋升的有效路径;完整课程目录有助于制定阶段性学习计划并在简历中体现技术深度。 若你已有一定编程或运维基础,本课程可帮助你在现有技能栈上快速叠加热门方向能力,提升求职时的项目说服力与薪资谈判空间。

视频目录(510 节)

韦东山·90天单片机RTOS双架构双系统项目实战班

*   第29.1讲 FreeRTOS任务调度器开启(上).rmvb

*   第29.2讲 FreeRTOS任务调度器开启(下).rmvb

*   第30.1讲 FreeRTOS任务创建过程详细分析(上).rmvb

*   第30.2讲 FreeRTOS任务创建过程详细分析(下).rmvb

*   第31讲 FreeRTOS任务删除、挂起和恢复过程详解.rmvb

*   第32.1讲 FreeRTOS任务切换(上).rmvb

*   第32.2讲 FreeRTOS任务切换(中).rmvb

*   第32.3讲 FreeRTOS任务切换(下).rmvb

*   第33.1讲 FreeRTOS队列创建函数详解.rmvb

*   第33.2讲 FreeRTOS队列上锁和解锁.rmvb

*   第33.3讲 FreeRTOS入队函数详解.rmvb

*   第33.4讲 FreeRTOS出队函数详解.rmvb

*   第34讲 FreeRTOS信号量详解.rmvb

*   第35讲 FreeRTOS任务通知详解.rmvb

*   第36.1讲 FreeRTOS内存管理(上).rmvb

*   第36.2讲 FreeRTOS内存管理(下).rmvb

*   第10.1讲 Cortex-M中断管理(上).rmvb

*   第10.2讲 Cortex-M中断管理(下).rmvb

*   第11讲 FreeRTOS中断测试试验.rmvb

*   第12.1讲 FreeRTOS列表与列表项简介.rmvb

*   第12.2讲 FreeRTOS列表与列表项实验.rmvb

*   第13.1讲 FreeRTOS任务壮态或信息查询实验.rmvb

*   第13.2讲 FreeRTOS任务运行时间统计实验.rmvb

*   第14讲 FreeRTOS内核控制函数.rmvb

*   第15讲 FreeRTOS临界段代码保护.rmvb

*   第16.1讲 FreeRTOS时间管理(上)-系统延时.rmvb

*   第16.2讲 FreeRTOS时间管理(下)-系统时钟.rmvb

*   第17.1讲 FreeRTOS队列及队列API函数简介.rmvb

*   第17.2讲 FreeRTOS队列操作实验.rmvb

*   第18.1讲 FreeRTOS信号量及二值信号量简介.rmvb

*   第18.2讲 FreeRTOS二值信号量实验.rmvb

*   第19讲 FreeRTOS计数型信号量及实验.rmvb

*   第1讲 RTOS背景知识简介.rmvb

*   第2.1讲 FreeRTOS在STM32F4上的移植(STM32F407).rmvb

*   第2.2讲 FreeRTOS在STM32F4上的移植(STM32F429).rmvb

*   第20讲 FreeRTOS优先级翻转简介及实验.rmvb

*   第21讲 FreeRTOS互斥信号量及实验.rmvb

*   第22.1讲 FreeRTOS软件定时器简介.rmvb

*   第22.2讲 FreeRTOS软件定时器实验.rmvb

*   第23讲 FreeRTOS事件标志组及实验.rmvb

*   第24讲 FreeRTOS任务通知详解.rmvb

*   第25.1讲 FreeRTOS任务通知模拟信号量.rmvb

*   第25.2讲 FreeRTOS任务通知模拟消息邮箱及事件标志组实验.rmvb

*   第26.1讲 FreeRTOS低功耗Tickless模式详解.rmvb

*   第26.2讲 FreeRTOS低功耗Tickless模式实验.rmvb

*   第27讲 FreeRTOS空闲任务及空闲任务钩子函数实验.rmvb

*   第28讲 FreeRTOS内存管理及实验.rmvb

*   第3讲 FreeRTOS在STM32F7上的移植.rmvb

*   第4讲 FreeRTOS在STM32F1上的移植.rmvb

*   第5讲 FreeConfig.h配置文件详解.rmvb

*   第6讲 FreeRTOS任务基础知识.rmvb

*   第7.1 FreeRTOS任务创建和删除函数简介.rmvb

*   第7.2讲 FreeRTOS任务创建和删除实验(动态方法).rmvb

*   第8讲 FreeRTOS任务创建与删除(静态方法).rmvb

*   第9讲 FreeRTOS任务挂起和恢复.rmvb

*   001.1-1-1_资料下载说明(必看).mp4

*   003.1-1-2_资料目录结构_文档阅读器_everything工具(必看).mp4

*   004.1-1-3_项目1功能及学习顺序.mp4

*   005.1-1-4_sourceinsight的使用.mp4

*   006.1-1-5_STM32程序烧写.mp4

*   001.1-2-1_环境搭建与创建空工程.mp4

*   002.1-2-2_C语言基础概述.mp4

*   003.1-2-3_进制转换.mp4

*   004.1-2-4_位运算.mp4

*   005.1-2-5_封装寄存器.mp4

*   006.1-2-6_函数指针.mp4

*   007.1-2-7_链表.mp4

*   008.1-2-8_扩展_变量与指针.mp4

*   009.1-2-9_扩展_CPU与外设.mp4

*   001.1-3-1_创建基础模板.mp4

*   002.1-3-2_LED和按键原理概述.mp4

*   003.1-3-3_完成LED驱动程序.mp4

*   004.1-3-4_完成按键的驱动程序.mp4

*   005.1-3-5_初识OLED.mp4

*   006.1-3-6_I2C协议.mp4

*   007.1-3-7_完成I2C底层驱动.mp4

*   008.1-3-8_SSD1306的I2C数据格式和显存访问.mp4

*   009.1-3-9_完成OLED的底层驱动程序.mp4

*   010.1-3-10_OLED的数据填充与像素显示.mp4

*   011.1-3-11_OLED显示字符的方法.mp4

*   012.1-3-12_显示字符的方法2和字符串显示以及拓展.mp4

*   013.1-3-13_通信概念和实验现象.mp4

*   014.1-3-14_分析原理图和UART收发流程.mp4

*   015.1-3-15_HAL库初始化UART流程.mp4

*   016.1-3-16_printf重定向和命令点灯.mp4

*   017.1-3-17_中断收发.mp4

*   018.1-3-18_环形缓冲区的概念和实现.mp4

*   019.1-3-19_外部中断控制打印输出.mp4

*   022.韦东山C语言基础线上公开课.mp4

*   001.1-4-1_课程安排和学习前的准备工作.mp4

*   002.1-4-2_ESP8266-01S详细介绍.mp4

*   003.1-4-3_什么是AT指令.mp4

*   004.1-4-4_使用AT指令前需要注意的事.mp4

*   005.1-4-5_AT指令的分类和提示信息(1).mp4

*   006.1-4-6_AT指令的分类和提示信息(2).mp4

*   007.1-4-7_基础AT指令概述.mp4

*   008.1-4-8_基础Wi-Fi功能AT指令概述.mp4

*   009.1-4-9_TCP&IP功能AT指令概述.mp4

*   010.1-4-10_AT指令应用示例_单连接 TCP Client.mp4

*   011.1-4-11_AT指令应用示例_UDP 传输_固定远端的 UDP 通信.mp4

*   012.1-4-12_AT指令应用示例_远端可变的 UDP 通信.mp4

*   013.1-4-13_AT指令应用示例_TCP Client 单连接透传.mp4

*   014.1-4-14_AT指令应用示例_UDP透传.mp4

*   015.1-4-15_AT指令应用示例_多连接 TCP Server.mp4

*   001.1-5-1_程序功能及框架设计.mp4

*   002.1-5-2_输入系统_数据结构抽象.mp4

*   003.1-5-3_输入系统_设计思路.mp4

*   004.1-5-4_输入系统_实现环形缓冲区.mp4

*   005.1-5-5_输入子系统_实现按键输入.mp4

*   006.1-5-6_输入子系统_设备管理.mp4

*   007.1-5-7_输入子系统_单元测试.mp4

*   010.1-5-8_设备系统_设计思路.mp4

*   011.1-5-9_设备系统_实现LED设备.mp4

*   012.1-5-10_设备系统_单元测试.mp4

*   014.1-5-11_设备系统_显示设备结构体抽象.mp4

*   015.1-5-12_设备系统_实现显示设备.mp4

*   017.1-5-13_设备系统_显示设备单元测试.mp4

*   018.1-5-14_设备系统_风扇设备源码讲解.mp4

*   019.1-5-15_字体系统_设计思路与结构体.mp4

*   020.1-5-16_字体系统_实现ASCII字库的操作.mp4

*   022.1-5-17_文字显示_设计思路.mp4

*   023.1-5-18_文字显示_编程.mp4

*   024.1-5-19_文字显示_单元测试.mp4

*   026.1-5-20_网络系统_设计思路与结构体.mp4

*   027.1-5-21_网络系统_ESP8266模块编程.mp4

*   028.1-5-22_网络系统_实现AT命令.mp4

*   029.1-5-23_网络系统_串口设备编程.mp4

*   030.1-5-24_网络系统_单元测试.mp4

*   032.1-5-25_网络系统_用作输入设备.mp4

*   033.1-5-26_网络系统_用作输入设备_单元测试.mp4

*   034.1-5-27_业务系统_需求和思路.mp4

*   035.1-5-28_业务系统_编写代码.mp4

*   037.1-5-29_业务系统_测试.mp4

*   001.01_作业_Star Sky.IM.mp4

*   002.02_作业_爱水.mp4

*   003.03_作业风扇_萌新&大海&张三.mp4

*   004.04_作业串口_张三&萌新.mp4

*   005.05_作业key_张三&萌新&麦兜.mp4

*   006.06_作业key_小乖乖的喵星球.mp4

*   007.07_其他作业.mp4

*   001.2-1-1_单片机_RTOS_架构的概念.mp4

*   002.2-1-2_堆的概念.mp4

*   003.2-1-3_栈的概念.mp4

*   005.2-1-4_从官方源码精简出第1个FreeRTOS程序.mp4

*   006.2-1-5_修改官方源码增加串口打印.mp4

*   007.2-1-6_自己的第1个FreeRTOS程序.mp4

*   008.2-1-7_源码结构与编程规范.mp4

*   009.2-1-8_动态_静态创建任务.mp4

*   010.2-1-9_进一步实验.mp4

*   012.2-1-10_任务状态理论讲解.mp4

*   013.2-1-11_任务状态实验.mp4

*   014.2-1-12_vTaskDelay和vTaskDelayUntil.mp4

*   016.2-1-13_空闲任务及其钩子函数.mp4

*   018.2-1-14_任务调度算法.mp4

*   020.4小时中度掌握FreeRTOS(20211030).mp4

*   021.2-1-15_同步互斥与通信概述.mp4

*   022.2-1-16_队列的理论讲解.mp4

*   023.2-1-17_队列的常规使用.mp4

*   025.答疑直播_队列(20211101).mp4

*   027.2-1-18_队列集.mp4

*   028.2-1-19_信号量的理论讲解.mp4

*   029.2-1-20_信号量的常规使用.mp4

*   031.2-1-21_互斥量的理论讲解.mp4

*   033.2-1-22_互斥量的常规使用.mp4

*   034.2-1-23_互斥量的缺陷和递归锁.mp4

*   036.2-1-24_事件组的理论讲解.mp4

*   038.2-1-25_事件组的使用_等待事件.mp4

*   039.2-1-26_事件组的使用_同步点.mp4

*   042.2-1-27_任务通知理论讲解.mp4

*   044.2-1-28_ 任务通知使用_轻量级信号量.mp4

*   045.2-1-29_任务通知使用_轻量级队列.mp4

*   046.2-1-30_任务通知使用_轻量级事件组.mp4

*   048.2-1-31_定时器的理论介绍.mp4

*   049.2-1-32_定时器的一般使用.mp4

*   051.2-1-33_使用定时器消除抖动.mp4

*   052.2-1-34_中断管理.mp4

*   054.2-1-35_资源管理.mp4

*   056.2-1-36_调试.mp4

*   058.2-1-37_统计任务信息的原理.mp4

*   059.2-1-38_编写程序获取统计信息.mp4

*   061.2-1-39_FreeRTOS入门结课总结.mp4

*   062.2-1-40_答疑.mp4

*   001.2-2-1_cubemx创建FreeRTOS的工程模板.mp4

*   002.2-2-2_CMSIS下的RTOS接口介绍.mp4

*   003.2-2-3_STM32CubeMX创建任务.mp4

*   005.2-2-4_STM32CubeMX创建信号量.mp4

*   006.2-2-5_STM32CubeMX创建互斥量.mp4

*   007.2-2-6_STM32CubeMX创建事件.mp4

*   008.2-2-7_STM32CubeMX创建消息队列.mp4

*   009.2-2-8_CMSIS下的任务通知.mp4

*   010.2-2-9_STM32CubeMX创建软件定时器.mp4

*   001.2-3-1_裸机程序的不足.mp4

*   003.2-3-2_程序合并(裸机+FreeRTOS).mp4

*   004.2-3-3_使用FreeRTOS改造的思路.mp4

*   005.2-3-4_把裸机程序转换为FreeRTOS程序.mp4

*   006.2-3-5_把环形缓冲区转换为队列.mp4

*   007.2-3-6_调试队列程序.mp4

*   009.2-3-7_CortexM3_M4中断体系彻底讲解.mp4

*   010.2-3-8_中断体系上机实验.mp4

*   012.2-3-9_FreeRTOS的中断设置.mp4

*   014.2-3-10_DHT11温湿度传感器的使用.mp4

*   015.2-3-11_DHT11程序讲解.mp4

*   017.2-3-12_在多任务系统中使用DHT11.mp4

*   018.2-3-13_使用中断来实现DHT11的读取.mp4

*   019.2-3-14_使用中断来实现DHT11的读取_调试.mp4

*   021.2-3-15_获取sntp服务器的时间.mp4

*   022.2-3-16_智能家居项目增加功能_框架设计.mp4

*   024.2-3-17_复习01_裸机的缺陷与RTOS改造.mp4

*   025.2-3-18_复习02_RTOS创建任务和调度简述.mp4

*   026.2-3-19_复习03_IPC的引入.mp4

*   027.2-3-20_复习04_IPC的第2个好处.mp4

*   028.2-3-21_复习05_IPC内部链表的引入.mp4

*   029.2-3-22_复习06_队列内部机制代码分析.mp4

*   030.2-3-23_复习07_main函数栈的回收.mp4

*   031.2-3-24_复习08_空闲任务与xTaskAbortDelay.mp4

*   032.2-3-25_复习09_任务切换可能发生在任何地方.mp4

*   033.2-3-26_复习10_信号量Semaphore的内部机制.mp4

*   034.2-3-27_复习11_队列集.mp4

*   035.2-3-28_复习12_答疑.mp4

*   036.答疑1_栈的切换.mp4

*   037.答疑2_栈里面保存什么.mp4

*   038.答疑3_栈里面保存的寄存器的顺序.mp4

*   039.答疑4_栈空间大小判断与调试.mp4

*   040.答疑5_进程和线程的概念.mp4

*   041.答疑6_Bootloader等疑问.mp4

*   042.答疑7_堆和栈的问题.mp4

*   001.3-1-1_为什么讲单片机_讲什么内容.mp4

*   002.3-1-2_资料说明与下载.mp4

*   003.3-1-3_处理器的区分MCU_MPU_AP.mp4

*   004.3-1-4_嵌入式系统硬件组成.mp4

*   007.3-1-5_硬件知识_LED原理图.mp4

*   008.3-1-6_GPIO引脚操作方法概述.mp4

*   009.3-1-7_STM32F103的GPIO操作方法.mp4

*   010.3-1-8_STM32F103的LED编程.mp4

*   011.3-1-9_地址空间_RISC与CISC.mp4

*   012.3-1-10_ARM内部寄存器.mp4

*   013.3-1-11_ARM汇编.mp4

*   014.3-1-12_ARM汇编模拟器VisUAL.mp4

*   015.3-1-13_内存访问指令.mp4

*   016.3-1-14_数据处理指令.mp4

*   017.3-1-15_跳转指令.mp4

*   019.3-1-16 编程知识_进制.mp4

*   020.3-1-17 编程知识_字节序_位操作.mp4

*   021.3-1-18_编程知识_汇编_反汇编_机器码_基于STM32F103开发板.mp4

*   022.3-1-19_编程知识_C与汇编深入分析_基于STM32F103开发板.mp4

*   023.3-1-20_纯汇编点灯_基于STM32F103开发板.mp4

*   025.3-1-21_使用按键控制LED_基于STM32F103开发板.mp4

*   026.3-1-22_硬件知识_UART硬件介绍.mp4

*   027.3-1-23_STM32F103_UART操作.mp4

*   028.3-1-24_STM32F103_UART编程.mp4

*   030.3-1-25_KEIL_IDE背后的命令.mp4

*   031.3-1-26_准备工作_安装windows-gcc工具_CodeBlocks.mp4

*   032.3-1-27 gcc编译过程详解.mp4

*   033.3-1-28 Makefile的引入及规则.mp4

*   034.3-1-29 Makefile的语法.mp4

*   035.3-1-30 Makefile函数.mp4

*   036.3-1-31 Makefile实例.mp4

*   037.3-1-32_改造裸机程序的Makefile.mp4

*   038.3-1-33_段的概念_重定位的引入_基于STM32F103开发板.mp4

*   039.3-1-34 重定位要做的事情.mp4

*   040.3-1-35 散列文件使用与分析.mp4

*   041.3-1-36 清除BSS段(ZI段).mp4

*   042.3-1-37 代码段重定位.mp4

*   043.3-1-38 重定位的纯C函数实现.mp4

*   047.3-1-39_异常与中断的概念引入与处理流程.mp4

*   048.3-1-40_ARM架构中异常与中断的处理.mp4

*   049.3-1-41_异常处理深入分析_保存现场.mp4

*   050.3-1-42_实战_未定义指令异常(STM32F103).mp4

*   051.3-1-43_实战_SVC异常(STM32F103).mp4

*   052.3-1-44_实战_SysTick异常(STM32F103).mp4

*   053.3-1-45_中断的硬件框架.mp4

*   055.3-1-46_实战_GPIO中断编程_基于STM32F103开发板.mp4

*   057.3-1-47_STM32CubeMX生成GCC工程.mp4

*   058.复习01_ARM架构与汇编回顾.mp4

*   059.复习02_中断处理过程.mp4

*   060.复习03_段和重定位.mp4

*   061.复习04_答疑.mp4

*   062.3-1-48_CPU模式和状态以及访问等级.mp4

*   063.3-1-49_提升访问等级.mp4

*   065.3-1-50_MSP和PSP.mp4

*   001.3-2-1_裸机程序框架和缺陷.mp4

*   002.3-2-2_RTOS的引入和概念.mp4

*   003.3-2-3_ARM架构简明教程_6条汇编指令.mp4

*   004.3-2-4_分析C函数的汇编码理解程序本质.mp4

*   005.3-2-5_ARM架构过程调用标准AAPCS.mp4

*   006.3-2-6_中断处理时现场的保存和恢复.mp4

*   008.3-2-7_任务切换的实质_栈.mp4

*   010.自己写RTOS_答疑01.mp4

*   011.3-2-8_编程1_创建任务_伪造现场.mp4

*   012.自己写RTOS_答疑02.mp4

*   013.3-2-9_编程2_启动任务.mp4

*   014.3-2-10_中断返回的特殊处理.mp4

*   015.3-2-11_编程2_完善启动任务.mp4

*   016.自己写RTOS_答疑03.mp4

*   017.3-2-12_编程3_切换任务.mp4

*   018.3-2-13_任务切换的代码总体讲解.mp4

*   019.3-2-14_RTOS的更多特性.mp4

*   020.自己写RTOS_答疑04.mp4

*   021.3-2-15_RTOS代码复盘.mp4

*   022.3-2-16_创建任务时栈的设置.mp4

*   023.3-2-17_启动第1个任务时寄存器和栈的变化.mp4

*   024.3-2-18_任务切换时寄存器和栈的变化.mp4

*   025.自己写RTOS_答疑05.mp4

*   001.4-1_普通的链表操作.mp4

*   002.4-2_普通链表的创建和添加操作.mp4

*   003.4-3_普通链表的删除操作.mp4

*   004.4-4_普通链表的排序.mp4

*   006.4-5_作业与引子.mp4

*   007.4-6_普通链表的改进.mp4

*   008.4-7_通用链表.mp4

*   009.4-8_通用链表的三种实现方式.mp4

*   012.4-9_双向链表.mp4

*   014.4-10_FreeRTOS的链表代码分析.mp4

*   017.4-12_heap_2操作原理.mp4

*   018.4-13_heap_2源码分析.mp4

*   019.4-14_heap_4源码分析.mp4

*   020.4-15_heap_5源码分析.mp4

*   022.4-16_任务函数源码分析_创建任务_伪造现场.mp4

*   023.4-17_任务函数源码分析_创建任务_链表操作.mp4

*   025.4-18_任务函数源码分析_启动第1个任务.mp4

*   026.4-19_任务函数源码分析_任务切换.mp4

*   028.4-20_任务函数源码分析_暂停和恢复.mp4

*   029.4-21_任务函数源码分析_阻塞和唤醒.mp4

*   031.4-22_临界区进出函数源码分析_关闭中断.mp4

*   032.4-23_临界区进出函数源码分析_关闭调度器.mp4

*   034.4-24_通用队列是核心.mp4

*   035.4-25_队列源码分析.mp4

*   036.4-26_队列集源码分析.mp4

*   038.4-27_信号量和互斥量源码分析.mp4

*   040.4-28_事件组源码分析_概述.mp4

*   041.4-29_事件组源码分析_情景分析1.mp4

*   042.4-30_事件组源码分析_情景分析2.mp4

*   044.4-31_任务通知源码分析.mp4

*   046.20220506_FreeRTOS复习1_RTOS引入.mp4

*   047.20220506_FreeRTOS复习2_答疑.mp4

*   048.20220506_FreeRTOS复习3_调度.mp4

*   049.20220506_FreeRTOS复习4_全局变量读写问题.mp4

*   050.20220506_FreeRTOS复习5_答疑.mp4

*   001.RT-Thread快速入门内部直播课1.mp4

*   002.5-1-1_RTOS的引入.mp4

*   003.5-1-2_几条汇编指令.mp4

*   004.5-1-3_线程切换过程示例.mp4

*   005.5-1-4_多线程与裸机编程的不同.mp4

*   006.RTT-Nano答疑01.mp4

*   007.5-1-5_粗略测量线程切换时间.mp4

*   008.5-1-6_FreeRTOS和RT-Thread启动流程对比.mp4

*   009.5-1-7_非入门知识_栈回溯示例.mp4

*   010.5-1-8_非入门知识_栈回溯原理.mp4

*   011.5-1-9_怎么确定栈的大小.mp4

*   012.5-1-10_栈大小的精确计算.mp4

*   013.5-1-11_调度示例及状态转换图.mp4

*   014.RTT-Nano答疑02.mp4

*   015.5-1-12_消息队列的引入.mp4

*   016.5-1-13_消息队列的函数.mp4

*   017.5-1-14_RTT消息队列相比于FreeRTOS的优点.mp4

*   018.5-1-15_消息队列示例代码.mp4

*   019.RTT-Nano答疑03.mp4

*   020.5-1-16_邮箱内部实现与操作.mp4

*   021.5-1-17_信号量接口函数.mp4

*   022.5-1-18_信号量示例.mp4

*   023.5-1-19_信号的引入与Linux体验.mp4

*   024.5-1-20_应用程序获取数据的4种方式.mp4

*   025.5-1-21_使用信号的程序示例.mp4

*   026.RTT-Nano答疑05_信号答疑.mp4

*   027.5-1-22_互斥量跟信号量的三点不同.mp4

*   028.5-1-23_互斥量优先级继承示例.mp4

*   029.5-1-24_事件集的引入.mp4

*   030.5-1-25_事件集示例.mp4

*   031.5-1-26_RT-Thread和FreeRTOS的事件集差别.mp4

*   032.RTT-Nano答疑04_锁的答疑.mp4

*   001.5-2-1_RT-Thread Studio配置使用说明.mp4

*   002.5-2-2_RT-Thread Studio配置实现温湿度上云.mp4

*   001.5-3-1_驱动程序模型的引入.mp4

*   002.RTT驱动答疑01_框架与具体硬件操作.mp4

*   003.5-3-2_编写Hello驱动程序.mp4

*   004.RTT驱动答疑02_段属性.mp4

*   005.5-3-3_使用RTT-Studio编译驱动.mp4

*   006.5-3-4_调试Hello驱动程序.mp4

*   007.5-3-5_内部实现_链表简述.mp4

*   009.5-3-6_C语言的继承.mp4

*   010.5-3-7_驱动程序回顾与问题引入(怎么限定接口).mp4

*   011.5-3-8_优化Hello驱动程序_分层设计_限定接口.mp4

*   012.5-3-9_分层的Hello驱动程序(方法1)_编写.mp4

*   013.5-3-10_分层的Hello驱动程序(方法1)_上机.mp4

*   014.5-3-11_分层的Hello驱动程序(方法2)_编写.mp4

*   015.5-3-12_分层的Hello驱动程序(方法2)_上机.mp4

*   016.5-3-13_总结设备驱动程序的框架.mp4

*   017.5-3-14_GPIO驱动程序框架.mp4

*   018.RTT驱动答疑03_答疑.mp4

*   019.5-3-15_GPIO驱动程序代码分析.mp4

*   020.5-3-16_使用pin驱动来操作LED.mp4

*   022.选商品 RTT驱动答疑04_答疑_怎么调用shell命令.mp4

*   023.5-3-17_扩展知识_Linux输入系统.mp4

*   024.5-3-18_MultiButton原理.mp4

*   025.5-3-19_MultiButton源码框架.mp4

*   026.5-3-20_使用MultiButton_编写框架代码.mp4

*   027.5-3-21_使用MultiButton_完善代码.mp4

*   028.5-3-22_使用MultiButton_上机.mp4

*   029.5-3-23_使用MultiButton_情景分析.mp4

*   030.5-3-24_Touch驱动程序框架.mp4

*   031.5-3-25_Touch驱动程序情景分析.mp4

*   033.5-3-26_UART驱动程序框架.mp4

*   034.5-3-27_UART驱动程序读写情景分析.mp4

*   035.5-3-28_控制台和UART.mp4

*   036.5-3-29_I2C协议.mp4

*   037.5-3-30_I2C设备的2种访问方法.mp4

*   038.5-3-31_I2C控制器驱动程序的层次.mp4

*   039.5-3-32_I2C控制器驱动注册过程情景分析.mp4

*   040.5-3-33_I2C设备的第1种访问方法_APP通过控制器驱动来访问.mp4

*   041.5-3-34_I2C设备的第2种访问方法_APP通过设备驱动来访问.mp4

*   043.RTT驱动答疑05_I2C驱动答疑.mp4

*   044.5-3-35_SPI协议.mp4

*   045.5-3-36_SPI主从设备的结构体与联系.mp4

*   046.5-3-37_SPI控制器驱动程序注册过程情景分析.mp4

*   047.5-3-38_APP直接通过SPI控制器访问SPI设备不可行.mp4

*   048.5-3-39_注册SPI从设备.mp4

*   049.5-3-40_怎么编写自己的SPI设备驱动程序.mp4

*   051.5-3-41_基本概念_挂载点_设备_文件系统.mp4

*   052.RTT驱动答疑06_挂载.mp4

*   053.5-3-42_devfs情景分析_挂载.mp4

*   054.RTT驱动答疑07_跟裸机文件系统的差别.mp4

*   055.5-3-43_devfs情景分析_open.mp4

*   056.5-3-44_devfs情景分析_read.mp4

*   057.5-3-45_devfs情景分析_总结.mp4

*   058.5-3-46_ELM(FAT)情景分析_挂载.mp4

*   059.5-3-47_ELM(FAT)情景分析_open.mp4

*   060.5-3-48_ELM(FAT)情景分析_read.mp4

*   062.5-3-49_怎么写块设备驱动程序.mp4

*   064.5-3-50_使用内存模拟块设备_编程.mp4

*   065.5-3-51_使用内存模拟块设备_编译调试.mp4

*   066.5-3-52_使用内存模拟块设备_太小了无法使用ELMFAT.mp4

*   067.5-3-53_使用内存模拟块设备_挂载失败.mp4

*   068.5-3-54_使用自带Flash作为块设备_编程.mp4

*   069.5-3-55_使用自带Flash作为块设备_编译.mp4

*   070.5-3-56_使用自带Flash作为块设备_上机发现新问题.mp4

*   071.5-3-57_使用自带Flash作为块设备_可以格式化mount无法写文件.mp4

*   072.5-3-58_使用自带Flash作为块设备_调试.mp4

*   074.总结1_驱动程序的引入.mp4

*   075.总结2_最简单的LED驱动程序.mp4

*   076.总结3_怎么统一接口.mp4

*   077.总结4_PIN驱动简单分析.mp4

*   078.总结5_I2C驱动简单分析.mp4

*   079.总结6_块设备驱动程序.mp4

*   080.总结7_挂载点.mp4

*   081.总结8_挂载点_文件系统_块设备三者关系.mp4

*   082.总结9_ELM文件系统和flash驱动程序.mp4

*   083.总结10_devfs文件系统.mp4

*   001.5-4-1_KEIL_IDE背后的命令.mp4

*   002.5-4-2_准备工作_安装windows-gcc工具_CodeBlocks.mp4

*   003.5-4-3_gcc编译过程详解.mp4

*   004.5-4-4_Makefile的引入及规则.mp4

*   005.5-4-5_Makefile的语法.mp4

*   006.5-4-6_Makefile函数.mp4

*   007.5-4-7_Makefile实例.mp4

*   001.6-1-1_下载体验最新源码.mp4

*   002.6-1-2_调用函数的方法.mp4

*   003.6-1-3_RT-Thread启动流程.mp4

*   004.6-1-4_C语言的继承与object.mp4

*   005.6-1-5_RT-Thread的链表操作.mp4

*   006.6-1-6.1_三种堆的实现概述.mp4

*   007.6-1-6.2A_小内存管理算法mem初始化.mp4

*   008.6-1-6.2B_小内存管理算法mem分配.mp4

*   009.6-1-6.2C_小内存管理算法mem释放.mp4

*   010.6-1-6.3_多个堆的管理算法memheap.mp4

*   011.6-1-6.4A_大内存管理算法slab_形象类比与初始化.mp4

*   012.6-1-6.4B_大内存管理算法slab_大内存申请与释放.mp4

*   013.6-1-6.4C_大内存管理算法slab_常规内存分配与释放.mp4

*   014.6-7-1_线程的创建.mp4

*   015.6-7-2A_启动第1个线程_理论介绍.mp4

*   016.6-7-2B_启动第1个线程_代码分析.mp4

*   017.6-7-3_线程的切换.mp4

*   018.6-7-4_线程的挂起和恢复.mp4

*   019.6-8-1_定时器原理及调用过程.mp4

*   020.6-8-2_定时器插入操作(跳表)_原理.mp4

*   021.6-8-3_定时器插入操作(跳表)_代码分析.mp4

*   022.6-8-4_判断超时的方法.mp4

*   023.6-9-1_消息队列原理.mp4

*   024.6-9-2_消息队列代码分析.mp4

*   025.6-10_邮箱代码分析.mp4

*   026.6-11-1_信号的机制.mp4

*   027.6-11-2_信号代码分析_初始化与发送.mp4

*   028.6-11-3_信号代码分析_处理.mp4

*   029.6-11-4_信号代码分析_Bug演示.mp4

*   030.6-11-5_信号代码分析_Bug分析与解决.mp4

*   031.6-12_信号量代码分析.mp4

*   032.6-13_互斥量代码分析.mp4

*   033.6-14-1_事件组代码分析.mp4

*   034.6-14-2_事件组Bug分析与解决.mp4

*   001.1-1_课程介绍与资料下载.mp4

*   002.1-2_课前准备.mp4

*   003.2-1_处理器的区分MCU_MPU_AP.mp4

*   004.2-2_硬件结构与启动流程.mp4

*   005.2-3_答疑.mp4

*   006.3-1_点灯程序.mp4

*   007.3-2_编写Makefile.mp4

*   008.3-3_上机调试.mp4

*   009.3-4_答疑.mp4

*   010.3-5_mksunxi分析.mp4

*   011.4.1_内部寄存器.mp4

*   012.4.2_第1个程序涉及的汇编指令介绍.mp4

*   013.4.3_第1个程序的delay函数反汇编分析.mp4

*   014.4.4_第1个程序的main函数反汇编分析.mp4

*   015.05.1_栈的作用_局部变量和越界访问.mp4

*   016.05.2_栈的作用_寄存器的保存.mp4

*   017.05.3_答疑.mp4

*   018.05.4_增加串口打印.mp4

*   019.05.5_BROM勘误与相对地址绝对地址.mp4

*   020.05.6_使用相对地址访问全局变量.mp4

*   021.05.7_无初始值的全局变量的实验.mp4

*   022.05.8_引入段的概念.mp4

配套笔记(5 份 PDF)

8. FreeRTOS源码详解与应用开发全部资料 / FreeRTOS开发手册(书籍对应的电子版,排版有出入)

*   STM32F103 FreeRTOS开发手册V1.1【更多资源

*   STM32F407 FreeRTOS开发手册V1.1【更多资源

*   STM32F429 FreeRTOS开发手册V1.2【更多资源

*   STM32F767 FreeRTOS开发手册V1.1【更多资源

韦东山-90天RTOS双架构双系统项目实战班 / 【项目1】01__基于HAL库实现智能家居_课前必看

*   _STM32F103的程序烧写与过程中的常见问题【更多资源