书籍详情
《RT-Thread内核实现与应用开发实战指南:基于STM刘火良杨森著机械工业》[58M]百度网盘|亲测有效|pdf下载
  • RT-Thread内核实现与应用开发实战指南:基于STM刘火良杨森著机械工业

  • 出版社:网书网图书专营店
  • 出版时间:2018-12
  • 热度:11832
  • 上架时间:2024-06-30 09:38:03
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

基本信息

书名:RT-Thread内核实现与应用开发实战指南:基于STM32

定价:99元

作者:刘火良杨森 著

出版社:机械工业出版社

出版日期:2018-12-01

ISBN:9787111613664

字数:

页码:416

版次:1

装帧:平装

开本:16开

商品重量:

编辑推荐


内容提要


本书基于野火STM32全系列开发板介绍RTThread内核实现与应用开发,全书分为两部分:部分教你如何从0到1把RTThread内核写出来,从底层的汇编开始讲解线程如何定义、如何切换,还讲解了阻塞如何实现、如何支持多优先级、如何实现定时器以及时间片等RTThread的核心知识点;第二部分则讲解RTThread内核组件的应用以及如何使用RTThread进行多线程编程。 n
本书内容翔实,案例丰富,配有大量示例代码,适合作为嵌入式领域科技工作者的参考书,也适合相关专业学生学习参考。

目录


推荐序 n
前言 n
引言 n
部分 从0到1教你写RTThread内核 n
章 新建RTThread工程——软件仿真 2 n
1.1 新建本地工程文件夹 2 n
1.2 使用KEIL新建工程 3 n
1.2.1 New Project 3 n
1.2.2 Select Device for Target 3 n
1.2.3 Manage RunTime Environment 4 n
1.3 在KEIL工程中新建文件组 5 n
1.4 在KEIL工程中添加文件 6 n
1.5 调试配置 7 n
1.5.1 设置软件仿真 7 n
1.5.2 修改时钟大小 8 n
1.5.3 添加头文件路径 9 n
第2章 裸机系统与多线程系统 10 n
2.1 裸机系统 10 n
2.1.1 轮询系统 10 n
2.1.2 前后台系统 11 n
2.2 多线程系统 12 n
第3章 线程的定义与线程切换的实现 15 n
3.1 什么是线程 16 n
3.2 创建线程 17 n
3.2.1 定义线程栈 17 n
3.2.2 定义线程函数 19 n
3.2.3 定义线程控制块 20 n
3.2.4 实现线程创建函数 20 n
3.3 实现就绪列表 30 n
3.3.1 定义就绪列表 30 n
3.3.2 将线程插入就绪列表 30 n
3.4 实现调度器 31 n
3.4.1 调度器初始化 32 n
3.4.2 启动调度器 33 n
3.4.3 次线程切换 34 n
3.4.4 系统调度 41 n
3.5 main函数 44 n
3.6 实验现象 47 n
第4章 临界段的保护 50 n
4.1 什么是临界段 50 n
4.2 CortexM内核快速关中断指令 50 n
4.3 关中断 51 n
4.4 开中断 51 n
4.5 临界段代码的应用 52 n
4.6 实验现象 56 n
第5章 对象容器 57 n
5.1 什么是对象 57 n
5.1.1 对象枚举的定义 57 n
5.1.2 对象数据类型的定义 57 n
5.1.3 在线程控制块中添加对象成员 58 n
5.2 什么是容器 59 n
5.3 容器的接口实现 63 n
5.3.1 获取指定类型的对象信息 64 n
5.3.2 对象初始化 64 n
5.3.3 调用对象初始化函数 67 n
5.4 实验现象 67 n
第6章 空闲线程与阻塞 68 n
6.1 实现空闲线程 68 n
6.1.1 定义空闲线程的栈 68 n
6.1.2 定义空闲线程的线程控制块 69 n
6.1.3 定义空闲线程函数 69 n
6.1.4 空闲线程初始化 69 n
6.2 实现阻塞 70 n
6.3 SysTick_Handler中断服务函数 73 n
6.4 main函数 77 n
6.5 实验现象 80 n
第7章 多优先级 82 n
7.1 就绪列表 82 n
7.1.1 线程就绪优先级组 82 n
7.1.2 线程优先级表 86 n
7.2 修改代码以支持多优先级 88 n
7.2.1 修改线程控制块 88 n
7.2.2 修改调度器初始化函数rt_system_scheduler_init 90 n
7.2.3 修改线程初始化函数rt_thread_init 91 n
7.2.4 添加线程启动函数rt_thread_startup 92 n
7.2.5 修改空闲线程初始化函数rt_thread_idle_init 93 n
7.2.6 修改启动系统调度器函数rt_system_scheduler_start 94 n
7.2.7 修改系统调度函数rt_schedule 95 n
7.2.8 修改阻塞函数rt_thread_delay 98 n
7.2.9 修改时基更新函数rt_tick_increase 98 n
7.3 main函数 99 n
7.4 实验现象 102 n
第8章 定时器 103 n
8.1 实现定时器 103 n
8.1.1 系统定时器列表 103 n
8.1.2 系统定时器列表初始化 104 n
8.1.3 定义定时器结构体 104 n
8.1.4 在线程控制块中内置定时器 105 n
8.1.5 定时器初始化函数 106 n
8.1.6 定时器删除函数 108 n
8.1.7 定时器停止函数 108 n
8.1.8 定时器控制函数 109 n
8.1.9 定时器启动函数 110 n
8.1.10 定时器扫描函数 115 n
8.2 修改代码以支持定时器 118 n
8.2.1 修改线程初始化函数 118 n
8.2.2 修改线程函数 119 n
8.2.3 修改系统时基更新函数 121 n
8.2.4 修改main.c文件 122 n
8.3 实验现象 126 n
第9章 时间片 127 n
9.1 实现时间片 127 n
9.1.1 在线程控制块中添加时间片相关成员 127 n
9.1.2 修改线程初始化函数 128 n
9.1.3 修改空闲线程初始化函数 129 n
9.1.4 修改系统时基更新函数 129 n
9.2 修改main.c文件 131 n
9.3 实验现象 135 n
第二部分 RTThread 内核应用开发 n
0章 移植RTThread到STM32 138 n
10.1 获取STM32的裸机工程模板 138 n
10.2 下载RTThread Nano源码 138 n
10.3 安装RTThread Package 139 n
10.4 向裸机工程中添加RTThread源码 140 n
10.4.1 复制RTThread Package到裸机工程根目录 140 n
10.4.2 复制rtconfig.件到User文件夹 141 n
10.4.3 复制board.c文件到User文件夹 141 n
10.4.4 rtthread文件夹内容简介 141 n
10.4.5 添加RTThread源码到工程组文件夹 143 n
10.5 rtconfig.件 145 n
10.5.1 rtconfig.件内容讲解 145 n
10.5.2 rtconfig.件修改 152 n
10.6 board.c文件 156 n
10.6.1 board.c文件内容讲解 156 n
10.6.2 board.c文件修改 160 n
10.7 添加core_delay.c和core_delay.件 167 n
10.8 修改main.c 171 n
10.9 下载验证 172 n
1章 线程 173 n
11.1 硬件初始化 173 n
11.2 创建单线程——SRAM静态内存 175 n
11.2.1 定义线程函数 175 n
11.2.2 定义线程栈 176 n
11.2.3 定义线程控制块 176 n
11.2.4 初始化线程 176 n
11.2.5 启动线程 177 n
11.2.6 main.c文件内容 177 n
11.3 下载验证SRAM静态内存单线程 179 n
11.4 创建单线程——SRAM动态内存 179 n
11.4.1 动态内存空间堆的来源

作者介绍


刘火良,野火STM32开发板创始人,嵌入式软件工程师,长期从事STM32软硬件开发,网络教程《零死角玩转STM32》作者,著有《STM32库开发实战指南》。

序言