求真百科欢迎当事人提供第一手真实资料,洗刷冤屈,终结网路霸凌。

RT·Thread应用开发实战查看源代码讨论查看历史

事实揭露 揭密真相
跳转至: 导航搜索

来自 孔夫子网 的图片

RT·Thread应用开发实战》,副标题:基于STM32智能小车,赵剑川 主编 黎旺星 欧启标 熊谱翔 副主编 著,出版社: 北京航空航天大学出版社。

书籍是用文字、图画和其他符号,在一定材料上记录各种知识,清楚地表达思想,并且制装成卷册的著作物[1],为传播各种知识和思想,积累人类文化的重要工具。它随着历史的发展,在书写方式、所使用的材料和装帧形式[2],以及形态方面,也在不断变化与变更。

内容简介

本书专注于实时操作系统RT Thread的应用开发实践,使用目前广泛应用的STM32芯片并结合智能小车功能开发,力求帮助读者在较短时间掌握RT Thread应用开发技术。

全书分为三大部分:部分(第1~2章)为开发工具及系统介绍;第二部分为RT Thread内核基础应用(第3~7章),从应用实践的角度,结合智能小车具体功能实现,介绍RT Thread的线程、线程调度、线程同步、时钟管理、线程间通信等操作系统内容,力求通过项目实践的形式使读者深刻理解RT Thread内核;第三部分(第8~14章)为RT Thread各种常用I/O 设备的应用开发实例,通过这些实例,读者可以熟练掌握RT Thread设备驱动接口。

本书可作为高等职业院校电信类或计算机类相关专业教材,亦可作为相关工程技术人员的参考用书。

目录

第1章搭建开发环境

1.1RTThreadStudio集成开发环境安装1

1.1.1获取RTThreadStudio安装包1

1.1.2开始安装RTThreadStudio软件包2

1.1.3下载SDK5

1.2STM32CubeMX图形化配置工具安装7

1.2.1获取安装包7

1.2.2安装软件9

1.2.3安装固件库11

练习111

第2章初识RTThread实时操作系统

2.1RTThread介绍12

2.2如何新建RTThread项目13

2.3认识RTThread项目结构14

2.4配置RTThread项目15

2.5构建项目18

2.6下载程序19

2.7使用串口终端工具与RTThread系统进行交互21

练习222

第3章PIN设备的使用

3.1RTThreadPIN设备介绍23

3.1.1引脚编号的获取24

3.1.2设置引脚的输入/输出模式24

3.1.3设置引脚的电平值25

3.1.4读取引脚的电平值25

3.1.5绑定引脚中断回调函数26

3.1.6脱离引脚中断回调函数26

3.1.7使能中断27

3.2任务31车灯双闪控制27

3.2.1硬件设计27

3.2.2业务分析28

3.2.3程序设计28

3.2.4功能测试28

3.3任务32小车喇叭控制(查询法)29

3.3.1硬件设计29

3.3.2程序设计29

3.3.3下载测试31

3.4任务33小车喇叭控制(中断回调法)31

3.4.1硬件设计31

3.4.2程序设计31

3.4.3下载测试32

3.5任务34同时实现车灯闪烁和按键控制喇叭33

3.5.1硬件设计33

3.5.2软件设计33

3.5.3程序测试35

习题335

第4章线程及其应用

4.1线程介绍37

4.1.1线程的概念37

4.1.2线程的调度38

4.1.3上下文切换38

4.1.4线程的重要属性39

4.1.5RTThread命令查看系统线程信息42

4.2RTThread线程管理接口介绍43

4.3任务41使用多线程的方式同时实现车灯闪烁和按键控制喇叭(扫描法)45

4.3.1RTThread相关接口函数45

4.3.2代码实现48

4.3.3程序测试54

4.4任务42暂停或恢复车灯闪烁功能55

4.4.1RTThread相关接口函数55

4.4.2程序设计56

4.4.3程序测试60

4.5任务43多线程运行机制实验61

4.5.1RTThread相关接口函数61

4.5.2程序设计62

4.5.3程序测试64

4.6任务44线程主动让出CPU资源66

4.6.1RTThread相关接口函数67

4.6.2程序设计67

4.6.3程序测试70

4.7任务45空闲线程中运行LED灯的闪烁71

4.7.1RTThread中设置和删除空闲钩子函数71

4.7.2程序设计72

4.7.3程序测试73

练习473

第5章线程同步及其应用

5.1线程同步的概念75

5.2信号量76

5.2.1RTThread信号量的工作机制77

5.2.2创建信号量78

5.2.3获取信号量79

5.2.4信号量释放79

5.3任务51使用按键控制喇叭(中断法)80

5.3.1程序设计80

5.3.2程序测试84

5.4信号量的应用场合84

5.5任务52矩阵键盘按键识别(中断法)85

5.5.1硬件设计85

5.5.2程序设计86

5.5.3程序测试91

练习591

第6章时钟管理与应用

6.1RTThread嘀嗒时钟相关函数介绍93

6.1.1毫秒级延时94

6.1.2微秒级延时94

6.1.3获取系统当前时间94

6.1.4获取更高精度的时间95

6.2任务61超声波测距(电平扫描方法)96

6.2.1超声波测距原理介绍96

6.2.2硬件设计96

6.2.3软件设计97

6.2.4程序测试102

6.3RTThread系统定时器102

6.3.1创建和删除定时器103

6.3.2初始化和脱离定时器104

6.3.3启动和停止定时器105

6.3.4控制定时器106

6.4任务62使用定时器实现车灯的闪烁106

6.4.1软件设计106

6.4.2程序测试108

6.5任务63超声波测距(使用定时器改进任务61)108

6.5.1程序设计108

6.5.2程序测试_______109

6.6任务64超声波测距(引脚中断方式)110

6.6.1程序设计110

6.6.2程序测试114

练习6115

第7章线程间通信

7.1邮箱116

7.1.1邮箱的工作机制117

7.1.2RTThread邮箱的相关接口函数117

7.2任务71独立按键控制蜂鸣器开关(使用邮箱)121

7.2.1硬件设计121

7.2.2软件设计121

7.2.3程序测试126

7.3任务72使用邮箱发送大于4字节的消息126

7.3.1程序编写126

7.3.2程序测试126

7.4消息队列127

7.4.1消息队列的工作机制127

7.4.2消息队列相关接口函数128

7.5任务73独立按键控制蜂鸣器开关(使用消息队列)132

7.5.1硬件设计132

7.5.2程序设计132

7.5.3测试135

7.6信号136

练习7138

第8章RTThread板级驱动(BSP)的配置

8.1I/O设备模型139

8.2RTThread中设备驱动相关配置141

8.2.1使用CubeMX使能硬件设备,生成设备初始化代码141

8.2.2RTThreadSettings开启设备驱动程序146

8.2.3在drivers/board.h中定义接口相关的宏147

练习8148

第9章使用PWM设备控制小车行驶速度

9.1RTThread的PWM设备编程介绍149

9.1.1查找PWM设备150

9.1.2设置PWM周期和脉冲宽度150

9.1.3使能和关闭PWM设备通道151

9.2任务91使用PWM驱动小车车轮转动151

9.2.1硬件设计151

9.2.2工程建立和BSP配置152

9.2.3程序设计153

9.2.4编译测试153

9.3任务92小车前进和后退154

9.3.1程序设计与代码编写155

9.3.2测试158

练习9158

第10章使用ADC设备测量电池电量

10.1A/D转换介绍159

10.1.1A/D转换的原理159

10.1.2A/D转换的计算160

10.2RTThreadADC设备接口介绍161

10.2.1查找ADC设备161

10.2.2使能ADC通道161

10.2.3读取ADC通道采样值162

10.2.4关闭ADC通道162

10.3任务101使用终端命令读取ADC设备采样值162

10.3.1硬件设计162

10.3.2RTThread工程建立和BSP配置163

10.3.3编译及测试163

10.4任务102编写程序,实现电压测量并打印电压值164

10.4.1程序设计164

10.4.2编译、下载、测试165

练习10166

第11章使用I2C设备驱动OLED显示屏

11.1I2C总线介绍167

11.1.1I2C总线构成167

11.1.2I2C总线的信号类型和数据传输时序168

11.2RTThreadI2C总线接口171

11.2.1查找I2C总线设备171

11.2.2数据传输172

11.3OLED操作介绍173

11.3.1从机地址173

11.3.2数据格式174

11.3.3GDDRAM结构175

11.3.4三种GDDRAM寻址模式175

11.3.5OLED指令177

11.4任务111OLED显示实现中英文178

11.4.1硬件设计178

11.4.2工程建立与配置178

11.4.3程序编写179

11.4.4测试188

练习11188

第12章使用脉冲码盘设备测量小车行驶速度

12.1编码器及其测速原理189

12.1.1编码器的分类189

12.1.2编码器的参数191

12.1.3编码器测速原理191

12.2任务121车轮转动方向测量193

12.2.1硬件设计193

12.2.2程序设计193

12.2.3测试196

12.3任务122采用M法测量小车车轮转动速度196

12.3.1硬件设计196

12.3.2软件设计196

12.3.3测试197

12.4任务123同时测量方向和速度198

12.4.1程序设计198

12.4.2测试201

12.5任务124使用PulseEncoder设备进行测速201

12.5.1硬件设计201

12.5.2新建项目及BSP配置201

12.5.3代码编写203

12.5.4测试204

练习12205

第13章使用Sensor设备进行温度测量

13.1单线程协议简介206

13.2DS18B20数字温度传感器208

13.3任务131使用DS18B20进行温度采样210

13.3.1硬件设计210

13.3.2软件设计210

13.3.3测试214

13.4任务132把DS18B20设备注册为RTThread的Sensor设备215

13.4.1硬件设计215

13.4.2项目创建与配置215

13.4.3程序设计215

13.4.4测试219

13.5任务133使用Sensor设备驱动层接口读取温度值220

13.5.1程序设计220

13.5.2测试222

练习13222

第14章遥控器控制小车行走

14.1红外接收原理223

14.1.1红外通信系统223

14.1.2认识红外接收头224

14.1.3红外遥控编码协议224

14.2任务141识别红外遥控器按键信号225

14.2.1硬件设计225

14.2.2创建项目及配置226

14.2.3程序设计229

14.2.4测试230

练习14231

参考文献232

参考文献

  1. 作品、著作物与版权,道客巴巴,2014-11-09
  2. 书籍装帧设计的分类及艺术表现形式,豆丁网,2016-08-14