μC/OS-III内核实现与应用开发实战指南:基于STM32

μC/OS-III内核实现与应用开发实战指南:基于STM32
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: ,
2019-07
版次: 1
ISBN: 9787111628248
定价: 129.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 502页
31人买过
  •   《μC/OS-III内核实现与应用开发实战指南:基于STM32》基于野火STM32全系列开发板介绍μC/OS-III内核实现与应用开发,《μC/OS-III内核实现与应用开发实战指南:基于STM32》分为两部分:第一部分先教你如何从0到1把μC/OS-III内核写出来,从底层的汇编开始讲解任务如何定义、如何切换,还讲解了阻塞延时如何实现、如何支持多优先级、如何实现时基列表以及时间片等μC/OS的核心知识点;第二部分讲解μC/OS-III内核组件的应用以及使用μC/OS-III进行多任务编程。
      《μC/OS-III内核实现与应用开发实战指南:基于STM32》内容翔实,案例丰富,配有大量示例代码,适合作为嵌入式领域科技工作者的参考书,也适合相关专业的学生学习参考。   刘火良,野火电子创始人,嵌入式软件工程师,长期从事STM32软硬件开发,网络教程《零死角玩转STM32》的作者,《STM32库开发实战指南》的合著者。
      
      杨森,野火电子合伙人,嵌入式软件工程师,专注于STM32和周边软件开发。合著有《STM32库开发实战指南》,已累计印刷十余次,广受STM32开发者的喜爱。 前言 

    引言 

    第一部分 从0到1教你写 

    C/OS内核 

    第1章 新建工程—软件仿真2 

    11 新建本地工程文件夹2 

    12 使用KEIL新建工程2 

    121 New Project2 

    122 Select Device For Target3 

    123 Manage Run-Time Environment3 

    13 在KEIL工程中新建文件组4 

    14 在KEIL工程中添加文件4 

    15 调试配置6 

    151 设置软件仿真6 

    152 修改时钟大小6 

    153 添加头文件路径7 

    第2章 裸机系统与多任务系统8 

    21 裸机系统8 

    211 轮询系统8 

    212 前后台系统9 

    22 多任务系统10 

    第3章 任务的定义与任务切换13 

    31 多任务系统中任务的概念14 

    32 创建任务15 

    321 定义任务栈15 

    322 定义任务函数16 

    323 定义任务控制块17 

    324 实现任务创建函数18 

    33 操作系统初始化22 

    34 启动系统24 

    35 任务切换27 

    36 main()函数33 

    37 实验现象37 

    第4章 任务时间片运行39 

    41 SysTick简介39 

    42 初始化SysTick40 

    43 编写SysTick中断服务函数41 

    44 main()函数42 

    45 实验现象44 

    第5章 空闲任务与阻塞延时45 

    51 实现空闲任务45 

    511 定义空闲任务栈45 

    512 定义空闲任务的任务控制块46 

    513 定义空闲任务函数47 

    514 空闲任务初始化47 

    52 实现阻塞延时48 

    53 main()函数50 

    54 实验现象52 

    第6章 时间戳53 

    61 时间戳简介53 

    62 时间戳的实现53 

    63 时间戳代码54 

    631 CPU_Init()函数54 

    632 CPU_TS_Init()函数55 

    633 CPU_TS_TmrInit()函数56 

    634 BSP_CPU_ClkFreq()函数57 

    635 CPU_TS_TmrFreqSet()函数58 

    636 CPU_TS_TmrRd()函数58 

    637 OS_TS_GET()函数59 

    64 main()函数59 

    65 实验现象61 

    第7章 临界段62 

    71 临界段简介62 

    72 Cortex-M内核快速关中断指令62 

    73 关中断63 

    74 开中断63 

    75 临界段代码的应用64 

    76 测量关中断时间68 

    761 测量关中断时间初始化68 

    762 测量最大关中断时间69 

    763 获取最大关中断时间70 

    77 main()函数71 

    78 实验现象71 

    第8章 就绪列表72 

    81 优先级表的定义及函数72 

    82 就绪列表的定义及函数80 

    83 main()函数88 

    84 实验现象88 

    第9章 多优先级89 

    91 定义优先级相关全局变量89 

    92 修改OSInit()函数89 

    93 修改任务控制块90 

    94 修改OSTaskCreate()函数90 

    95 修改OS_IdleTaskInit()函数92 

    96 修改OSStart()函数93 

    97 修改PendSV_Handler()函数93 

    98 修改OSTimeDly()函数94 

    99 修改OSSched()函数95 

    910 修改OSTimeTick()函数97 

    911 main()函数98 

    912 实验现象101 

    第10章 时基列表103 

    101 实现时基列表103 

    1011 定义时基列表变量103 

    1012 修改任务控制块104 

    1013 实现时基列表相关函数106 

    102 修改OSTimeDly()函数113 

    103 修改OSTimeTick()函数114 

    104 main()函数114 

    105 实验现象114 

    第11章 时间片115 

    111 实现时间片115 

    1111 修改任务控制块115 

    1112 实现时间片调度函数116 

    112 修改OSTimeTick()函数118 

    113 修改OSTaskCreate()函数118 

    114 修改OS_IdleTaskInit()函数120 

    115 main()函数120 

    116 实验现象122 

    第12章 任务的挂起和恢复124 

    121 实现任务的挂起和恢复124 

    1211 定义任务的状态124 

    1212 修改任务控制块125 

    1213 编写任务挂起和恢复函数126 

    122 main()函数131 

    123 实验现象133 

    第13章 任务的删除134 

    131 实现任务删除134 

    132 main()函数136 

    133 实验现象136 

    第二部分 C/OS-III内核 

    应用开发 

    第14章 移植C/OS-III到STM32138 

    141 获取STM32的裸机工程模板138 

    142 下载C/OS-III源码138 

    143 C/OS-III源码文件介绍141 

    1431 EvalBoards141 

    1432 C-CPU141 

    1433 C-LIB143 

    1434 C/OS-III143 

    144 移植到STM32工程145 

    1441 在工程中添加文件分组145 

    1442 添加文件到对应分组145 

    1443 添加头文件路径到工程中146 

    1444 具体的工程文件修改147 

    1445 修改源码中的bspc与bsph文件149 

    145 按需配置最适合的工程151 

    1451 os_cfgh151 

    1452 cpu_cfgh153 

    1453 os_cfg_apph154 

    146 修改appc155 

    147 下载验证157 

    第15章 创建任务158 

    151 硬件初始化158 

    152 创建单任务160 

    1521 定义任务栈160 

    1522 定义任务控制块160 

    1523 定义任务主体函数160 

    1524 创建任务161 

    1525 启动任务163 

    1526 appc163 

    153 下载验证单任务166 

    154 创建多任务166 

    155 下载验证多任务171 

    第16章 C/OS-III的启动流程172 

    161 “万事俱备,只欠东风”法172 

    162 “小心翼翼,十分谨慎”法173 

    163 两种方法的适用情况175 

    164 系统的启动175 

    1641 系统初始化175 

    1642 CPU初始化179 

    1643 SysTick初始化182 

    1644 内存初始化183 

    1645 OSStart()函数183 

    1646 appc184 

    第17章 任务管理187 

    171 任务的基本概念187 

    172 任务调度器的基本概念188 

    173
  • 内容简介:
      《μC/OS-III内核实现与应用开发实战指南:基于STM32》基于野火STM32全系列开发板介绍μC/OS-III内核实现与应用开发,《μC/OS-III内核实现与应用开发实战指南:基于STM32》分为两部分:第一部分先教你如何从0到1把μC/OS-III内核写出来,从底层的汇编开始讲解任务如何定义、如何切换,还讲解了阻塞延时如何实现、如何支持多优先级、如何实现时基列表以及时间片等μC/OS的核心知识点;第二部分讲解μC/OS-III内核组件的应用以及使用μC/OS-III进行多任务编程。
      《μC/OS-III内核实现与应用开发实战指南:基于STM32》内容翔实,案例丰富,配有大量示例代码,适合作为嵌入式领域科技工作者的参考书,也适合相关专业的学生学习参考。
  • 作者简介:
      刘火良,野火电子创始人,嵌入式软件工程师,长期从事STM32软硬件开发,网络教程《零死角玩转STM32》的作者,《STM32库开发实战指南》的合著者。
      
      杨森,野火电子合伙人,嵌入式软件工程师,专注于STM32和周边软件开发。合著有《STM32库开发实战指南》,已累计印刷十余次,广受STM32开发者的喜爱。
  • 目录:
    前言 

    引言 

    第一部分 从0到1教你写 

    C/OS内核 

    第1章 新建工程—软件仿真2 

    11 新建本地工程文件夹2 

    12 使用KEIL新建工程2 

    121 New Project2 

    122 Select Device For Target3 

    123 Manage Run-Time Environment3 

    13 在KEIL工程中新建文件组4 

    14 在KEIL工程中添加文件4 

    15 调试配置6 

    151 设置软件仿真6 

    152 修改时钟大小6 

    153 添加头文件路径7 

    第2章 裸机系统与多任务系统8 

    21 裸机系统8 

    211 轮询系统8 

    212 前后台系统9 

    22 多任务系统10 

    第3章 任务的定义与任务切换13 

    31 多任务系统中任务的概念14 

    32 创建任务15 

    321 定义任务栈15 

    322 定义任务函数16 

    323 定义任务控制块17 

    324 实现任务创建函数18 

    33 操作系统初始化22 

    34 启动系统24 

    35 任务切换27 

    36 main()函数33 

    37 实验现象37 

    第4章 任务时间片运行39 

    41 SysTick简介39 

    42 初始化SysTick40 

    43 编写SysTick中断服务函数41 

    44 main()函数42 

    45 实验现象44 

    第5章 空闲任务与阻塞延时45 

    51 实现空闲任务45 

    511 定义空闲任务栈45 

    512 定义空闲任务的任务控制块46 

    513 定义空闲任务函数47 

    514 空闲任务初始化47 

    52 实现阻塞延时48 

    53 main()函数50 

    54 实验现象52 

    第6章 时间戳53 

    61 时间戳简介53 

    62 时间戳的实现53 

    63 时间戳代码54 

    631 CPU_Init()函数54 

    632 CPU_TS_Init()函数55 

    633 CPU_TS_TmrInit()函数56 

    634 BSP_CPU_ClkFreq()函数57 

    635 CPU_TS_TmrFreqSet()函数58 

    636 CPU_TS_TmrRd()函数58 

    637 OS_TS_GET()函数59 

    64 main()函数59 

    65 实验现象61 

    第7章 临界段62 

    71 临界段简介62 

    72 Cortex-M内核快速关中断指令62 

    73 关中断63 

    74 开中断63 

    75 临界段代码的应用64 

    76 测量关中断时间68 

    761 测量关中断时间初始化68 

    762 测量最大关中断时间69 

    763 获取最大关中断时间70 

    77 main()函数71 

    78 实验现象71 

    第8章 就绪列表72 

    81 优先级表的定义及函数72 

    82 就绪列表的定义及函数80 

    83 main()函数88 

    84 实验现象88 

    第9章 多优先级89 

    91 定义优先级相关全局变量89 

    92 修改OSInit()函数89 

    93 修改任务控制块90 

    94 修改OSTaskCreate()函数90 

    95 修改OS_IdleTaskInit()函数92 

    96 修改OSStart()函数93 

    97 修改PendSV_Handler()函数93 

    98 修改OSTimeDly()函数94 

    99 修改OSSched()函数95 

    910 修改OSTimeTick()函数97 

    911 main()函数98 

    912 实验现象101 

    第10章 时基列表103 

    101 实现时基列表103 

    1011 定义时基列表变量103 

    1012 修改任务控制块104 

    1013 实现时基列表相关函数106 

    102 修改OSTimeDly()函数113 

    103 修改OSTimeTick()函数114 

    104 main()函数114 

    105 实验现象114 

    第11章 时间片115 

    111 实现时间片115 

    1111 修改任务控制块115 

    1112 实现时间片调度函数116 

    112 修改OSTimeTick()函数118 

    113 修改OSTaskCreate()函数118 

    114 修改OS_IdleTaskInit()函数120 

    115 main()函数120 

    116 实验现象122 

    第12章 任务的挂起和恢复124 

    121 实现任务的挂起和恢复124 

    1211 定义任务的状态124 

    1212 修改任务控制块125 

    1213 编写任务挂起和恢复函数126 

    122 main()函数131 

    123 实验现象133 

    第13章 任务的删除134 

    131 实现任务删除134 

    132 main()函数136 

    133 实验现象136 

    第二部分 C/OS-III内核 

    应用开发 

    第14章 移植C/OS-III到STM32138 

    141 获取STM32的裸机工程模板138 

    142 下载C/OS-III源码138 

    143 C/OS-III源码文件介绍141 

    1431 EvalBoards141 

    1432 C-CPU141 

    1433 C-LIB143 

    1434 C/OS-III143 

    144 移植到STM32工程145 

    1441 在工程中添加文件分组145 

    1442 添加文件到对应分组145 

    1443 添加头文件路径到工程中146 

    1444 具体的工程文件修改147 

    1445 修改源码中的bspc与bsph文件149 

    145 按需配置最适合的工程151 

    1451 os_cfgh151 

    1452 cpu_cfgh153 

    1453 os_cfg_apph154 

    146 修改appc155 

    147 下载验证157 

    第15章 创建任务158 

    151 硬件初始化158 

    152 创建单任务160 

    1521 定义任务栈160 

    1522 定义任务控制块160 

    1523 定义任务主体函数160 

    1524 创建任务161 

    1525 启动任务163 

    1526 appc163 

    153 下载验证单任务166 

    154 创建多任务166 

    155 下载验证多任务171 

    第16章 C/OS-III的启动流程172 

    161 “万事俱备,只欠东风”法172 

    162 “小心翼翼,十分谨慎”法173 

    163 两种方法的适用情况175 

    164 系统的启动175 

    1641 系统初始化175 

    1642 CPU初始化179 

    1643 SysTick初始化182 

    1644 内存初始化183 

    1645 OSStart()函数183 

    1646 appc184 

    第17章 任务管理187 

    171 任务的基本概念187 

    172 任务调度器的基本概念188 

    173
查看详情
系列丛书 / 更多
μC/OS-III内核实现与应用开发实战指南:基于STM32
STM32库开发实战指南(第2版):基于STM32F103
刘火良 杨森 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
Linux设备驱动开发详解:基于最新的Linux 4.0内核
宋宝华 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
UVM实战(卷1)
张强 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
嵌入式实时操作系统:RT-Thread设计与实现
邱祎、熊谱翔、朱天龙 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
STM32库开发实战指南:基于STM32F4
刘火良、杨森 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
ROS机器人程序设计
Aaron、Enrique Fernández 著;刘品杰 译
μC/OS-III内核实现与应用开发实战指南:基于STM32
Arduino从入门到精通:创客必学的13个技巧
[美]约翰·白赫泰(John Baichtal) 著;翁恺 译
μC/OS-III内核实现与应用开发实战指南:基于STM32
Processing开发实战
黄文恺、吴羽、伍冯洁 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
Android嵌入式系统程序开发(基于Cortex-A8)第2版
胡文、金雪松、陈铭 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
例说FPGA:可直接用于工程项目的第一手经验
吴厚航 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
Microduino实战
姚琪、杨立斌 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
Arduino开发实战指南:智能家居卷
赵志 著
相关图书 / 更多
μC/OS-III内核实现与应用开发实战指南:基于STM32
μC/OS- II嵌入式系统设计
丁山 著;丁山 编
μC/OS-III内核实现与应用开发实战指南:基于STM32
μC\OS-2原理与ARM应用程序设计
张勇 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
μC\OS-Ⅱ
[美]拉伯罗斯(Labrosse)、邵贝贝 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
μClinux源代码中Make文件完全解析
田军营;韩建海
μC/OS-III内核实现与应用开发实战指南:基于STM32
μC/OS-3源码分析笔记
李悦城、野火 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
μC、OS-2标准教程
杨宗德、张兵 著
μC/OS-III内核实现与应用开发实战指南:基于STM32
μC/OS ARM移植要点详解
黄燕平 著
您可能感兴趣 / 更多