简介
课程说明:
1、学习嵌入式操作系统实现原理,必须在一种MCU的体系结构上讲解。需要学习基本的汇编指令。
2、该课程主要以Cotext-M系列MCU讲解。也可以更换为以ARM的系统结构上讲解。如果客户使用的处理器是ARM系列MCU,第1部分和第2部分可以替换为:
《第1部分 ARM体系结构与汇编指令》
《第2部分 嵌入式操作系统原理--基于ARM和uCOS》
课程时长
2天(12H)
分享提纲
第1部分 Cotext-M体系结构与汇编指令 | 第1章 Cotext-M体系结构 | 1 Cotext-M3寄存器 2 Cotext-M3的异常中断 3 Cotext-M3的异常中断向量表 4 Cotext-M3对异常中断的响应过程 |
第2章 汇编指令与伪汇编 | 1 汇编指令集结构 2 汇编指令集 3 常用指令英文全称 4 常用伪汇编指令 | |
第2部分 嵌入式操作系统原理--基于Cotext-M和uCOS | 第1章 操作系统实现原理 | 1 前后台系统的缺点 2 操作系统对前后台缺点的弥补 3 操作系统的实现原理 4 uC/OS操作系统线程实现代码 |
第2章 uCOS任务互斥与同步 | 1 共享资源互斥 2 死锁问题 3 任务间通信问题 4 任务优先级分配 5 uCOS优先级反转问题 | |
第3章 uCOS时钟节拍与内存管理 | 1 uC/OS时钟节拍 2 uC/OS内存管理 | |
第4章 操作系统比较 | 1 主流操作系统比较 2 3款RTOS优缺点比较――uC/OS、VxWork、FreeRTOS 3 各操作系统的建议使用领域 | |
第3部分 嵌入式RTOS底层硬件驱动开发 | 第1章 模块化设计思想与分层设计思想 | 1 模块化设计的目的 2 模块化程序设计方法 2.1什么是模块? 2.2什么是好模块? 2.3最少知道原则 2.4模块接口设计 2.5“C语言”模块怎么组包 3破除循环依赖 3.1次晨综合症 3.2分层设计思想 |
第2章 底层硬件API封装模板 | 该单元主要介绍硬件封装的代码架构模板,该模板的目的是提高底层硬件代码的可维护性。 1 模板结构 1.1 设备硬件结构体类型定义 1.2 设备结构体配置 1.3 设备个数宏定义 1.4 设备实现需要的全局变量 1.5 设备功能实现代码 2 中断处理的封装:回调函数 3 硬件复用设备对上层的不可见封装 4 硬件耦合设备对上层的不可见封装 5 模板的分类 | |
第3章 底层硬件驱动实例 | 1 带缓存的串口驱动开发 2 回调函数实现定时器TIMER | |
第4部分 嵌入式RTOS运用层开发 | 第1章 功能规划与线程设计 | 1 从互不干扰的角度规划独立功能 1.1 常见的嵌入式设备功能 1.2 相对独立的功能 2 根据功能规划设计线程 2.1线程规划 2.2线程优先级分配 2.3避免线程饿死 |
第2章 线程之间通信 | 1 全局变量 2 信号量 3 邮箱 4 消息队列 | |
第3章 运用层实例 | 1 串口协议解析线程 2 按键和显示线程 | |
第5部分 RTOS运用层代码实现在PC上自动化测试 | 第1章 PC模拟底层硬件 | 1 PC版与真实硬件环境的不同 2 PC版测试接口 3 PC版模拟中断接口 4 PC版线程互斥处理 |
第2章 PC上模拟运行RTOS和业务层 | 1 uCOS在PC上移植 2 业务层在PC上移植 | |
第3章 自动化测试 | 1 自动化测试原理 2 自动化测试用例流程 3 自动化测试用例文档 4 自动化测试用例代码 PS:项目实践自动化测试后的效果 | |
第6部分 自动化测试工具 | 第1章 自动化测试工具 | 简单介绍测试断言工具gTest、测试打桩工具mockcpp等测试工具的使用。 详细介绍自动化测试运行工具CruiseControl的安装和配置方法。 1 自动化测试工具gTest 1.1gTest的断言 1.2gTest的测试结果文件 2 打桩工具mockcpp 3 持续集成工具CruiseControl 3.1 什么是持续集成 3.2 CruiseControl的工作原理 3.3CruiseControl的配置脚本 |
YL·Zhang
百林哲咨询(北京)有限公司专家团队成员
YL·Zhang
百林哲咨询(北京)有限公司专家团队成员
YL·Zhang
百林哲咨询(北京)有限公司专家团队成员
YL·Zhang
百林哲咨询(北京)有限公司专家团队成员
YL·Zhang
百林哲咨询(北京)有限公司专家团队成员