《“飞思卡尔”杯智能汽车竞赛设计与实践 基于S12XS和Kinetis K10》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:蔡述庭主编
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2012
  • ISBN:9787512408098
  • 页数:262 页
图书介绍:本书介绍以飞思卡尔16位处理器MC9S12XS256和基于ARM Cortex内核的Kinetis K10系列MK10DN512为核心处理器的智能汽车竞赛软硬件设计。全书内容共11章。第1、2章简单介绍飞思卡尔智能汽车竞赛的背景和S12XS、K10系列处理器。第3章对C语言编程进行介绍,重点阐述C语言硬件操作部分。第4、5章对智能汽车竞赛中基于S12XS、K10系列处理器所用到的基本寄存器资源进行详细分析,并给出相应的C语言代码。

第1章 飞思卡尔智能汽车竞赛简介 1

1.1 关于飞思卡尔公司 1

1.2 “飞思卡尔”杯智能汽车竞赛 2

1.3 比赛规则 4

第2章 S12XS与K10系列处理器概述 5

2.1 S12XS概述 5

2.2 S12XS的设备寄存器和地址映射 6

2.3 芯片封装及引脚说明 8

2.4 K10概述 11

2.5 芯片封装及引脚说明 15

第3章 单片机的C语言设计基础 19

3.1 C语言数据类型 19

3.1.1 基本类型 19

3.1.2 构造类型 20

3.2 变量的运算符 21

3.3 变量修饰符 22

3.4 基本语句 24

3.4.1 循环语句 24

3.4.2 条件语句 25

3.4.3 开关语句 26

3.4.4 辅助控制语句 27

3.5 头文件 27

3.6 预处理 32

3.7 指针 34

3.7.1 指针简介 34

3.7.2 指针与数组的区别 35

3.8 代码编写风格 35

第4章 S12XS单片机资源及相应操作 38

4.1 锁相环设置 38

4.1.1 锁相环描述 38

4.1.2 CRG模块相关控制寄存器描述 38

4.1.3 锁相环设置的应用程序 45

4.2 I/O操作 46

4.2.1 I/O端口描述 46

4.2.2 I/O端口相关控制寄存器 46

4.2.3 I/O端口的应用程序 47

4.3 SCI串行通信 47

4.3.1 SCI串行通信概述 47

4.3.2 SCI相关控制寄存器 48

4.3.3 串口通信的应用程序 52

4.4 ADC模块操作 53

4.4.1 ADC模块概述 53

4.4.2 ADC模块相关控制寄存器 54

4.4.3 ADC模块的应用程序 61

4.5 PWM模块操作 62

4.5.1 PWM模块概述 63

4.5.2 主要寄存器描述 63

4.5.3 PWM应用实例 67

4.6 定时器 68

4.6.1 定时器概述 68

4.6.2 寄存器描述 68

4.6.3 增强型脉冲捕捉功能应用实例 73

4.7 中断周期定时器 74

4.7.1 中断定时器概述 74

4.7.2 控制寄存器描述 74

4.7.3 中断定时器应用实例 76

4.8 SPI同步串行通信 77

4.8.1 SPI概述 77

4.8.2 SPI寄存器描述 77

4.8.3 SPI初始化例程 81

第5章 K10系列MCU资源及相应操作 82

5.1 SIM模块设置 82

5.2 锁相环设置 82

5.2.1 锁相环描述 82

5.2.2 MCG模块相关控制寄存器描述 82

5.2.3 MCG初始化例程 89

5.3 I/O操作 91

5.3.1 I/O端口描述 91

5.3.2 I/O端口相关控制寄存器 91

5.3.3 I/O端口的应用程序 95

5.4 UART异步串行通信 95

5.4.1 UART串行通信概述 95

5.4.2 UART相关控制寄存器 96

5.4.3 串口通信的应用程序 102

5.5 ADC模块操作 103

5.5.1 ADC模块概述 103

5.5.2 ADC模块相关控制寄存器 104

5.5.3 ADC模块的应用程序 112

5.6 PWM模块操作 113

5.6.1 PWM模块概述 114

5.6.2 主要寄存器描述 114

5.6.3 PWM应用实例 120

5.7 定时器 121

5.7.1 定时器概述 121

5.7.2 寄存器描述 121

5.7.3 增强型脉冲捕捉功能应用实例 123

5.8 中断周期定时器 123

5.8.1 中断定时器概述 124

5.8.2 控制寄存器描述 124

5.8.3 中断定时器应用实例 125

第6章 S12XS和K10系统开发平台及调试方法 127

6.1 S12XS最小系统设计 127

6.1.1 电源设计 127

6.1.2 时钟电路设计 128

6.1.3 最小系统滤波电路设计 129

6.1.4 复位电路设计 130

6.2 K10最小系统设计 131

6.2.1 时钟电路 131

6.2.2 电源电路 131

6.2.3 复位电路 132

6.3 智能汽车机械结构调整 132

6.3.1 前轮定位 132

6.3.2 齿轮传动结构调整 132

6.3.3 后轮差速器调整 133

6.3.4 后轮距调整 133

6.4 S12XS软件平台的简介 133

6.4.1 软件平台的安装 133

6.4.2 软件平台的使用 133

6.4.3 软件平台的调试 140

6.4.4 Processor Expert专家处理器 141

6.5 监控程序 147

6.6 仿真平台 148

6.6.1 BDM工具的安装 148

6.6.2 BDM工具和Hiwave调试工具的使用 148

6.7 K10软件平台CodeWarrior V10.1 150

第7章 传感器电路设计 163

7.1 模拟摄像头路径检测方式 163

7.1.1 模拟摄像头路径检测概述 163

7.1.2 模拟摄像头路径检测原理 163

7.2 模拟摄像头路径检测系统设计 167

7.3 红外路径检测方式原理 167

7.4 红外路径检测系统设计 168

7.4.1 传感器布局设计 168

7.4.2 传感器横向间隔距离设计 169

7.4.3 传感器纵向伸出长度 169

7.5 电磁路径检测方式原理 169

7.6 电磁路径检测系统设计 173

7.6.1 传感器的选择 173

7.6.2 传感器布局 174

7.6.3 前瞻设计 175

7.7 车速检测模块设计 177

7.8 有关直立式车模的问题 178

7.8.1 车模平衡控制 179

7.8.2 车模速度控制 181

7.8.3 车模方向控制 181

第8章 电机及舵机驱动电路设计 183

8.1 电机驱动电路选择 183

8.2 电机驱动电路设计 183

8.3 电机转速控制 189

8.4 舵机控制理论 189

8.5 舵机响应速度改善 192

8.6 舵机防烧技术 192

第9章 底层软件设计 194

9.1 模拟摄像头驱动程序 194

9.1.1 内部A/D 194

9.1.2 外部A/D 197

9.2 数字摄像头驱动程序 200

9.3 红外传感器驱动程序 205

9.4 编码器驱动程序 206

9.5 舵机/电机驱动程序 207

9.6 键盘/显示驱动程序 209

9.6.1 矩阵键盘的驱动 209

9.6.2 3510i液晶的驱动程序设计 211

第10章 赛道识别算法设计 223

10.1 摄像头类 223

10.1.1 赛道信息获取 223

10.1.2 图像特征提取 226

10.1.3 起跑线识别 231

10.1.4 赛道信息整合 233

10.2 光电类 238

10.2.1 赛道信息获取 238

10.2.2 滤波 240

10.2.3 起跑线识别 244

10.3 电磁类 244

10.3.1 赛道信息获取 245

10.3.2 滤波 246

10.3.3 起跑线识别 247

第11章 控制算法设计 248

11.1 PID控制 248

11.1.1 比例控制器 248

11.1.2 积分控制器 248

11.1.3 PI控制 249

11.1.4 PD控制 250

11.1.5 PID控制 251

11.2 数字PID控制 251

11.2.1 位置式PID控制 251

11.2.2 增量式PID控制 252

11.3 PID参数的整定 252

11.3.1 PID各参数的作用 253

11.3.2 PID参数的设置 253

11.4 Bang-Bang控制 254

11.4.1 Bang-Band控制的简介 254

11.4.2 Bang-Bang控制的应用 254

11.5 电机转速控制算法 255

11.6 双电机差速控制 256

11.7 舵机转向控制算法 258

参考文献 261