上篇 基础篇 2
第1章 DSP处理器简介 2
1.1 DSP芯片的主要特点 2
1.2 电机控制对DSP的要求 5
1.3 飞思卡尔DSP简介 6
1.3.1 DSP56800内核的特点 6
1.3.2 DSP56800E内核的特点 8
1.3.3 电机控制用DSP简介 10
1.3.4 典型飞思卡尔DSP的引脚分布及其主要特点 15
第2章 DSP56800E内核的结构 25
2.1 核心编程模型 25
2.2 双哈佛存储器结构 27
2.3 系统结构与外设接口 28
2.3.1 内核结构 28
2.3.2 地址总线 29
2.3.3 数据总线 30
2.3.4 数据算术逻辑单元(ALU) 30
2.3.5 地址产生单元(AGU) 31
2.3.6 程序控制器与硬件循环单元 31
2.3.7 位操作单元 32
2.3.8 增强型片内仿真单元(增强型OnCE) 32
2.4 DSP56800E内核之外的模块 32
2.4.1 程序存储器 33
2.4.2 数据存储器 33
2.4.3 引导存储器 33
2.4.4 外部总线接口 34
2.5 DSP56800E数据类型 34
2.5.1 数据格式 34
2.5.2 有符号整数 34
2.5.3 无符号整数 35
2.5.4 有符号小数 35
2.5.5 无符号小数 35
第3章 DSP56F8300 DSP外设 36
3.1 模/数转换器(ADC) 36
3.1.1 简介 36
3.1.2 特点 36
3.1.3 功能简介 38
3.1.4 输入多路转换器功能 39
3.1.5 ADC采样转换操作模式 40
3.1.6 ADC数据处理 41
3.1.7 顺序采样与同时采样 42
3.1.8 扫描顺序 42
3.1.9 低功耗操作模式 43
3.1.10 ADC停止操作模式 44
3.1.11 校准 45
3.1.12 引脚说明 47
3.1.13 时钟 48
3.1.14 中断 49
3.2 计算机操作正常(COP)模块 49
3.2.1 简介 49
3.2.2 特点 50
3.2.3 功能简介 50
3.2.4 定时规范 51
3.2.5 复位后的COP 51
3.2.6 中断 51
3.2.7 等待模式操作 51
3.2.8 停止模式操作 51
3.2.9 调试模式操作 52
3.3 外部存储器接口(EMI) 52
3.3.1 简介 52
3.3.2 特点 52
3.3.3 功能简介 52
3.4 片内时钟合成模块(OCCS) 54
3.4.1 简介 54
3.4.2 特点 54
3.4.3 功能简介 55
3.4.4 晶体振荡器 59
3.4.5 张弛振荡器 59
3.4.6 锁相环(PLL) 60
3.4.7 PLL频率锁相检测器模块 62
3.4.8 参考时钟丢失检测器 62
3.4.9 操作模式 62
3.4.10 晶体振荡器 63
3.4.11 陶瓷振荡器 63
3.4.12 外部时钟源 63
3.4.13 内部时钟源 64
3.4.14 中断 64
3.5 Flash存储器(FM) 64
3.5.1 简介 64
3.5.2 特点 65
3.5.3 工作原理 65
3.5.4 功能简介 67
3.5.5 中断 67
3.5.6 复位 68
3.6 FlexCAN总线模块(FC) 68
3.6.1 简介 68
3.6.2 特点 69
3.6.3 功能简介 70
3.6.4 特殊执行模式 76
3.6.5 中断 78
3.6.6 复位 78
3.7 通用输入/输出模块(GPIO) 78
3.7.1 简介 79
3.7.2 特点 80
3.7.3 逻辑框图 80
3.7.4 操作模式 80
3.7.5 中断 81
3.8 能量管理器(PS) 81
3.8.1 简介 81
3.8.2 特点 81
3.8.3 功能简介 82
3.9 脉宽调制模块(PWM) 84
3.9.1 简介 84
3.9.2 特点 84
3.9.3 功能简介 84
3.9.4 软件输出控制 98
3.9.5 PWM发生器装载 99
3.9.6 故障保护 103
3.9.7 操作模式 105
3.9.8 引脚说明 105
3.9.9 中断 106
3.10 正交解码器模块 106
3.10.1 简介 107
3.10.2 特点 107
3.10.3 功能简介 107
3.10.4 操作模式 110
3.10.5 引脚说明 110
3.10.6 中断 111
3.11 串行通信接口模块(SCI) 111
3.11.1 简介 111
3.11.2 特点 111
3.11.3 功能简介 113
3.11.4 特殊工作模式 121
3.11.5 中断 123
3.12 串行外设接口模块(SPI) 124
3.12.1 简介 124
3.12.2 特点 125
3.12.3 工作模式 126
3.12.4 引脚说明 128
3.12.5 传输格式 129
3.12.6 传输数据 131
3.12.7 错误产生条件 132
3.12.8 复位 135
3.12.9 中断 135
3.13 温度传感器模块 136
3.13.1 简介 136
3.13.2 特点 136
3.13.3 功能简介 137
3.13.4 工作模式 138
3.14 正交定时器模块 138
3.14.1 简介 139
3.14.2 特点 140
3.14.3 功能简介 140
3.14.4 工作模式 142
3.14.5 中断 151
3.15 电压调节器 152
3.15.1 简介 152
3.15.2 特点 152
3.15.3 功能简介 152
3.15.4 工作模式 153
3.15.5 引脚说明 153
第4章 DSP软件开发平台 154
4.1 软件开发平台(IDE)简介 154
4.1.1 CodeWarrior IDE的组成 154
4.1.2 利用CodeWarrior IDE的开发流程 155
4.2 处理器专家接口(PEI)简介 157
4.2.1 PE特点 157
4.2.2 PE代码生成 158
4.2.3 PE嵌入豆 159
4.2.4 处理器专家窗口 160
第5章 数据观察 167
5.1 启动数据观察 167
5.2 数据目标对话框 168
5.2.1 存储器 168
5.2.2 寄存器 169
5.2.3 变量 169
5.2.4 HSST 170
5.2.5 图形窗口特性 170
第6章 标么值系统与定点数运算6.1 整数运算——运算符与表达式 171
6.2 小数运算——定点DSP的数字定标与定点小数运算原理 172
6.2.1 数字定标的基本概念 172
6.2.2 定点运算的数字定标 173
6.3 采用固定Q15定标的运算规则 177
6.3.1 运算规则 177
6.3.2 软件实现 179
6.4 标么化系统与数字定标 180
6.4.1 标么化系统 180
6.4.2 基于标么化系统的控制器设计 181
下篇 应用篇 187
第7章 DSP控制系统设计 187
7.1 控制电路 187
7.1.1 DSP最小系统 188
7.1.2 DSP基本外围电路 190
7.2 开关电源 194
7.3 电流与电压检测 196
7.4 键盘显示 196
7.5 控制板的配置与结构 198
第8章 电机控制常用驱动模块实现8.1 利用PE快速建立一个工程 199
8.2 GPIO口应用 204
8.3 模/数转换器应用 208
8.3.1 顺序采样 208
8.3.2 同时采样 213
8.4 PWM模块应用 215
8.4.1 PWM输出控制 215
8.4.2 PWM控制ADC同步采样 218
8.5 定时器应用 223
8.5.1 计数模式 223
8.5.2 定时模式 225
8.6 串行通信应用 228
第9章 电机控制函数库 232
9.1 基本函数 232
9.1.1 MCLIB_Sin 232
9.1.2 MCLIB_Cos 233
9.1.3 MCLIB_Sin2 235
9.1.4 MCLIB_Cos2 236
9.1.5 MCLIB_Tan 237
9.1.6 MCLIB_Atan 238
9.1.7 MCLIB_AtanYX 239
9.1.8 MCLIB_Asin 240
9.1.9 MCLIB_Acos 241
9.1.10 MCLIB_Sqrt 242
9.1.11 MCLIB_SetRandSeed16 244
9.1.12 MCLIB_Rand16 244
9.1.13 MCLIB_GetSetSaturationMode 245
9.1.14 MCLIB_InitAtanYXShifted 246
9.1.15 MCLIB_AtanYXShifted 247
9.2 坐标变换函数 249
9.2.1 MCLIB_ClarkTrfm 249
9.2.2 MCLIB_ClarkTrfmInv 250
9.2.3 MCLIB_ParkTrfm 251
9.2.4 MCLIB_ParkTrfmInv 253
9.3 调节器函数 254
9.3.1 MCLIB_ControllerPI 254
9.3.2 MCLIB_ControllerPI2 256
9.4 旋转变压器应用函数 258
9.4.1 MCLIB_InitTrackObsv 258
9.4.2 MCLIB_CalcTrackObsv 259
9.4.3 MCLIB_GetResPosition 264
9.4.4 MCLIB_GetResSpeed 266
9.4.5 MCLIB_GetResRevolutions 267
9.4.6 MCLIB_SetResPosition 269
9.4.7 MCLIB_SetResRevolutions 270
9.5 PWM调制技术函数 271
9.5.1 MCLIB_SvmStd 271
9.5.2 MCLIB_SvmU0n 273
9.5.3 MCLIB_SvmU7n 275
9.5.4 MCLIB__SvmAlt 277
9.5.5 MCLIB_SvmIct 279
9.5.6 MCLIB_SvmSci 281
9.5.7 MCLIB_ElimDcBusRip 283
9.6 斜坡函数 285
第10章 异步电机的DSP控制 287
10.1 异步电机变压变频控制(VVVF) 287
10.1.1 异步电机变压变频控制原理 287
10.1.2 异步电机变压变频控制系统设置 288
10.1.3 软件设计 289
10.2 空间矢量PWM调制 291
10.2.1 空间矢量PWM调制基本原理 291
10.2.2 空间矢量PWM的数字化实现 294
10.2.3 标准空间矢量PWM与正弦PWM的对比 300
10.3 异步电机矢量控制 301
10.3.1 坐标变换 302
10.3.2 异步电机的动态数学模型 303
10.3.3 转子磁场定向的矢量控制方法 305
10.3.4 调节器设计 310
10.3.5 异步电机矢量控制的DSP实现方法 317
10.4 异步电机三电平SVPWM控制 322
10.4.1 异步电机三电平逆变器工作原理 322
10.4.2 各个基本矢量作用时间计算方法 325
10.4.3 三电平SVPWM控制的DSP实现 340
第11章 无刷直流电机的DSP控制11.1 无刷直流电机控制原理 352
11.1.1 BLDC电机模型 353
11.1.2 反电势检测 354
11.1.3 换相操作 355
11.1.4 启动与转子对齐 356
11.1.5 速度控制 357
11.2 无刷直流电机控制DSP实现方法 357
11.2.1 系统构成 357
11.2.2 启动控制 358
11.2.3 反电势过零检测与换相控制 359
11.2.4 反电势过零检测BLDC控制的嵌入豆 360
11.2.5 系统DSP实现 363
第12章 永磁同步电机的DSP控制12.1 PMSM电机模型 365
12.2 PMSM矢量控制DSP实现方法 366
12.2.1 系统构成 366
12.2.2 软件控制简要说明 367
12.2.3 转子位置与速度检测 368
12.3 控制系统软件模块说明 370
第13章 开关磁阻电机的DSP控制13.1 简介 372
13.2 开关磁阻电机系统组成 372
13.3 开关磁阻电机工作原理 373
13.4 开关磁阻电机的控制 374
13.4.1 电压控制 374
13.4.2 电流控制 375
13.5 转子位置检测 376
13.5.1 启动阶段DSP软件算法 376
13.5.2 正常换相阶段DSP软件算法 378
13.6 基于DSP的开关磁阻电机控制 379
参考文献 380