DSP片上外设资料_第1页
DSP片上外设资料_第2页
DSP片上外设资料_第3页
DSP片上外设资料_第4页
DSP片上外设资料_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

会计学1DSP片上外设资料C54xDSP具有的主要外设

通用I/O引脚定时器时钟发生器软件可编程的等待状态发生器可编程的分区转换模块主机接口(HPI)

串行接口,包括标准同步串行接口、带缓冲的串行接口(BSP)、多通道缓冲串行接口(McBSP)和时分复用串行接口(TDM)直接存储器访问(DMA)控制器第1页/共32页§9.1片内外设映射寄存器地址范围:0020h—005Fh(第0页数据页面

)存储器映射控制寄存器可以控制外设:设置和清除控制寄存器的位可以使能、禁止、初始化和动态重配置外设器件。

存储器映射数据寄存器可以从外设取数据或者将数据传输到外设。C5402的片内外设映射寄存器第2页/共32页第3页/共32页第4页/共32页§9.2通用I/O

C54xDSP提供了两个通用I/O引脚

分支转移控制输入引脚(/BIO):用于监视外设器件的状态。外部标志输出引脚(XF):为外设提供信号,XF引脚由软件控制。设置ST1寄存器的XF位为1:SSBXXF清除XF位为0:RSBX1,13第5页/共32页BC和XC指令第6页/共32页BC和XC指令的条件第7页/共32页§9.3定时器片内定时器可以用于周期地产生中断。最高分辨率为处理器的CPU时钟速度。通过带4位预定标器的16位计数器,获得较大范围的定时器频率。

§9.3.1定时器寄存器片内定时器是可编程的,由三个16位的寄存器组成定时器寄存器(TIM):减1计数器,可加载周期寄存器(PRD)的值。定时器周期寄存器(PRD):时间常数寄存器,用于重载定时器寄存器(TIM)。定时器控制寄存器(TCR):包含定时器的控制和状态位。第8页/共32页§9.3.1定时器寄存器—续定时器的寄存器

定时器号定时器地址寄存器描述定时器00024hTIM定时器寄存器0025hPRD定时器周期寄存器0026hTCR定时器控制寄存器定时器1(仅C5402有)0030hTIM1定时器1寄存器0031hPRD1定时器1周期寄存器0032hTCR1定时器1控制寄存器第9页/共32页§9.3.1定时器寄存器—TCR位名称复位时的值功能位15~12保留位-读总为0位11位10SoftFree00Soft与Free位一起结合使用,决定当在高级语言调试时遇到断点时定时器的状态。

FreeSoft定时器状态

00定时器立即停止工作

01定时器减到0时,停止工作

1X定时器继续运行位9~6PSC-4位的预定标计数器(减1计数器)当PSC减到0时或者定时器复位:PSC加载TDDR的内容,TIM减少1位5TRB-定时器重载。当TRB复位时(=1),复位片内定时器。TIM加载PRD中的值,而PSC加载TDDR的值,TRB读总为0位4TSS0定时器停止状态。停止或启动片内定时器。复位时,TSS被清除并且定制其立即启动计数。TSS=0时,计数器开始工作TSS=1时,计数器停止工作位3~0TDDR0000定时器分频系数。指定片内定时器的分频系数(周期)。当PSC减计数到0时,PSC载入TDDR的内容第10页/共32页§9.3.2定时器操作主定时器模块:由PRD和TIM组成预定标器模块:由TCR的TDDR和PSC位组成定时器由CPU提供时钟系统复位定时器重载定时器分频系数(4bit)预定标计数器(4bit)0:启动1:停止定时器中断送到CPU定时器输出引脚(84)第11页/共32页§9.3.2定时器操作—续定时器中断的周期:TOUT周期=(TDDR+1)×(PRD+1)×CLKOUTCLKOUT为CPU时钟周期,

PRD为定时器周期值,

TDDR为定时器分频系数。当复位时,PRD=FFFFH,TIM=FFFFH,TDDR=0H,TSS=0

(可见复位时,定时器已经开始工作)第12页/共32页§9.3.2定时器操作—续定时器可用于产生外设电路(如模拟接口电路)所需的采样时钟信号。一种方法是使用TOUT信号为外设提供时钟;另一种方法是利用中断,周期地读一个寄存器。1.初始化定时器的步骤:

(1)将TCR中的TSS位置1,停止定时器。

(2)加载PRD。

(3)重新加载TCR:加载TDDR,

TSS=0重新启动定时器

TRB=1复位片内定时器

(TIM加载PRD中的值,而PSC加载TDDR的值)第13页/共32页§9.3.2定时器操作—续2.开放定时器中断的操作步骤

(假定INTM=1:所有可屏蔽中断被禁止):

(1)将IFR中的TINT位置1,清除尚未处理完(挂起)的定时器中断。

(2)将IMR中的TINT位置1,使能定时器中断。

(3)将ST1中的INTM位清0,全局使能中断。例:CPU时钟频率10MHz,要求每秒钟执行一个中断服务程序,问如何设置寄存器PRD和TDDR的值

?第14页/共32页§9.4时钟发生器§9.4.1时钟发生器的硬件连接时钟发生器可以采用两种方法实现:(1)使用具有内部振荡电路的晶体振荡器(必须配置CLKMD引脚以使能内部振荡器)(2)使用外部时钟(可以采用封装好的晶体振荡器,此时内部振荡器无效)

C54xDSP的时钟发生器包括一个内部振荡器和一个锁相环(PLL)C54xDSP有两种类型的PLL:硬件可配置的;软件可编程的NC(不连接)外部时钟信号晶体振荡器GNDNC输出VDD第15页/共32页§9.4.2硬件可配置的PLL硬件配置的PLL:就是通过配置C54x的3个引脚CLKMD1、CLKMD2和CLKMD3的状态,来选定时钟方式。

模式选择引脚

时钟模式CLKMD1CLKMD2CLKMD3选项1选项2000使用外部时钟源,PLL×3使用外部时钟源,PLL×5110使用外部时钟源,PLL×2使用外部时钟源,PLL×4100使用内部振荡器,PLL×3使用内部振荡器,PLL×5010使用外部时钟源,PLL×1.5使用外部时钟源,PLL×4.5001使用外部时钟源,时钟频率除以2使用外部时钟源,时钟频率除以2111使用内部振荡器,时钟频率除以2使用内部振荡器,时钟频率除以2101使用外部时钟源,PLL×1使用外部时钟源,PLL×1011

停止模式

停止模式第16页/共32页§9.4.3软件可配置的PLL具有软件可编程PLL的DSP器件可以选用两种时钟方式之一来配置:

(1)PLL模式—倍频:CLKIN×倍频系数(从0.25~15共31个)(2)DIV模式—分频:CLKIN除以2或41.复位时的时钟模式(由3个外部引脚的状态所决定)CLKMD1CLKMD2CLKMD3CLKMD复位值时钟模式000E007h使用内部振荡器,PLL×150019007h使用内部振荡器,PLL×100104007h使用内部振荡器,PLL×51001007h使用内部振荡器,PLL×2110F007h使用内部振荡器,PLL×11110000h使用内部振荡器,1/2(禁止PLL)101F000h使用内部振荡器,1/4(禁止PLL)011-保留(旁路模式)第17页/共32页§9.4.3软件可配置的PLL—续软件可编程PLL的方法:对16位存储器映射时钟模式寄存器(CLKMD)编程加载PLL,以配置所要求的时钟方式。CLKMD(地址为58h):包含定时器的控制和状态位第18页/共32页§9.4.3软件可配置的PLL—续位名称功能15~12PLLMULPLL乘法系数(乘法器)。11PLLDIVPLL乘法系数(除法器)。10~3PLLCOUNTPLL计数器值。每16个输入时钟CLKIN到来后PLL计数器减1。(提供牵引时间:从PLL工作到PLL提供稳定时钟所需的时间)PLL计数器可以用于确保处理器直到PLL锁定之后才被锁定,以便只有有效的时钟信号送到DSP2PLLON/OFFPLL开/关。与PLLNDIV一起使能或禁止时钟发生器的PLL部分PLLON/OFFPLLNDIVPLL状态

00关

01开

10开

11开1PLLNDIVPLL时钟发生器选择。PLLNDIV=0时,工作在分频器(DIV)模式PLLNDIV=1时,工作在PLL模式0PLLSTATUSPLL状态。表示时钟发生器的工作模式:PLLSTATUS=0时,分频器(DIV)模式PLLSTATUS=1时,PLL模式第19页/共32页§9.4.3软件可配置的PLL—续PLL的乘法系数(CLKOUT=CLKIN×乘法系数)PLLNDIVPLLDIVPLLMUL乘法系数0X0~140.5(/2)0X150.25(/4)100~14PLLMUL+110151(旁路)110或偶数(PLLMUL+1)÷211奇数PLLMUL÷4第20页/共32页§9.4.3软件可配置的PLL—续2.软件可编程PLL的编程注意事项(1)使用PLLCOUNT可编程锁定定时器PLL锁定定时器是一个减1计数器每16个CLKIN计数器减1锁定延迟时间可以设置为0~4080(255×16)个CLKIN周期。公式

TCLKIN为输入时钟周期,LockupTime为所要求的PLL锁定时间。为了安全,也可以将PLLCOUNT设置为全1,即最大值第21页/共32页§9.4.3软件可配置的PLL—续第22页/共32页§9.4.3软件可配置的PLL—续(2)时钟模式由DIV模式转换为PLL模式通过修改PLLMUL、PLLDIV和PLLNDIV位来完成只有在DIV模式时,才能改变以下几个值:PLLMUL,PLLCOUNT,PLLON/OFF一旦PLLNDIV位被置1,PLLCOUNT定时器开始减计数直到0。当完成了PLL模式转换时,CLKMD的PLLSTATUS位读为1。例:C549DSP转换DIV模式为PLL×3模式,输入CLKIN频率为13MHz,并且PLLCOUNT=18(十进制):19us/(16/13M)≈16<18STM#0010000010010111b,CLKMD第23页/共32页§9.4.3软件可配置的PLL—续(3)时钟模式由PLL模式转换为DIV模式通过加载CLKMD寄存器来完成PLLNDIV=0,选择DIV模式设置PLLMUL位从PLL模式转换为DIV模式时,会在一个短暂的延迟后完成这两种模式之间的转换

,所以不用设置PLLCOUNT当完成了DIV模式转换时,CLKMD寄存器的PLLSTATUS位读为0例:从PLL×3模式→DIV/2模式。

STM#0b,CLKMD;转换为DIV模式TstStatu:LDMCLKMD,AAND#01b,A;查询PLLSTATUS位

BCTstStatu,ANEQ;ANEQ表示(A)≠0

第24页/共32页§9.4.3软件可配置的PLL—续(4)改变PLL乘法系数

(思想:PLL→DIV→PLL,因为只有在DIV模式时,才能改变以下几个值:PLLMUL,PLLCOUNT,PLLON/OFF)步骤:

(1)清除PLLNDIV位为0,选择DIV模式。

(2)查询PLLSTATUS位,直到该位变为0,表示DIV模式有效。

(3)修改CLKMD,设置PLLMUL、PLLDIV和PLLNDIV位,以获得所期望的频率乘法系数。

(4)设置PLLCOUNT位为所期望的锁定时间。

第25页/共32页§9.4.3软件可配置的PLL—续注:在除以2模式和除以4模式之间的转换是不可能的。为了转换这两种模式,时钟发生器必须首先设置为PLL模式,然后设置回期望的除数配置的DIV模式。例:将时钟模式从PLL×(X)转换为PLL×1:

STM#0b,CLKMD;转换为DIV模式TstStatu:

LDMCLKMD,AAND#1b,A;查询PLLSTATUS位

BCTstStatu,ANEQSTM#0000001111101111b,CLKMD

;转换为PLL×1模式第26页/共32页§9.4.3软件可配置的PLL—续(5)紧跟复位后的PLL操作复位后,时钟模式由三条外部引脚的值决定,即CLKMD1、CLKMD2和CLKMD3。通过修改CLKMD的内容,可以很容易实现从初始时钟模式向任何其他模式的转换。

如果使用了带外部晶振的内部振荡器,则期间的CLKMD引脚在复位时必须进行配置,以使能内部振荡器例:

产生4ms方波的程序。其中:CPU时钟由10MHz倍频到100MHz,采用定时器0,四分频:TDDR=3+1=4;PRD0=49999+1=50000,即每2ms定时器产生一次中断,方波周期为4ms。程序名称:Timer.pjt

第27页/共32页§9.5软件可编程的等待状态发生器作用:CPU与慢速设备进行接口等待状态发生器是一种软设备,完全由软件等待状态寄存器(SWWSR)来控制。软件等待状态控制寄存器(SWCR)中的软件等待状态乘数位(SWSM)定义等待状态数的倍数是1还是2。在访问周期内最多可以插入14个等待时钟周期。

第28页/共32页SWWSR的位描述位名称功能15XPA扩展程序地址控制位。选择由程序字段所选择的地址范围。XPA=0则不扩展,XPA=1则扩展。14~12I/OI/O空间位。该位段值(0~7)指定对0000~FFFFh的I/O空间的插入等待状态数11~9数据数据空间位。该位段值(0~7)指定对8000~FFFFh的数据空间的插入等待状态数8~6数据数据空间位。该位段值(0~7)指定对0000~7FFFh的数据空间的插入等待状态数5~3程序程序空间位。该位段值(0~7)指定如下程序空间的插入等待状态数:XPA=0:xx8000~xxFFFFhXPA=1:400000~7FFFFFh2~0程序程序空间位。该位段值(0~7)指定如下程序空间的插入等待状态数:XPA=0:xx0000~xx7FFFhXPA=1:000000~3FFFFFh第29页/共32页

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论