猜你喜欢
手把手教你学DSP(微课视频版)——基于TMS320F28335的应用开发及实战

手把手教你学DSP(微课视频版)——基于TMS320F28335的应用开发及实战

书籍作者:顾卫钢 ISBN:9787302550686
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:5507
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

本书以美国TI公司32位浮点DSP处理器TMS320F28335的开发为主线,采用生动的语言深入浅出地介绍与DSP开发相关的方方面面,包括DSP开发环境的搭建、新工程的建立、CCS6的使用、CMD文件的编写、硬件电路的设计、存储器的映像、三级中断系统、FLASH代码固化以及TMS320F28335的各个外设模块的功能和使用。

作者简介

顾卫钢,男,东南大学博士生,电气工程专业,创办了国内z大的DSP交流论坛,并经营南京傅立叶电子技术有限公司。已出版有图书《手把手教你学DSP——基于TMS320x281x》。

编辑推荐

紧扣读者需求,采用朴实简练的语言,结合生活中丰富形象的例子来讲解DSP开发过程中的疑点和难点,把原本难以理解的知识点尽量生活化、简单化,以便于讲解透彻。

前言

当您翻开这一页的时候,我想您已经准备好踏上征服C2000 DSP的旅程了。或许您对DSP并没有太多的了解,或许您对自己是否能够掌握这门技术还没有足够的信心。我知道,一个人埋头学习,就像独自远行,会孤单、寂寞,困难时更会焦虑、彷徨。如果能有一个伙伴同行,相互关心,相互帮助,我想,这一路上应该会有许多欢声笑语吧。收拾心情,勇敢上路吧!我愿意与您同行,一起开始这段虽然艰辛但也充满乐趣的DSP学习之旅,一起来学习与C2000 DSP开发相关的内容。

TI 公司C2000系列处理器整合了DSP和微控制器的最佳特性,集成了增强型PWM模块EPWM、A/D转换模块ADC、增强型捕获模块ECAP、



C2000简介



增强型正交编码解码模块eQEP、SCI通信接口、SPI外设接口、eCAN总线通信模块、看门狗电路、通用数字I/O口、多通道缓冲串口、外部中断接口等多种功能模块,为功能复杂的控制系统设计提供了方便; 同时由于其性价比高,越来越多地被应用于数字电机控制、工业自动化、电力转换系统、医疗器械及通信设备中。

作者从读者的角度出发,根据多年来采用C2000系列数字信号处理器开发项目的经验,结合以往自身学习过程中曾经遇到过的问题来编写此书。

本书特色

 紧扣读者需求,采用朴实简练的语言,结合生活中丰富形象的例子来讲解DSP开发过程中的疑点和难点,尽量把原本难以理解的知识点写得生活化、简单化,以便于讲解透彻。

 在介绍各外设单元功能的同时,以HELLODSP的HDSPSUPER28335开发板为硬件平台,介绍了相关的应用实例,详细讲解了如何编写工程,并给出了详细的C语言程序清单,所有的程序都经过了验证。

 配套资源丰富,除了硬件板卡与程序外,还有教学视频、PPT课件、C2000助手软件等,极大地方便了C2000的学习。


配套资源,超值服务



 本书提供的程序代码、教学课件、附赠资源等可扫描此处二维码获取。



配套资源



 本书配套微课视频,可扫描书中对应位置的二维码进行观看。

 读者也可访问“TI官网”和“HELLODSP官网”下载相关程序、手册等资源。此外,作者还会定期与读者在论坛进行在线互动交流,解答读者的疑问。

 如需购买C2000相关的开发板、仿真器、实验箱等产品,可以搜索淘宝店铺“傅立叶电子”或者加微信fourier888。

本书主要由顾卫钢编写,参与编写的还有南通大学的张蔚教授,南京瑞途优特信息科技有限公司(原傅立叶电子)的郭巍、李跃威、杨佳峰等。

本书的出版需要感谢清华大学出版社刘星编辑的辛勤付出,感谢东南大学博士生导师林明耀教授和胡仁杰教授的悉心指导,感谢我的妻子徐丹,感谢我的儿子顾徐晨,感谢我的父母及岳父母,感谢我的伙伴陈亚明、李杰、佘峰、董春光、易琴、蒋伟、陈永斌、孙跃、李奇、张仪、宋长婧,感谢我在东南大学的师兄弟和所有关爱我的亲人与朋友。最后,感谢所有关心和支持我工作的用户、朋友和合作者,正是有了你们的帮助,才有了我的成长。

由于本人水平有限,虽尽力完善,但不当之处在所难免,恳请大家批评指正,有兴趣的读者请发送邮件到[email protected]

顾卫钢

2020年2月于南京


目录

目录




第1章TMS320F28335的特性、外设资源及引脚分布


1.1初识TMS320F28335


1.2TMS320F28335的特性


1.3TMS320F28335的片内外设资源


1.4TMS320F28335的引脚分布与引脚功能


1.5开发平台的搭建


习题


第2章TMS320F28335的硬件设计


2.1如何保证TMS320F28335芯片的正常工作


2.2常用硬件电路的设计


2.2.1电源电路


2.2.2时钟电路


2.2.3复位电路


2.2.4JTAG电路


2.2.5外扩RAM电路


2.2.6外扩Flash电路


2.2.7GPIO电平转换电路


2.2.8ADC调理电路


2.2.9串口通信电路


2.2.10CAN电路


2.2.11I2C电路


2.3调试的注意事项


习题


第3章使用C语言操作DSP的寄存器


3.1寄存器的C语言访问


3.1.1了解SCI的寄存器


3.1.2使用位定义的方法定义寄存器


3.1.3声明共同体


3.1.4创建结构体文件


3.2寄存器文件的空间分配


习题


第4章存储器及CMD文件的编写


4.1F28335的存储器


4.1.1F28335存储器的结构


4.1.2F28335存储器的映像


4.1.3F28335各个存储器模块的特点


4.2CMD文件


4.2.1COFF格式和段的概念


4.2.2C语言生成的段


4.2.3CMD文件的编写


习题


第5章时钟和系统控制


5.1振荡器OSC和锁相环PLL


5.2各种时钟信号


5.2.1外设时钟


5.2.2XCLKOUT信号


5.3看门狗电路


5.4低功耗模式


5.5实例: 系统初始化函数


习题


第6章通用输入/输出端口GPIO


6.1GPIO概述


6.2GPIO寄存器


6.3GPIO输入限定功能


6.4GPIO配置步骤


习题


第7章创建一个新工程


7.1控制原理分析


7.2创建工程


7.3编译与调试


7.3.1编译工程


7.3.2下载程序


习题


第8章外部接口XINTF及外扩存储器设计


8.1XINTF概述


8.2XINTF配置


8.2.1时钟信号


8.2.2数据总线宽度和连接方式


8.2.3建立时间、有效时间和跟踪时间


8.2.4XREADY采样


8.2.5访问时序的具体配置


8.3外扩存储器设计


8.3.1硬件设计


8.3.2将变量存放到外扩存储器中


习题


第9章CPU定时器


9.1CPU定时器工作原理


9.2CPU定时器寄存器


9.3分析CPU定时器的配置函数


习题


第10章F28335的中断系统


10.1什么是中断


10.2F28335的CPU中断


10.2.1CPU中断的概述


10.2.2CPU中断向量和优先级


10.2.3CPU中断的寄存器


10.2.4可屏蔽中断的响应过程


10.3F28335的PIE中断


10.3.1PIE中断概述


10.3.2PIE中断寄存器


10.3.3外部中断控制寄存器


10.3.4PIE中断向量表


10.4F28335的三级中断系统分析


10.5成功实现中断的必要步骤


10.6使用CPU定时器0的周期中断控制LED灯的闪烁


习题


第11章模数转换器ADC


11.1F28335内部的ADC模块


11.1.1ADC模块的特点


11.1.2ADC的时钟频率和采样频率


11.2ADC模块的工作方式


11.2.1双序列发生器模式下顺序采样


11.2.2双序列发生器模式下并发采样


11.2.3级联模式下的顺序采样


11.2.4级联模式下的并发采样


11.2.5序列发生器连续自动序列化模式和启动/停止模式


11.3ADC模块的中断


11.4参考电压的选择


11.5ADC模块的寄存器


11.6ADC采样例程


习题


第12章增强型脉宽调制模块ePWM


12.1PWM基础知识


12.2ePWM模块概述


12.3ePWM的子模块


12.3.1时间基准子模块


12.3.2比较功能子模块


12.3.3动作限定子模块


12.3.4死区控制子模块


12.3.5斩波控制子模块


12.3.6故障捕获子模块


12.3.7事件触发子模块


12.4PWM发波与中断的例程


习题


第13章增强型捕获模块eCAP


13.1概述


13.1.1CAP模块的作用


13.1.2eCAP模块简介


13.1.3eCAP工作模式


13.2捕获模式


13.2.1输入信号预分频


13.2.232位计数器及相位控制


13.2.3边沿极性选择


13.2.4CAPx寄存器


13.2.5连续/单次捕获控制


13.2.6中断控制


13.2.7捕获模式总结


13.3捕获应用例程


13.3.1绝对时间模式测量脉冲周期


13.3.2差分时间模式测量脉冲周期


13.3.3绝对时间模式测量脉冲占空比


13.3.4差分时间模式测量脉冲占空比


13.4APWM模式


13.5APWM应用例程


13.5.1APWM模式下单路PWM生成


13.5.2APWM模式下相位控制多路PWM生成


习题


第14章增强型正交编码脉冲模块eQEP


14.1概述


14.1.1增量式编码器


14.1.2转速测量


14.1.3eQEP模块的整体结构


14.2正交解码单元


14.2.1引脚属性配置


14.2.2解码信息


14.3位置计数器及控制单元


14.3.1位置计数器的输入模式


14.3.2位置计数器的运行模式


14.3.3位置计数器的锁存


14.3.4位置计数器的初始化


14.3.5位置比较单元


14.4电机测速


14.4.1测频法


14.4.2测周法


14.5看门狗电路


14.6eQEP模块的中断


14.7使用eQEP进行电机测速的例程


习题


第15章串行通信接口SCI


15.1SCI模块的概述


15.1.1SCI模块的特点


15.1.2SCI模块信号总结


15.2SCI模块的工作原理


15.2.1SCI模块发送和接收数据的工作原理


15.2.2SCI通信的数据格式


15.2.3SCI通信的数据传输速率


15.2.4SCI模块的FIFO队列


15.2.5SCI模块的中断


15.3SCI多处理器通信模式


15.3.1地址位多处理器通信模式


15.3.2空闲线多处理器通信模式


15.4SCI模块的寄存器


15.5SCI发送和接收例程


习题


第16章串行外设接口SPI


16.1SPI模块的通用知识


16.2F28335 SPI模块的概述


16.2.1SPI模块的特点


16.2.2SPI的信号总结


16.3SPI模块的工作原理


16.3.1SPI主/从工作方式


16.3.2SPI数据格式


16.3.3SPI数据传输速率


16.3.4SPI时钟配置


16.3.5SPI的FIFO队列


16.3.6SPI的中断


16.4SPI模块的寄存器


习题


第17章增强型控制器局域网通信接口eCAN


17.1CAN总线的概述


17.1.1什么是CAN


17.1.2CAN是怎样发展起来的


17.1.3CAN是怎样工作的


17.1.4CAN有哪些特点


17.1.5什么是标准格式CAN和扩展格式CAN


17.2CAN2.0B协议


17.2.1CAN总线帧的格式和类型


17.2.2CAN总线通信错误处理


17.2.3CAN总线的位定时要求


17.2.4CAN总线的位仲裁


17.3F28335 eCAN模块的概述


17.3.1eCAN模块的结构


17.3.2eCAN模块的特点


17.3.3eCAN模块的存储空间


17.3.4eCAN模块的邮箱


17.4F28335 eCAN模块的寄存器


17.4.1邮箱使能寄存器CANME


17.4.2邮箱数据方向寄存器CANMD


17.4.3发送请求置位寄存器CANTRS


17.4.4发送请求复位寄存器CANTRR


17.4.5发送响应寄存器CANTA


17.4.6发送失败响应寄存器CANAA


17.4.7接收消息挂起寄存器CANRMP


17.4.8接收消息丢失寄存器CANRML


17.4.9远程帧请求寄存器CANRFP


17.4.10全局接收屏蔽寄存器CANGAM


17.4.11主控寄存器CANMC


17.4.12位时序配置寄存器CANBTC


17.4.13错误和状态寄存器CANES


17.4.14错误计数寄存器CANTEC/CANREC


17.4.15全局中断标志寄存器CANGIF0/CANGIF1


17.4.16全局中断屏蔽寄存器CANGIM


17.4.17邮箱中断屏蔽寄存器CANMIM


17.4.18邮箱中断级别设置寄存器CANMIL


17.4.19覆盖保护控制寄存器CANOPC


17.4.20TX I/O控制寄存器CANTIOC


17.4.21RX I/O控制寄存器CANRIOC


17.4.22计时邮递计数器CANTSC


17.4.23消息目标计时邮递寄存器MOTS


17.4.24消息目标超时寄存器MOTO


17.4.25超时控制寄存器CANTOC


17.4.26超时状态寄存器CANTOS


17.5F28335 eCAN模块的配置


17.5.1数据传输速率的配置


17.5.2邮箱初始化的配置


17.5.3消息的发送操作


17.5.4消息的接收操作


17.6eCAN模块的中断


17.7手把手教你实现CAN通信


17.7.1CAN消息的发送


17.7.2CAN消息的接收(中断方式)


习题


第18章将程序烧写在Flash中


18.1F28335的上电启动过程


18.2程序在Flash中运行


18.3将函数从Flash复制到RAM中运行


18.4将段从Flash复制到RAM中运行


18.5使用Uniflash烧写程序


习题


参考文献


产品特色