编辑推荐
本书以TMS320F2833x DSP的开发为主线,注重“实践为先”、“由感性到理性”等创新教学方法,引导初学者循序渐进、有序有效地学习TI公司新型的浮点DSP:F2833x系列。
(1)带着疑问去学习,实践为先,循序渐进
(2)软件和硬件两手抓,两手都要硬
(3)本书配套了海量的资料,包括所有实例的源代码、常用的调试工具和电路图,还自建了大容量的FTP服务器,服务器上有海量的资料、文献、教学视频、开发工具等,服务器24小时运行,为读者服务。
内容简介
《TMS320F28335 DSP开发实战:模块精讲/电子设计与嵌入式开发实践丛书》以TMS320F2833x DSP的开发为主线,注重“实践为先”、“由感性到理性”等创新教学方法,引导初学者循序渐进、有序有效地学习TI公司新型的浮点DSP: F2833x系列。本书讲述了CCS开发环境的搭建、仿真器的配置和链接以及如何使用CCS,很小系统的设计和调试,并基于很小系统进一步讲解DSP的各 个外设,包括SCI、时钟、定时器、看门狗、中断等。每个模块都以一个实例作为引子,引导读者思考,带着疑问和求知欲望去寻找答案,讲述模块的构架、寄存 器和理论知识,并最终用这些理论来实践引子所讲述的实例。讲解实例的硬件设计、软件流程图、代码编写以及电路板的调试和改进,从而达到理论实践相结合、软 件硬件俱到的效果。
本书配套了海量的资料,包括所有实例的源代码、常用的调试工具和电路图,还自建了大容量的FTP服务器: ftp://ftp.52kfb.com:2100。服务器上有海量的资料、文献、教学视频、开发工具等,服务器24小时运行,为读者服务。
本书可供高等院校电子、通信、计算机、自动化控制、测控技术和电力电子专业的本科生和研究生作为“数字信号处理原理和应用”的相关教材和实验指导书,也可作为数字信号处理器应用开发工程师的参考书。
目录
第1章 纵观F2833x
1.1 DSP的典型应用
1.2 2833x/2823x和281x的对比
1.2.1 对比引脚和封装
1.2.2 对比供电
1.2.3 对比存储器
1.2.4 对比Flash和OTP
1.2.5 对比引导启动
1.2.6 对比时钟和系统控制
1.2.7 对比GPIO
1.2.8 对比外设
1.2.9 对比中断
1.3 F2833x和F2823x的对比
1.3.1 特性
1.3.2 同系列对比
1.3.3 引脚说明
1.4 如何开始DSP学习和应用
1.4.1 硬件开发工具
1.4.2 软件开发工具
1.4.3 参考资料及文献
1.5 本章小结
第2章 最小系统设计
2.1 引子
2.2 DSP及附属电路
2.3 引导模式跳线设计
2.4 复位模块设计
2.4.1 手动复位
2.4.2 仿真器重启
2.4.3 复位时序
2.5 时钟设计
2.6 总线扩展内存设计
2.7 电源设计
2.7.1 所需的电源类型
2.7.2 上电顺序
2.7.3 供电模块
2.8 JTAG接口设计
2.9 A/D模块设计
2.10 GPIO及引脚扩展设计
2.11 串行通信模块设计
2.12 PCB布局布线
2.12.1 PCB板的选择
2.12.2 布局要点
2.12.3 电源的处理
2.12.4 布线要点
2.13 板子焊接和调试
2.13.1 电源模块
2.13.2 复位模块
2.13.3 焊接DSP芯片
2.13.4 下载程序并运行
2.13.5 外部存储器的焊接
2.13.6 串行通信模块的焊接
2.14 本章小结
第3章 CCS操作入门
3.1 安装配置CCS
3.1.1 CCS 3.3
3.1.2 CCS 5.1
3.2 安装配置仿真器
3.2.1 510系列
3.2.2 XDS100
3.3 示例工程
3.3.1 官方示例包
3.3.2 使用示例、快速入门
3.4 如何新建工程
3.5 编译并下载程序
……
第4章 F28xxx内部构架综述
第5章 时钟模块
第6章 串行通信接口模块
第7章 定时器模块
第8章 看门狗模块
第9章 PIE模块
附录A 电路图
参考文献
后记
前言/序言
亲爱的读者朋友,相信您是带着对DSP的好奇、求知甚至热爱来翻开这本书的。DSP为何物?有着什么样的特点?在这个日新月异的信息社会,应该如何学习DSP,从而可以快速入门DSP,掌握DSP并应用DSP呢?
您也许是一位在校学生,也许是一位在职工程师,或者是一位老师、教授。您也许正在计划如何使用DSP来完成课程设计/毕业设计,却苦于没有基础,身边的同学朋友也不懂; 也许正苦于如何完成领导布置下来的任务,要用DSP来完成某种产品的设计,却受困于没有接触过,不懂如何下手; 或者正准备学习一门新技术,以便以后跳槽,寻求更好的发展,却不知如何学习DSP; 又或者接触DSP已有一段时间,却没什么进展,总是在门口徘徊。上述情节是笔者见过的众多DSP初学者所面临的几种典型困扰,总结起来有以下几点:
身边没有DSP高手,无法请教别人。就算有高手,却由于时间、空间的限制,请教不便,若是有某种好的请教方式、讨论方式就完美了。
自学又不知道怎么下手,从哪里突破,总觉得毫无头绪。
资料、文献、视频不好找,在网上找的论坛,帖子太零散,没有系统地讲述某个模块; TI官网的文档基本是英文的,自己英文水平太差,专业术语很多,几乎看不懂; 本土的中文文档又比较少,满足不了求知欲。
想做硬件实验,想调试程序,找来一个开发板,却发现开发板的文档不全,仅仅是简单的步骤说明,却没有模块的详细解说。而找来一本书,想学习模块知识、寄存器,却发现介绍得太理论化,不知如何用于实践。实践和理论严重脱节,无法对接!
本书致力于解除DSP初学者的入门烦恼,它不仅仅是一本书,几百页纸,更是一个网站、一个论坛、一个圈子、一群爱好DSP的工程师,不仅配套了开发板、学习板、仿真器,也配套了学习文档、资料、视频等。正如那句话所说: 想走得快,一个人; 想走得远,一群人。来吧,加入这个学习DSP的圈子,有了你的加入,我们将会走得更远!
DSP技术简介
DSP英文全称为Digital Signal Processing,中文意思是“数字信号处理”,是电子科学、计算机科学里的一个热门领域。另外,DSP也是Digital Signal Processor的简称,中文意思是“数字信号处理器”,广泛用于工控、医疗仪器、航天科技、军事、视频/音频、通信、电力控制
TMS320F28335 DSP开发实战——模块精讲
等领域。DSP不仅是实际产品的应用,在学校也有对应的课程,相关的课程包括信号与系
统、数字信号处理(讲述理论为主)和数字信号处理器(以实践为主)、通信原理等。
对比其他系列的MCU,比如ARM系列、STM系列,可能大家都有一种感觉: DSP价格贵,且主频比不上别的产品。但深入了解之后,就会发现,DSP才是最适合工控的。
首先,算法基本可以归结为加和乘。针对这类算法应用,DSP专门优化了硬件和软件支持库,拥有硬件乘法器、加法器、桶形移位器等,F2833x更支持硬件浮点。TI公司开发了大量的算法库,可以方便移植使用。使用现成的方案和算法库,有助于大大加快产品研发的速度,缩短产品上市时间。
其他类型的CPU就算主频再快,也仅仅是CPU内部运算可以快一点而已,外部功率器件(包括IGBT等)的响应速度一般也就为20kHz,再快的主频也控制不了慢速的功率器件。另外,DSP有着其他CPU所不具备的硬件资源: 高分辨率多通道PWM、QEP、CAP、高速多通道A/D等,这些外设都是工控领域的绝佳搭配。例如,F2833x的PWM、A/D是高分辨率、高速、多通道的,并拥有硬件上的斩波功能,这是软件无法比拟的,可以媲美模拟电路的电流调配效果。
C2000系列DSP属于TI公司经营多年的成熟产品,其稳定性久经考验,有目共睹。综合看来,虽然DSP主频并不起眼,但丰富的外设综合起来的强劲性能让DSP在工控领域独领风骚!
若干年前,TI公司C2000系列DSP的主打产品是F240x,之后升级成F281x,可能大家听说过F2407和F2812这两个型号。F2833x是TI重磅推出的新一代DSP,不仅添加了DMA、硬件浮点单元等功能,对于上一代DSP已有的外设也做了很多加强措施,包括将PWM升级为HRPWM。F2833x代表以后TI C2000系列DSP的发展新方向,也是TI重点推广的芯片。
刘向宇
2015年10月
《数字信号处理核心技术与实践应用》 内容简介 本书是一本深入探讨数字信号处理(DSP)核心技术及其在实际工程中应用的高级教程。全书紧密围绕DSP理论的精髓,结合当前业界主流的算法和工具链,旨在为读者提供一套系统、全面且极具实践价值的学习体系。本书特别注重理论与实践的结合,通过大量的实例分析和代码示例,帮助读者掌握DSP开发的关键技能,能够独立完成复杂的信号处理项目。 第一部分:DSP理论基础与算法精讲 本部分将从DSP的根本原理出发,层层递进,深入剖析各种经典的数字信号处理算法。 第一章:数字信号处理概述与基本概念 信号的分类与表示: 详细介绍模拟信号、离散信号、数字信号的定义、特性及其相互转换。重点讲解信号的采样、量化和编码过程,以及理想采样定理与实际采样误差的分析。 系统模型的建立: 阐述线性时不变(LTI)系统的概念、特性和描述方法,包括差分方程、系统函数、脉冲响应等。介绍因果性、稳定性等重要系统性质的判断。 傅里叶分析: 深入解析离散时间傅里叶变换(DTFT)、离散傅里叶变换(DFT)及其快速傅里叶变换(FFT)算法。重点讲解频谱分析、频率域滤波的原理和应用,以及周期信号、非周期信号在频域的特性。 Z变换与滤波器设计: 系统介绍Z变换及其性质,用于分析和设计离散时间系统。深入讲解IIR(无限冲激响应)滤波器和FIR(有限冲激响应)滤波器的设计原理,包括巴特沃斯、切比雪夫、凯元等滤波器类型,以及窗函数法、频率采样法等FIR滤波器设计方法。 第二章:高级数字信号处理算法 自适应滤波算法: 详细介绍最小均方(LMS)算法及其变种(如NLMS、RLS),阐述其在噪声消除、均衡、预测等方面的应用原理。通过具体算例展示其收敛特性和性能。 谱估计方法: 探讨周期图法、Welch法、多窗法等经典谱估计方法,分析其优缺点。介绍AR、MA、ARMA模型在谱估计中的应用,以及Pisarenko谐波分解、MUSIC等高分辨率谱估计技术。 小波变换及其应用: 阐述小波变换的基本原理,包括连续小波变换(CWT)和离散小波变换(DWT)。重点介绍多分辨率分析,以及小波去噪、小波压缩、特征提取等实际应用。 多速率信号处理: 讲解抽取(Decimation)和插值(Interpolation)的基本原理,以及多速率滤波器的设计。分析其在变采样率系统、通信系统中的重要作用。 第二部分:DSP处理器架构与开发实践 本部分将聚焦于DSP处理器的硬件架构和软件开发流程,为读者提供深入的实践指导。 第三章:DSP处理器架构解析 通用DSP架构特性: 讲解DSP处理器与通用微处理器在架构上的核心区别,如哈佛架构、数据写入单元(DWU)、指令流水线、硬件乘累加(MAC)单元等。 典型DSP指令集与寻址模式: 深入分析DSP指令的特点,如向量指令、地址生成单元(AGU)等,以及常用的寻址模式(如位反转寻址、循环寻址),理解它们如何优化信号处理运算。 中断系统与DMA控制器: 讲解DSP的中断处理机制,包括中断向量表、中断优先级、中断响应流程。详细阐述直接存储器访问(DMA)控制器的功能和工作原理,以及如何利用DMA提高数据传输效率。 片内外设接口: 介绍DSP处理器常见的片上外设,如定时器、PWM控制器、ADC/DAC接口、通信接口(如SPI, I2C, UART)等,并分析其工作原理和配置方法。 第四章:DSP软件开发流程与工具链 开发环境搭建: 详细介绍主流DSP开发环境的搭建过程,包括交叉编译器、汇编器、链接器、调试器等。 汇编语言与C语言混合编程: 讲解如何在C语言项目中嵌入汇编代码,以优化关键算法的性能。分析汇编与C语言之间的调用约定和数据传递方式。 DSP算法的C/C++实现: 提供大量使用C/C++语言实现DSP算法的示例,包括滤波器、FFT、自适应滤波等。强调代码的可读性、效率和可移植性。 性能优化技术: 深入探讨DSP程序性能优化的各种方法,如算法优化、代码优化(如循环展开、函数内联、常量折叠)、指令级并行性利用、内存访问优化等。 调试与仿真: 介绍使用仿真器、硬件调试器进行程序调试的方法,包括断点设置、单步执行、变量监视、内存查看等。讲解如何利用逻辑分析仪、示波器等硬件工具辅助调试。 第三部分:DSP在典型工程中的应用实践 本部分将通过一系列精心设计的工程实例,展示DSP理论与实践的深度融合,帮助读者理解DSP在各领域的实际价值。 第五章:通信系统中的DSP应用 调制解调技术: 介绍ASK, FSK, PSK, QAM等数字调制解调技术的原理,以及如何在DSP上实现。 信道编码与解码: 探讨卷积码、BCH码、LDPC码等纠错编码技术,以及其在DSP中的实现。 OFDM技术: 详细讲解正交频分复用(OFDM)的原理,包括IFFT/FFT、循环前缀等,以及其在无线通信中的应用。 软件定义无线电(SDR)基础: 介绍SDR的概念,以及DSP在SDR系统中的核心作用,包括信号的产生、接收和处理。 第六章:音频与语音信号处理 音频信号的采集与重构: 讲解ADC/DAC在音频采集和播放中的作用,以及采样率、位深对音质的影响。 音频信号的滤波与均衡: 设计和实现各种音频滤波器,如低通、高通、带通滤波器,以及图形均衡器。 语音识别与合成入门: 介绍语音信号的特征提取方法(如MFCC),以及简单的语音识别模型和语音合成技术。 音频编解码技术: 探讨MP3、AAC等音频压缩算法的基本原理,以及在DSP上的实现。 第七章:图像与视频信号处理 图像采集与预处理: 讲解图像传感器的原理,以及图像去噪、灰度化、边缘检测等预处理算法。 图像变换与特征提取: 介绍傅里叶变换、离散余弦变换(DCT)在图像处理中的应用。讲解SIFT、SURF等特征提取算法。 视频信号处理基础: 阐述视频信号的构成,以及帧内、帧间压缩的基本概念。 DSP在图像识别中的初步应用: 介绍基于DSP的简单目标检测和跟踪算法。 第八章:嵌入式系统中的DSP加速 DSP与MCU协同设计: 探讨DSP与微控制器(MCU)在嵌入式系统中的配合工作模式,以及如何构建高效的协同处理系统。 实时操作系统(RTOS)在DSP中的应用: 讲解RTOS如何管理DSP任务,实现多任务并发处理,提高系统实时性。 电源管理与低功耗设计: 介绍DSP处理器在低功耗模式下的运行策略,以及如何通过硬件和软件结合实现功耗优化。 分布式DSP系统设计: 探讨如何构建由多个DSP节点组成的分布式信号处理系统,以处理更复杂的任务。 本书特色 理论与实践并重: 每一章节的理论讲解都紧随其实际应用示例,确保读者能够理解“为什么”以及“如何做”。 算法详解与代码实现: 详细剖析各类DSP算法的数学原理,并提供可执行的C/汇编代码示例,方便读者直接移植和学习。 系统性的架构分析: 深入解读DSP处理器的核心架构,帮助读者从硬件层面理解算法实现的性能瓶颈和优化方向。 丰富的工程案例: 涵盖通信、音频、图像等多个领域的典型应用,让读者在解决实际问题的过程中掌握DSP技术。 面向进阶读者: 本书适合有一定C语言基础和数字信号处理初步知识的工程师、研究人员和高校学生。 通过本书的学习,读者将能够深刻理解数字信号处理的精髓,熟练掌握DSP处理器的开发技能,并在实际工程项目中灵活运用DSP技术,解决复杂的设计挑战,推动技术创新。