Motorola DSP型16位单片机原理与实践PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:邵贝贝等编著
- 出 版 社:北京:北京航空航天大学出版社
- 出版年份:2003
- ISBN:7810772449
- 页数:291 页
第1章 数字信号处理概论 1
1.1 飞速发展的数字信号处理器 1
1.2 数字信号处理与模拟信号处理 2
1.3 DSP与CPU 3
1.4 Motorola的16位DSP 4
1.4.1 56800系列DSP 4
1.4.2 56800系列DSP片内的外设模块 6
1.4.3 568XX系列DSP的主要应用领域 7
1.4.4 DSP56800系列的开发工具 8
1.4.5 使用增强型内核56800E的16位DSP 5685X系列 9
1.4.6 StarCore DSP系列 10
1.5 Motorola的24位、32位DSP 10
第2章 DSP56800内核结构 12
2.1 算数逻辑单元ALU 12
2.1.1 算数逻辑单元ALU的内部结构 12
2.1.2 算数逻辑单元ALU中的数据格式 12
2.1.3 算数逻辑单元ALU中的数值计算 14
2.2 地址产生单元AGU 15
2.2.1 AGU中的内部结构与寻址方式 15
2.3.1 PCU的内部结构 17
2.2.2 用M01寄存器定义循环缓冲区 17
2.3 程序控制器PCU 17
2.3.2 程序计数器PC与条件码寄存器CCR 18
2.3.3 循环地址寄存器LA,循环次数寄存器LC和硬件堆栈HWS 18
2.3.4 运行模式寄存器OMR 19
2.4 DSP56800的存储空间分配 20
2.5 并行处理的实现 21
2.6 扩展型内核DSP56800E的结构 22
3.1.1 汇编语言的格式 25
3.1.2 常用汇编管理指令 25
3.1 DSP56800汇编语言 25
第3章 DSP56800指令集与汇编语言 25
3.2 DSP56800的寻址方式 27
3.2.1 立即数寻址与绝对地址寻址 27
3.2.2 寄存器直接寻址 27
3.2.3 寄存器间接寻址 27
3.2.4 带有偏移量的寄存器间接寻址 27
3.3 数据传输指令 28
3.2.7 存储器绝对短寻址与I/O短寻址 28
3.2.6 带事后加/减n的寄存器间接寻址 28
3.2.5 带事后加/减1的寄存器间接寻址 28
3.4 乘法与乘/加指令 30
3.5 除法指令DIV 30
3.6 移位指令 31
3.7 算数与逻辑运算指令 32
3.8 DSP56800中的并行处理 34
3.8.1 单并行处理 34
3.8.2 双重并行处理指令 34
3.9 位操作与位测试指令 35
3.10 跳转与返回指令 36
3.11 其他控制指令 37
3.12 规格化指令NORM 37
第4章 DSP56800硬件设计与开发工具制作 38
4.1 简介 38
4.2 开发板各个部分的硬件设计 38
4.2.1 时钟电路 38
4.2.2 串口电路 40
4.2.3 BDM调试工具 40
4.2.6 调试用小灯 43
4.2.4 供电电路 43
4.2.5 复位电路 43
第5章 嵌入式软件开发包SDK 44
5.1 SDK的安装过程 44
5.1.1 安装codewarrior 44
5.1.2 在codewarrior的基础上安装SDK 45
5.2 在SDK中创建一个简单工程的方法 45
5.2.1 产生一个新的SDK工程 45
5.2.2 从新工程中去掉main.c和sampleASM.asm 46
5.2.3 添加应用程序 47
5.2.4 调试程序 48
5.2.5 修改appconfig.h中的错误 48
5.2.6 再次调试程序 49
5.2.7 在主程序中设断点 49
5.2.8 运行程序 49
5.2.9 停止调试 49
5.3 SDK在线帮助和DSP功能函数库 50
5.4.1 配置config.h文件 52
5.4 用DSP实现数据采集的程序 52
5.4.2 编写main.c文件 54
5.5 定时器、中断和小灯驱动 57
5.5.1 配置config.h文件 57
5.5.2 编写main.c文件 57
第6章 定时器、复位和中断控制 59
6.1 定时器简介 59
6.2 定时器特点 59
6.5.1 定时器控制寄存器 60
6.5 定时器的相关寄存器 60
6.4 定时器功能描述 60
6.3 定时器寄存器综述 60
6.5.2 状态和控制寄存器(SCR) 63
6.5.3 比较寄存器#1(CMP1) 65
6.5.4 比较寄存器#2(CMP2) 65
6.5.5 捕捉寄存器(CAP) 66
6.5.6 加载寄存器(LOAD) 67
6.5.7 保持寄存器(HOLD) 68
6.5.8 计数寄存器(CNTR) 68
6.6.2 定时器B(只在DSP56F805和DSP56F807中) 69
6.6 定时器A、B、C、D功能描述 69
6.6.1 定时器A(只在DSP56F803、DSP56F805和DSP56F807中) 69
6.6.3 定时器C 70
6.6.4 定时器D 70
6.7 复位模块 72
6.7.1 复位相关模块中的寄存器 72
6.7.2 上电复位和低电压中断 73
6.7.3 外部复位 73
6.7.4 看门狗模块 73
6.7.5 STOP和WAIT模式的禁止功能 76
6.8 中断控制器 79
6.8.1 中断向量表 79
6.8.2 中断控制器寄存器描述 81
第7章 DSP56800的存储器 84
7.1 Flash存储器 84
7.1.1 Flash(闪速存储器)概述 84
7.1.2 Flash寄存器 84
7.1.3 Flash编程操作 90
7.1.4 应用SDK进行Flash编程 92
7.2.1 外扩存储器接口概述 96
7.2 外扩存储器接口 96
7.2.2 总线控制寄存器BCR 97
7.2.3 外扩存储器举例 97
7.3 存储器配置 98
7.3.1 编译代码 98
7.3.2 Linker Command文件 99
7.3.3 SDK启动步骤 103
第8章 串行通信接口SCI 106
8.1 串行通信协议RS-232标准 106
8.1.1 接口信号 106
8.1.2 电气特性 108
8.1.3 RS-232C连接方法 108
8.1.4 RS-232C标准接口的实现及电平转换 109
8.2 SCI简介 109
8.3.2 RXD引脚 110
8.3.3 DSP56F805 EVM板上的SPI接口 110
8.3 SCI引脚 110
8.3.1 TXD引脚 110
8.4 SCI功能 111
8.4.1 标准不归零NRZ(Non Return to Zero)数据格式 111
8.4.2 SCI发送器 111
8.4.3 SCI接收器 112
8.5 SCI寄存器 112
8.5.1 SCI波特率寄存器SCIBR 113
8.5.2 SCI控制寄存器SCICR 113
8.5.4 SCI数据寄存器SCIDR 115
8.5.3 SCI状态寄存器SCISR 115
8.6 应用SDK开发SCI 116
8.6.1 SCI的初始化 116
8.6.2 SDK中有关SCI的数据结构和命令 116
8.6.3 SDK提供的有关SCI的API 117
8.7 SCI应用开发实例 120
第9章 串行外设接口SPI 124
9.1 SPI的工作原理 124
9.2.3 串行时钟引脚SCLK 125
9.2.2 主出从入引脚MOSI 125
9.2.1 主入从出引脚MISO 125
9.2 SPI引脚 125
9.2.4 从机片选引脚? 126
9.2.5 DSP56F805 EVM板上的SPI接口 127
9.3 SPI工作模式 127
9.3.1 主机模式 127
9.3.2 从机模式 128
9.4 56F8xx系列DSP的SPI寄存器 128
9.4.1 SPI状态控制寄存器SPSCR 128
9.4.2 SPI数据宽度寄存器SPDSR 130
9.5.1 SPI的初始化 131
9.5.2 SDK有关SPI的数据结构 131
9.4.3 SPI接收数据寄存器SPDRR 131
9.5 应用SDK开发DSP的SPI 131
9.4.4 SPI发送数据寄存器SPDTR 131
9.5.3 SDK有关SPI的API 132
9.6 SPI应用开发实例 134
第10章 模数转换器ADC 137
10.1 模数转换器功能简介 137
10.2.1 ADC控制寄存器1——ADC Control Register 1 139
10.2 寄存器概述 139
10.2.2 ADC控制寄存器2——ADC Control Register 2 141
10.2.3 ADC过零控制寄存器ADZCC——ADC Zero Crossing Control Register 141
10.2.4 ADC通道列表寄存器ADLST1和ADLST2——ADC Channel List Registers 142
10.2.5 ADC采样允许寄存器ADSDIS——ADC Sample Disable Register 143
10.2.6 ADC状态寄存器ADSTAT——ADC Status Register 143
10.2.7 ADC域值状态寄存器ADLSTAT——ADC Limit Status Register 145
10.2.8 ADC过零状态寄存器ADZCSTAT——ADC ZERO Crossing Status Register 145
10.2.9 ADC结果寄存器ADRSLT 0~7——ADC Result Registers 145
10.2.10 ADC低高域值寄存器ADHLMT O~7和ADLLMT 0~7——ADC LOW AND HIGH LIMIT Register 146
10.2.11 ADC偏移寄存器ADOFS 0~7——ADC Offset Registers 147
10.3 A/D驱动 147
10.3.1 使用ADC驱动(driver)的步骤 147
10.3.2 详细介绍ADC的驱动 149
第11章 相位检测器 155
11.1 相位检测器的引脚描述 155
11.1.1 A相输入引脚PHASEA 155
11.2 相位检测器的功能描述 156
11.1.4 转换输入引脚HOME 156
11.1.3 输入引脚INDEX 156
11.1.2 B相输入引脚PHASEB 156
11.2.1 正向和反向 157
11.2.2 功能框图 157
11.2.3 用于低速或高速测量的预分频器 158
11.2.4 工作模式 158
11.3 锁存寄存器和初始化寄存器 159
11.4 寄存器定义 159
11.4.1 相位检测器控制寄存器DECCR 160
11.4.3 看门狗定时溢出寄存器WTR 162
11.4.2 滤波器采样间隔寄存器FIR 162
11.4.4 位置差寄存器POSD 163
11.4.5 位置差锁存寄存器POSDH 163
11.4.6 转角寄存器REV 163
11.4.7 转角锁存寄存器REVH 164
11.4.8 高16位位置寄存器UPOS 164
11.4.9 低16位位置寄存器LPOS 164
11.4.10 高16位位置锁存寄存器UPOSH 164
11.4.14 输入监控寄存器IMR 165
11.4.13 低16位初始化寄存器LIR 165
11.4.11 低16位位置锁存寄存器LPOSH 165
11.4.12 高16位初始化寄存器UIR 165
11.4.15 测试寄存器TSTREG 166
11.5 SDK中有关相位检测器的部分 167
11.5.1 相关数据结构 167
11.5.2 与硬件无关的接口函数定义 169
11.5.3 底层设备驱动接口函数定义 174
第12章 脉宽调制模块PWM 178
12.1 PWM脉宽调制模块的主要特性 178
12.2 PWM脉宽调制模块的引脚 179
12.3 PWM脉宽调制模块的寄存器 179
12.4 PWM脉宽调制模块的主要功能描述 179
12.4.1 预分频 179
12.4.2 PWM发生器 180
12.4.3 独立通道模式和互补通道模式 183
12.4.4 死时间产生器 184
12.4.5 软件控制输出 190
12.4.6 PWM发生器参数重载 192
12.4.7 出错保护功能 196
12.4.8 中断 199
12.5 PWM寄存器 199
12.5.1 PWM控制寄存器PMCTL 199
12.5.2 PWM出错控制寄存器PMFCTL 201
12.5.3 PWM出错状态和确认寄存器PMFSA 202
12.5.4 PWM输出控制寄存器PMOUT 203
12.5.5 PWM计数器PMCNT 204
12.5.6 PWM计数模寄存器PWMCM 204
12.5.7 PWM计数值寄存器PWMVAL0~5 204
12.5.8 PWM死时间寄存器PMDEADTM 205
12.5.9 PWM失效映射寄存器PMDISMAP1~2 205
12.5.10 PWM配置寄存器PMCFG 206
12.5.11 PWM通道控制寄存器PMCCR 206
12.5.12 PWM端口寄存器PMPORT 208
13.1.1 与PWM模块相关的几个主要的文件 209
13.1.2 arch.h文件中定义的结构体 209
13.1 PWM模块的编程 209
第13章 PWM模块的SDK编程 209
13.1.3 在pwm.h文件中定义的结构体 210
13.1.4 SDK提供的编程接口 211
13.2 AC交流感应电机的控制 213
13.2.1 流程图 213
13.2.2 相关文件源代码分析 214
13.3.2 电机控制过程 218
13.3.1 直流无刷电机 218
13.3 利用PWM模块实现对直流无刷(BLDC)电机的控制 218
13.2.3 程序运行结果 218
13.3.3 源文件结构和功能分析 219
第14章 CAN控制器局域网模块 224
14.1 CAN的性能特点 224
14.1.1 CAN总线分层结构 225
14.1.2 报文传送和帧结构 226
14.1.3 位编码解码 227
14.2 MSCAN模块 228
14.2.1 特性 228
14.2.2 MSCAN模块结构 229
14.2.3 MSCAN模块操作 235
14.3 范例程序 245
14.3.1 MSCAN初始化 245
14.3.2 MSCAN发送接收中断 247
14.3.3 主程序 247
第15章 数字滤波器的DSP实现 250
15.1 FIR滤波器的DSP实现 250
15.1.1 FIR滤波器原理 250
15.1.2 FIR滤波器的典型程序 251
15.1.3 FIR滤波器的C语言程序 255
15.1.4 SDK的FIR滤波器算法库调用 256
15.2 IIR滤波器的DSP实现 259
15.2.1 IIR滤波器原理 259
15.2.2 IIR滤波器的典型程序 261
15.2.3 IIR滤波器的C语言程序 266
15.2.4 SDK的IIR滤波器算法库 267
第16章 在568xx系列DSP上运行RTOS 271
16.1 在嵌入式系统应用中使用实时操作系统 271
16.2 嵌入式实时内核μC/OS和μC/OS-II 272
16.3 μC/OS和μC/OS-II的特点 273
16.4 实时多任务系统中的一些基本概念 274
16.4.1 不使用RTOS的系统 274
16.4.2 任务与多任务 275
16.4.3 任务切换与调度 275
16.4.4 嵌入式实时多任务系统 275
16.4.5 实时内核(the real time kernel) 276
16.4.6 任务优先级分配 276
16.4.7 优先级反转问题 277
16.4.10 可重入性 278
16.4.9 死锁 278
16.4.8 任务间的竞争 278
16.4.11 时钟节拍 279
16.4.12 信号与信号量(semaphores) 279
16.5 μC/OS的任务调度机制 280
16.6 μC/OS-II与Motorola DSP 283
16.7 向DSP56800上移植μC/OS-II 284
16.8 关于μC/OS-II V2.51 284
16.9 任务栈结构与DSP中断机制 285
16.10 关于在DSP上运行RTOS的讨论 287
- 《语文教育教学实践探索》陈德收 2018
- 《第一性原理方法及应用》李青坤著 2019
- 《计算机组成原理解题参考 第7版》张基温 2017
- 《彼得·布鲁克导演实践研究》邓小玲著 2019
- 《反思性实践》胡红梅, 2019
- 《高含硫气藏开发腐蚀控制技术与实践》唐永帆,张强 2018
- 《高等院校保险学专业系列教材 保险学原理与实务》林佳依责任编辑;(中国)牟晓伟,李彤宇 2019
- 《环境影响评价公众参与理论与实践研究》樊春燕主编 2019
- 《学校特色教育探索与实践》管升起著 2019
- 《刑法归责原理的规范化展开》陈璇著 2019
- 《断陷湖盆比较沉积学与油气储层》赵永胜等著 1996
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019