【书籍】freertos内核实现与应用开发实战指南:基于stm32

【书籍】freertos内核实现与应用开发实战指南:基于stm32

stm32 FreeRTOS

市场参考价:¥99

总数 : 2 可申请:0 试用中 : 2

本活动不支持使用试用券

免费申请

产品详情
试用资料
试用报告
相关问题
试用记录
试用规则
产品简介

商品参数:
定价    99.00
出版社    机械工业出版社
出版时间    2019年03月
开本   
作者    刘火良 杨森
页数    496
ISBN编码    9787111618256


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


目录


前 言

引 言

第1部分 从0到1教你写FreeRTOS内核

第1章 初识FreeRTOS 2

1.1 FreeRTOS版权 2

1.2 FreeRTOS收费问题 2

1.2.1 FreeRTOS 2

1.2.2 OpenRTOS 2

1.2.3 SaveRTOS 3

1.3 FreeRTOS资料获取 3

1.3.1 获取源码 3

1.3.2 获取书籍 4

1.3.3 快速入门 4

1.4 FreeRTOS的编程风格 5

1.4.1 数据类型 5

1.4.2 变量名 6

1.4.3 函数名 6

1.4.4 宏 7

1.4.5 格式 7

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

2.1 新建本地工程文件夹 8

2.2 使用KEIL新建工程 8

2.2.1 New Project 9

2.2.2 Select Device for Target 9

2.2.3 Manage Run-Time Environment 10

2.3 在KEIL工程中新建文件组 11

2.4 在KEIL工程中添加文件 11

2.5 调试配置 13

2.5.1 设置软件仿真 13

2.5.2 修改时钟大小 13

2.5.3 添加头文件路径 13

第3章 裸机系统与多任务系统 15

3.1 裸机系统 15

3.1.1 轮询系统 15

3.1.2 前后台系统 16

3.2 多任务系统 17

第4章 数据结构—列表与列表项 20

4.1 C语言链表 20

4.1.1 单向链表 20

4.1.2 双向链表 22

4.1.3 链表与数组的对比 22

4.2 FreeRTOS中链表的实现 23

4.2.1 实现链表节点 23

4.2.2 实现链表根节点 25

4.3 链表节点插入实验 31

4.4 实验现象 34

第5章 任务的定义与任务切换 35

5.1 本章目标 35

5.2 什么是任务 36

5.3 创建任务 37

5.3.1 定义任务栈 37

5.3.2 定义任务函数 38

5.3.3 定义任务控制块 39

5.3.4 实现任务创建函数 40

5.4 实现就绪列表 45

5.4.1 定义就绪列表 45

5.4.2 就绪列表初始化 45

5.4.3 将任务插入就绪列表 46

5.5 实现调度器 49

5.5.1 启动调度器 49

5.5.2 任务切换 54

5.6 main()函数 58

5.7 实验现象 61

5.8 本章涉及的汇编指令 64

第6章 临界段的保护 65

6.1 什么是临界段 65

6.2 Cortex-M内核快速关中断指令 65

6.3 关中断 66

6.3.1 不带返回值的关中断函数 66

6.3.2 带返回值的关中断函数 67

6.4 开中断 67

6.5 进入/退出临界段的宏 68

6.5.1 进入临界段 68

6.5.2 退出临界段 69

6.6 临界段代码的应用 70

6.7 实验现象 71

第7章 空闲任务与阻塞延时 72

7.1 实现空闲任务 72

7.1.1 定义空闲任务的栈 72

7.1.2 定义空闲任务的任务控制块 73

7.1.3 创建空闲任务 73

7.2 实现阻塞延时 74

7.2.1 vTaskDelay()函数 74

7.2.2 修改vTaskSwitchContext()函数 75

7.3 SysTick中断服务函数 77

7.4 SysTick初始化函数 78

7.5 main()函数 80

7.6 实验现象 83

第8章 多优先级 84

8.1 支持多优先级的方法 84

8.2 查找#高优先级的就绪任务相关代码 85

8.2.1 通用方法 87

8.2.2 优化方法 87

8.3 修改代码以支持多优先级 89

8.3.1 修改任务控制块 89

8.3.2 修改xTaskCreateStatic()函数 89

8.3.3 修改vTaskStartScheduler()函数 93

8.3.4 修改vTaskDelay()函数 94

8.3.5 修改vTaskSwitchContext()函数 95

8.3.6 修改xTaskIncrementTick()函数 96

8.4 main()函数 97

8.5 实验现象 100

第9章 任务延时列表 102

9.1 任务延时列表的工作原理 102

9.2 实现任务延时列表 103

9.2.1 定义任务延时列表 103

9.2.2 任务延时列表初始化 103

9.2.3 定义xNextTaskUnblock-Time 103

9.2.4 初始化xNextTaskUnblock-Time 104

9.3 修改代码以支持任务延时列表 104

9.3.1 修改vTaskDelay()函数 105

9.3.2 修改xTaskIncrementTick()函数 107

9.3.3 修改taskRESET_READY_PRIORITY()函数 109

9.4 main()函数 110

9.5 实验现象 110

第10章 时间片 111

10.1 时间片测试实验 111

10.2 main.c文件 112

10.3 实验现象 115
10.4 原理分析 116

10.4.1 taskSELECT_HIGHEST_PRIORITY_TASK()函数 116

10.4.2 taskRESET_READY_PRIORITY()函数 117

10.5 修改代码以支持优先级 118

10.5.1 修改xPortSysTick-Handler()函数 118

10.5.2 修改xTaskIncrement-Tick()函数 119

第2部分 FreeRTOS内核应用开发

第11章 移植FreeRTOS到STM32 124

11.1 获取STM32的裸机工程模板 124

11.2 下载FreeRTOS V9.0.0源码 124

11.3 FreeRTOS文件夹内容 126

11.3.1 FreeRTOS文件夹 126

11.3.2 FreeRTOS-Plus文件夹 128

11.3.3 HTML文件 129

11.4 向裸机工程中添加FreeRTOS源码 129

11.4.1 提取FreeRTOS#简源码 129

11.4.2 复制FreeRTOS到裸机工程根目录 130

11.4.3 复制FreeRTOSConf?ig.h丈件到User文件夹 131

11.4.4 添加FreeRTOS源码到工程组文件夹 131

11.5 修改FreeRTOSConf?ig.h丈件 133

11.5.1 FreeRTOSConf?ig.h丈件内容 133

11.5.2 修改FreeRTOSConfig.h丈件 143

11.6 修改stm32f10x_it.c文件 147

11.7 修改main.c文件 151

11.8 下载验证 152

第12章 任务 153

12.1 硬件初始化

 
活动规则
试用报告要求:
1.内容要求(包含不仅限于):软硬件功能评测、入门教程连载、项目完成流程、试用心得/经验、其他
2.试用报告在中图片要求:图片清晰,背景色尽量为纯白色
3.提交报告内容原创且完整。

报告位置:评测频道

注意:可根据评测分享内容,在提交评测报告是选择“开箱体验”或者是“深度评测”


注意事项
1.本次活动的产品试用周期为45天(邮寄7天后算起),45天后将由下一位试用者试用;

2.试用期间需提交完整的试用报告;针对试用报告不合格且不配合修改调整的试用者,将被扣除相应的会员等级积分和IC币,情节严重者将被拉入试用黑名单

3.提前试用结束,可提前释放出板卡;释放板卡邮寄信息可在在个人中心--我的试用中上传

4.试用的共享开发板将在活动开始后的一周内进行审核;其他申请审核时间由释放开发板的时间为准(审核周期不超过30天)

5.该活动每个ID限申请1块板卡,同一活动未成功后,在活动进行中的状态下仍可提交申请
6.在法律法规许可的范围内,电子芯吧客对此进行解释
暂时没有相关报告,让时间飞一会~~
哦~噢~!没有相关问题,速来提问
试用成功人数 : 2
通过时间 : 2019-04-15
雨了磨坊
通过时间 : 2019-05-08
sunliang156

一、兑换形式

1、电子芯吧客注册用户均可通过免费申请与硬件兑换两种方式进行申请试用

2、免费申请形式为用户通过分享试用活动至好友,换取申请板卡一次试用资格

3、硬件兑换方式为用户捐赠一块闲置板卡至电子芯吧客,换取申请板卡一次试用资格

4、免费申请渠道参与步骤:选择板卡→申请免费试用→分享试用页面→申请成功→完善快递资料→电子芯吧客寄送板卡→确认收货,开始试用→试用完成,发布试用报告→释放开发板→邮寄板卡至下一位使用者

5、硬件兑换渠道参与步骤:选择板卡→申请硬件兑换→提交板卡资料→电子芯吧客进行初审→初审通过,邮寄板卡至电子芯吧客→检查板卡无误→申请成功→完善快递资料→电子芯吧客寄送板卡→确认收货,开始试用→试用完成,发布试用报告→释放开发板→邮寄板卡至下一位使用者

二、注意事项

1、每位用户同一板卡只能申请一次

2、参与免费申请的用户,需要在48小时内完成活动要求的分享任务数,分享进度可在“个人中心”--“我的试用”中查看

3、通过免费申请渠道可同时申请多块板卡,但只能成功一块,当用户有申请成功的板卡时,其它免费申请渠道的申请自动失效

4、硬件兑换渠道可同时申请成功多块板卡,但每块板卡限成功一次

5、板卡申请成功后,用户需在3天内登陆电子芯吧客,在个人中心-我的试用页面完善快递资料,如3天内未及时提交快递资料,则视为用户自动放弃试用机会

6、如用户手上已有申请成功的板卡,还需申请其它板卡时,只能通过硬件兑换渠道进行申请

三、申请须知

1、活动期间使用任何舞弊行为的用户一经发现,即刻取消申请资格

2、用户需保证申请过程中提交资料的真实性与完整性,由于信息错误引起的损失与责任由用户承担

3、活动的最终解释权归电子芯吧客所有

0套试用中
用户名
倒计时
已39人申请

野火电子主营STM32、ⅰMXRT开发板及周边配套模块。配套的程序,教程,视频全部开源。

热门试用
正点原子ARM Linux开发板I.MX6ULL开发板 MX6U-ALPHA
野火 STM32H750XB开发板
DFRobot micro:bit编程小车-麦昆
关注我们
微信公众号
微信公众号
了解最新试用信息
联系我们
企业微信
企业微信
了解最新试用信息
×
申请人信息
请正确填写收件人姓名
请正确填写手机号码
×
即将消耗0积分兑换
【书籍】freertos内核实现与应用开发实战指南:基于stm32---试用资格
当前积分,兑换成功不可撤销,是否确定兑换?
确定兑换
取消
兑换成功可在会员中心后台查看申请进度
×
恭喜您 , 兑换成功
×
兑换所需积分为 : 12234积分 , 您的积分不足,无法完成兑换
确定
×
当前渠道申请人数已满
请选择其他申请方式
返回
×
共享硬件兑换试用
您可以通过将您闲置的硬件共享给社区其它用户 , 兑换该产品试用资格
上传产品资料 :
请上传相关产品资料文件尺寸 : 小于50M,可用扩展名 : PDF、rar、zip、7z
*上传硬件图片 : 包含板卡整体照(正反面) , 主控芯片近照、主要端口照片 , 请至少上传4张照片(支持图片格式 : jpg、png , 单张最大不超过10M)
 我已阅读并同意《电子芯吧客样片申请协议》
提交申请
提交申请后可在会员中心-试用申请内查看申请进度