《dsPIC33F系列数字信号控制器仿真与实践》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:江和编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2014
  • ISBN:9787512414303
  • 页数:391 页
图书介绍:本书内容包括:dsPIC33系列DSC简介;C30介绍;中断;系统配置;IO端口;定时器;10位AD转换器;12位AD转换器;输入捕捉与输出比较;电机控制专用PWM;正交编码器接口EQI;直接数据存取控制器DMA;异步串行通信;串行外设接口SPI;IIC总线;CAN总线等。这部分是本书的重点,通过众多的实例,详细介绍了dsPIC单片机的C语言编程思路,每个实例均给出具有详细注解的C语言完整程序。本书除了用仿真外,绝大部分的程序均有相应的实验线路及实践验证。

第1章 dsPIC33F系列DSC简介 1

1.1 MCU、DSC与DSP 1

1.2 Microchip公司MCU和dsPIC系列产品简介 1

1.3 dsPIC33F中的GP、MC、GS系列的区别 2

1.4 dsPIC33F通用系列(GP)性能简介 3

1.5 程序存储器 5

1.6 数据存储器 6

1.7 CPU结构 9

1.7.1 工作寄存器阵列W0~W15 9

1.7.2 W0和文件寄存器指令 10

1.7.3 W寄存器和字节模式指令 12

1.7.4 影子寄存器 12

1.7.5 DO循环影子寄存器 12

1.7.6 未初始化的W寄存器的复位 12

1.7.7 软件堆栈指针 12

1.8 中断系统 13

1.9 开发工具的支持 13

第2章 C30及开发环境介绍 14

2.1 C30与标准C(ANSI C)的差别 14

2.1.1 关键字差别 14

2.1.2 语句差别 23

2.1.3 表达式差别 26

2.1.4 C30的头文件与引用 26

2.2 行内汇编 28

2.3 C30的数据类型 29

2.4 内建函数 30

2.5 C30在MPLAB IDE中的使用 31

2.5.1 项目的建立与编译 31

2.5.2 C30程序的仿真与调试 33

第3章 I/O口 39

3.1 I/O口概况 39

3.2 与I/O相关的寄存器 41

3.3 漏极开路配置 46

3.4 配置模拟端口引脚 47

3.5 输入状态变化与弱上拉 48

3.6 外设引脚的可重映射功能选择 51

3.6.1 控制外设引脚选择 51

3.6.2 控制配置改变 53

第4章 中断 57

4.1 中断概述 57

4.2 中断向量表 57

4.3 中断控制和状态寄存器 62

4.4 中断设置过程 69

4.4.1 中断的初始化 69

4.4.2 中断服务程序 70

4.4.3 陷阱服务程序 70

4.4.4 禁止中断 70

4.5 中断程序示例 71

第5章 系统配置 76

5.1 器件配置综述 76

5.2 FBS配置寄存器 77

5.3 FSS配置寄存器 78

5.4 FGS配置寄存器 79

5.5 FOSCSEL配置寄存器 80

5.6 FOSC配置寄存器 81

5.7 FWDT配置寄存器 81

5.8 FPOR配置寄存器 87

5.9 FICD配置寄存器 88

第6章 振荡器配置与应用 90

6.1 dsPIC33F的时钟概况 90

6.1.1 PLL配置 92

6.1.2 与振荡器相关的寄存器介绍 93

6.2 FRC振荡器 98

6.3 主振荡器(XT、HS或EC) 103

6.4 辅助振荡器(LP或SOSC) 106

6.5 低功耗内部振荡器(LPRC) 107

6.6 时钟切换 108

6.6.1 时钟切换工作原理 108

6.6.2 使能时钟切换 108

6.6.3 振荡器切换步骤 109

第7章 定时器 112

7.1 定时器Timerl 112

7.1.1 特点及简介 112

7.1.2 相关寄存器介绍 114

7.1.3 实例 115

7.2 定时器Timer2/3、Timer4/5、Timer6/7、Timer8/9 123

7.2.1 功能说明 123

7.2.2 相关寄存器 125

7.2.3 32位定时/计数器 126

第8章 输入捕捉IC 130

8.1 概述 130

8.2 相关寄存器介绍 131

第9章 输出比较OC 138

9.1 概述 138

9.2 相关寄存器介绍 138

9.3 输出比较OC的工作方式 140

9.3.1 单次比较模式(低电平有效和高电平有效) 141

9.3.2 翻转模式 143

9.3.3 延迟单次模式 145

9.3.4 连续脉冲模式 147

9.3.5 PWM模式(带故障保护与不带故障保护) 148

第10章 模/数转换器ADC 152

10.1 概述 152

10.2 ADC和DMA 153

10.3 相关寄存器介绍 153

10.4 ADC转换的相关参数与设置 161

10.4.1 ADC转换时钟周期TAD 161

10.4.2 ADC转换触发源 162

10.4.3 采样多路开关 163

10.4.4 ADC参考电压的选择 163

10.5 无DMA模块的ADC实例 164

10.6 带DMA模块的ADC实例 183

第11章 异步串行通信UART 195

11.1 概述 195

11.2 发送器 196

11.3 接收器 197

11.4 UART波特率发生器(BRG) 198

11.5 相关寄存器 198

11.6 UARTx的几种工作方式 202

11.6.1 奇偶校验 202

11.6.2 环回模式 203

11.6.3 自动波特率检测 205

11.6.4 发送间隔字符 207

11.6.5 UARTx与DMA 208

第12章 SPI通信接口 213

12.1 简介 213

12.2 相关寄存器 215

12.3 SPI模块的工作模式 218

12.3.1 8位/16位模式 218

12.3.2 主/从模式 219

12.3.3 SPI帧模式 220

12.4 相关工作模式的时序图 220

第13章 I2C通信接口 233

13.1 简介 233

13.2 波特率发生器 234

13.3 I2C地址 234

13.4 I2C相关控制寄存器 236

13.5 I2C总线特性 240

13.5.1 I2C协议 241

13.5.2 I2C报文协议的几个基本内容 242

13.6 作为主器件在单主机环境下通信 243

13.6.1 产生启动总线事件 244

13.6.2 发送数据到从器件 244

13.6.3 接收来自从器件的数据 245

13.6.4 应答产生 246

13.6.5 产生停止总线事件 246

13.6.6 产生重复启动总线事件 246

13.7 作为从器件通信 246

13.7.1 检测启动和停止条件 247

13.7.2 检测地址 247

13.7.3 接收来自主器件的数据 250

13.7.4 发送数据到主器件 254

第14章 电机控制PWM模块 272

14.1 简介 272

14.2 PWM的时基与工作模式 274

14.2.1 PWM的时基 274

14.2.2 PWM的工作模式 274

14.2.3 PWM的分频 275

14.2.4 PWM的周期 276

14.2.5 PWM对齐方式 276

14.2.6 PWM占空比比较单元 278

14.2.7 互补PWM操作 279

14.2.8 死区发生器 279

14.2.9 PWM输出引脚及相关控制 280

14.2.10 PWM故障引脚 282

14.2.11 PWM更新锁定 283

14.2.12 PWM特殊事件触发器 283

14.2.13 CPU休眠模式与空闲模式下的PWM操作 283

14.3 PWM的相关寄存器 284

14.4 MCPWM的应用实例 291

第15章 正交编码器接口QEI模块 315

15.1 概述 315

15.2 相关寄存器介绍 316

15.3 16位向上/向下位置计数器模式 319

15.3.1 位置计数器错误检查 319

15.3.2 位置计数器复位 319

15.4 x2与x4模式的区别 320

15.5 POS1CNT与MAX1CNT匹配复位计数器 321

15.6 索引脉冲复位计数器 321

15.7 可编程数字噪声滤波器 322

15.8 备用16位定时/计数器 322

15.9 正交编码器接口中断 323

第16章 直接数据存取控制器DMA 325

16.1 简介 325

16.2 DMA寄存器 326

16.3 DMA工作模式 331

16.3.1 字节或字传输 331

16.3.2 寻址模式 331

16.3.3 DMA传输方向 332

16.3.4 空数据外设写模式 332

16.3.5 连续数据块或单数据块的工作 332

16.3.6 乒乓模式 333

16.3.7 手动传输模式 333

16.3.8 DMA请求源选择 333

16.4 DMA中断和陷阱 333

16.5 DMA实例 334

第17章 CAN总线模块ECAN 343

17.1 概述 343

17.2 帧类型 344

17.3 工作模式 345

17.3.1 初始化模式 345

17.3.2 禁止模式 346

17.3.3 正常工作模式 346

17.3.4 监听模式 346

17.3.5 监听所有报文模式 347

17.3.6 环回模式 347

17.4 报文接收 347

17.4.1 接收缓冲器 347

17.4.2 FIFO缓冲器模式 347

17.4.3 报文接收过滤器 347

17.4.4 报文接收过滤器屏蔽寄存器 348

17.4.5 接收错误 348

17.4.6 接收中断 348

17.5 报文发送 349

17.5.1 发送缓冲器 349

17.5.2 发送报文优先级 349

17.5.3 发送过程 349

17.5.4 远程发送请求的自动处理 350

17.5.5 中止报文发送 350

17.5.6 发送错误 350

17.5.7 发送中断 350

17.6 波特率设置 351

17.6.1 位时序 351

17.6.2 预分频比设置 352

17.6.3 传播时间段 352

17.6.4 相位缓冲段 352

17.6.5 采样点 352

17.6.6 同步 352

17.7 相关寄存器 353

附录A 内建函数介绍 369

A.1 内建函数列表 369

A.2 内建函数 370

参考文献 391