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

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

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书内容翔实,案例丰富,配有大量示例代码,适合作为嵌入式领域科技工作者的参考书,也适合相关专业学生学习参考。

内容简介

本书基于野火STM32全系列开发板介绍RT-Thread内核实现与应用开发,全书分为两部分:第一部分教你如何从0到1把RT-Thread内核写出来,从底层的汇编开始讲解线程如何定义、如何切换,还讲解了阻塞延时如何实现、如何支持多优先级、如何实现定时器以及时间片等RT-Thread的核心知识点;第二部分则讲解RT-Thread内核组件的应用以及如何使用RT-Thread进行多线程编程。

作者简介

作者刘火良,网名野火,是目前国内大的电子工程师社区阿莫论坛的版主,也是业内畅销的STM32开发板供应商野火嵌入式工作室的联合创始人。野火工作室是嵌入式开发方式中库开发方式的倡导者,也是针对初学者在业内推动学习库开发方法的排头兵。

章节目录

版权信息

推荐序

前言

引言

第一部分 从0到1教你写RT-Thread内核

第1章 新建RT-Thread工程——软件仿真

1.1 新建本地工程文件夹

1.2 使用KEIL新建工程

1.3 在KEIL工程中新建文件组

1.4 在KEIL工程中添加文件

1.5 调试配置

第2章 裸机系统与多线程系统

2.1 裸机系统

2.2 多线程系统

第3章 线程的定义与线程切换的实现

3.1 什么是线程

3.2 创建线程

3.3 实现就绪列表

3.4 实现调度器

3.5 main()函数

3.6 实验现象

第4章 临界段的保护

4.1 什么是临界段

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

4.3 关中断

4.4 开中断

4.5 临界段代码的应用

4.6 实验现象

第5章 对象容器

5.1 什么是对象

5.2 什么是容器

5.3 容器的接口实现

5.4 实验现象

第6章 空闲线程与阻塞延时

6.1 实现空闲线程

6.2 实现阻塞延时

6.3 SysTick_Handler()中断服务函数

6.4 main()函数

6.5 实验现象

第7章 多优先级

7.1 就绪列表

7.2 修改代码以支持多优先级

7.3 main()函数

7.4 实验现象

第8章 定时器

8.1 实现定时器

8.2 修改代码以支持定时器

8.3 实验现象

第9章 时间片

9.1 实现时间片

9.2 修改main.c文件

9.3 实验现象

第二部分 RT-Thread内核应用开发

第10章 移植RT-Thread到STM32

10.1 获取STM32的裸机工程模板

10.2 下载RT-Thread Nano源码

10.3 安装RT-Thread Package

10.4 向裸机工程中添加RT-Thread源码

10.5 rtconfig.h文件

10.6 board.c文件

10.7 添加core_delay.c和core_delay.h文件

10.8 修改main.c

10.9 下载验证

第11章 线程

11.1 硬件初始化

11.2 创建单线程——SRAM静态内存

11.3 下载验证SRAM静态内存单线程

11.4 创建单线程——SRAM动态内存

11.5 下载验证SRAM动态内存单线程

11.6 创建多线程——SRAM动态内存

11.7 下载验证SRAM动态内存多线程

第12章 重映射串口到rt_kprintf()函数

12.1 rt_kprintf()函数定义

12.2 自定义rt_hw_console_output()函数

12.3 测试rt_kprintf()函数

第13章 RT-Thread的启动流程

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

13.2 “小心翼翼,十分谨慎”法

13.3 两种方法的适用情况

13.4 RT-Thread的启动流程

第14章 线程管理

14.1 线程的基本概念

14.2 线程调度器的基本概念

14.3 线程状态的概念

14.4 线程状态迁移

14.5 常用的线程函数

14.6 线程的设计要点

14.7 线程管理实验

14.8 实验现象

第15章 消息队列

15.1 消息队列的基本概念

15.2 消息队列的运作机制

15.3 消息队列的阻塞机制

15.4 消息队列的应用场景

15.5 消息队列控制块

15.6 消息队列函数

15.7 消息队列使用注意事项

15.8 消息队列实验

15.9 实验现象

第16章 信号量

16.1 信号量的基本概念

16.2 二值信号量的应用场景

16.3 二值信号量的运作机制

16.4 计数型信号量的运作机制

16.5 信号量控制块

16.6 信号量函数

16.7 信号量实验

16.8 实验现象

第17章 互斥量

17.1 互斥量的基本概念

17.2 互斥量的优先级继承机制

17.3 互斥量的应用场景

17.4 互斥量的运作机制

17.5 互斥量控制块

17.6 互斥量函数

17.7 互斥量使用注意事项

17.8 互斥量实验

17.9 实验现象

第18章 事件

18.1 事件的基本概念

18.2 事件的应用场景

18.3 事件的运作机制

18.4 事件控制块

18.5 事件函数

18.6 事件实验

18.7 实验现象

第19章 软件定时器

19.1 软件定时器的基本概念

19.2 软件定时器的应用场景

19.3 软件定时器的精度

19.4 软件定时器的运作机制

19.5 定时器超时函数

19.6 软件定时器的使用

19.7 软件定时器实验

19.8 实验现象

第20章 邮箱

20.1 邮箱的基本概念

20.2 邮箱的运作机制

20.3 邮箱的应用场景

20.4 邮箱的应用技巧

20.5 邮箱控制块

20.6 邮箱函数

20.7 邮箱实验

20.8 实验现象

第21章 内存管理

21.1 内存管理的基本概念

21.2 内存管理的运作机制

21.3 内存管理的应用场景

21.4 静态内存管理函数

21.5 动态内存管理函数

21.6 内存管理实验

21.7 实验现象

第22章 中断管理

22.1 异常与中断的基本概念

22.2 中断管理的运作机制

22.3 中断延迟的概念

22.4 中断管理的应用场景

22.5 ARM Cortex-M的中断管理

22.6 中断管理实验

22.7 实验现象

第23章 双向链表

23.1 双向链表的基本概念

23.2 双向链表函数

23.3 双向链表实验

23.4 实验现象

第24章 CPU利用率统计

24.1 CPU利用率的基本概念

24.2 CPU利用率的作用

24.3 CPU利用率统计实现

24.4 CPU利用率实验

24.5 实验现象

附录 参考资料和配套硬件

RT-Thread内核实现与应用开发实战指南:基于STM32是2018年由机械工业出版社华章分社出版,作者刘火良杨森。

得书感谢您对《RT-Thread内核实现与应用开发实战指南:基于STM32》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Android Studio应用开发实战详解 电子书
全书共分18章,依次讲解了Android开发基础、搭建Android开发环境、AndroidStudio集成开发环境介绍、AndroidStudio常见操作、分析Android应用程序文件的组成、Gradle技术基础、UI界面布局、MaterialDesign设计语言、核心组件介绍、Android事件处理、图形图像和动画处理、开发音频/视频应用程序、GPS地图定位、Android传感器应用开发、编
STM32单片机原理与项目实战 电子书
本书介绍了单片机技术的具体应用,并通过具体项目讲解单片机开发的基本流程和方法,以及单片机开发工具的使用方法。
基于Linux的物联网应用开发基础及项目实战(微课版) 电子书
本书介绍Linux操作系统基础知识及其在物联网、云计算等领域的实际应用。书中共8章,包括物联网应用开发基础及项目实战、Linux操作系统基础及项目实战、Linux编程基础及项目实战、LinuxJava编程基础及项目实战、Linux云服务器开发基础及项目实战、嵌入式Linux基础及项目实战、嵌入式Linux应用开发实战和Linux物联网云服务器应用开发实战。
基于Kotlin的Android应用程序开发 电子书
书籍的核心内容被化分成10个章节,所涉及技术点包含:Kotlin语言、Android界面技术、多线程技术、数据持久化和系统服务等,相关内容的讨论和结果可为基本的Android应用程序开发提供技术指导和支持。本书以案例驱动方式介绍相关程序的实现方法和过程,本书还通过示例程序版本迭代的方式,逐渐升入讨论核心技术和实现方法。
Angular应用程序开发指南 电子书
全书共包括14章内容,按照如下思路组织内容:从AngularJS到Angular的发展历程讲起,然后介绍Angular应用程序之前所需做的准备、TypeScript的基础语法,并在此基础上,介绍TypeScript中的模块、命名空间和声明文件以及Angular中的基础概念,最后通过使用Angular开发一个真实的名为“天天菜园”的Web应用程序,帮助读者系统地掌提Angular的整个框架,提升构建