• RT-Thread内核实现与应用开发实战指南——基于STM32刘火良机械工业出版社9787111613664计算机与互联网
21年品牌 40万+商家 超1.5亿件商品

RT-Thread内核实现与应用开发实战指南——基于STM32刘火良机械工业出版社9787111613664计算机与互联网

新华书店文轩网 正版图书 支持7天无理由 (无锡,四川,天津)三仓24小时极速发货

60.98 6.2折 99 全新

库存15件

江苏无锡
认证卖家担保交易快速发货售后保障

作者刘火良

出版社机械工业出版社

ISBN9787111613664

出版时间2019-01

版次1

装帧平装

开本16开

页数401页

定价99元

货号1201809110

上书时间2021-07-13

安轩图书专营店

四年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
商品简介

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

作者简介

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

目录

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

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP