工程师
其他
推荐课程
average > 0 ? $model->average . '分' : '10.0分' ?>

嵌入式操作系统原理与开发-基于uCOS

zil

科陆公司 首席架构师

曾在华为和科陆公司担任多年敏捷教练和架构师
拥有国家“系统架构设计师(高级)”和“系统分析师(高级)”两项职业资格认证。
具有多年嵌入式软件开发、设计和管理经验,曾在华为和科陆公司担任高级软件工程师、系统工程师、敏捷教练、CMMI设计组组长、事业部首席软件架构师等职务。主要擅长敏捷实践在各领域的应用,包括代码持续优化与重构,嵌入式C语言架构设计与自动化测试,C#、java语言架构设计与自动化测试。精通嵌入式操作系统uCOS在多个平台的移植与运用开发。授课经验丰富,曾为沈阳飞利浦、南京西门子、武汉烽火等知名企业,开展过架构设计相关的内训课程。

曾在华为和科陆公司担任多年敏捷教练和架构师 拥有国家“系统架构设计师(高级)”和“系统分析师(高级)”两项职业资格认证。 具有多年嵌入式软件开发、设计和管理经验,曾在华为和科陆公司担任高级软件工程师、系统工程师、敏捷教练、CMMI设计组组长、事业部首席软件架构师等职务。主要擅长敏捷实践在各领域的应用,包括代码持续优化与重构,嵌入式C语言架构设计与自动化测试,C#、java语言架构设计与自动化测试。精通嵌入式操作系统uCOS在多个平台的移植与运用开发。授课经验丰富,曾为沈阳飞利浦、南京西门子、武汉烽火等知名企业,开展过架构设计相关的内训课程。

课程费用

5800.00 /人

课程时长

2

成为教练

课程简介

该课程主要以Cotext-M系列MCU讲解。也可以更换为以ARM的系统结构上讲解。如果客户使用的处理器是ARM系列MCU,第1部分和第2部分可以替换为:
《第1部分 ARM体系结构与汇编指令》
《第2部分 嵌入式操作系统原理--基于ARM和uCOS》

目标收益

培训对象

课程大纲

第1部分Cotext-M体系结构与汇编指令 第1章Cotext-M体系结构
1、Cotext-M3寄存器
2、Cotext-M3的异常中断
3、Cotext-M3的异常中断向量表
Cotext-M3对异常中断的响应过程
第2章汇编指令与伪汇编
1、汇编指令集结构
2、汇编指令集
3、常用指令英文全称
常用伪汇编指令
第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、模块化程序设计方法
(1)什么是模块?
(2)什么是好模块?
(3)最少知道原则
(4)模块接口设计
(5)“C语言”模块怎么组包
3、破除循环依赖
(1)次晨综合症
(2)分层设计思想
第2章底层硬件API封装模板
该单元主要介绍硬件封装的代码架构模板,该模板的目的是提高底层硬件代码的可维护性。

1、模板结构
(1)设备硬件结构体类型定义
(2)设备结构体配置
(3)设备个数宏定义
(4)设备实现需要的全局变量
(5)设备功能实现代码
2、中断处理的封装:回调函数
3、硬件复用设备对上层的不可见封装
4、硬件耦合设备对上层的不可见封装
5、模板的分类
第3章底层硬件驱动实例
1、带缓存的串口驱动开发
2、回调函数实现定时器TIMER
第4部分嵌入式RTOS运用层开发 第1章功能规划与线程
1、从互不干扰的角度规划独立功能
(1)常见的嵌入式设备功能
(2)相对独立的功能
2、根据功能规划设计线程
(1)线程规划
(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)gTest的断言
(2)gTest的测试结果文件
2、打桩工具mockcpp
3、持续集成工具CruiseControl
(1)什么是持续集成
(2)CruiseControl的工作原理
(3)CruiseControl的配置脚本
第1部分Cotext-M体系结构与汇编指令
第1章Cotext-M体系结构
1、Cotext-M3寄存器
2、Cotext-M3的异常中断
3、Cotext-M3的异常中断向量表
Cotext-M3对异常中断的响应过程
第2章汇编指令与伪汇编
1、汇编指令集结构
2、汇编指令集
3、常用指令英文全称
常用伪汇编指令
第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、模块化程序设计方法
(1)什么是模块?
(2)什么是好模块?
(3)最少知道原则
(4)模块接口设计
(5)“C语言”模块怎么组包
3、破除循环依赖
(1)次晨综合症
(2)分层设计思想
第2章底层硬件API封装模板
该单元主要介绍硬件封装的代码架构模板,该模板的目的是提高底层硬件代码的可维护性。

1、模板结构
(1)设备硬件结构体类型定义
(2)设备结构体配置
(3)设备个数宏定义
(4)设备实现需要的全局变量
(5)设备功能实现代码
2、中断处理的封装:回调函数
3、硬件复用设备对上层的不可见封装
4、硬件耦合设备对上层的不可见封装
5、模板的分类
第3章底层硬件驱动实例
1、带缓存的串口驱动开发
2、回调函数实现定时器TIMER
第4部分嵌入式RTOS运用层开发
第1章功能规划与线程
1、从互不干扰的角度规划独立功能
(1)常见的嵌入式设备功能
(2)相对独立的功能
2、根据功能规划设计线程
(1)线程规划
(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)gTest的断言
(2)gTest的测试结果文件
2、打桩工具mockcpp
3、持续集成工具CruiseControl
(1)什么是持续集成
(2)CruiseControl的工作原理
(3)CruiseControl的配置脚本
提交需求