DSP第9讲片上外设资料

上传人:cel****303 文档编号:243803369 上传时间:2024-09-30 格式:PPT 页数:32 大小:790.50KB
返回 下载 相关 举报
DSP第9讲片上外设资料_第1页
第1页 / 共32页
DSP第9讲片上外设资料_第2页
第2页 / 共32页
DSP第9讲片上外设资料_第3页
第3页 / 共32页
点击查看更多>>
资源描述
*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,DSP第9讲片上外设资料,C54x DSP具有的主要外设,通用I/O引脚,定时器,时钟发生器,软件可编程的等待状态发生器,可编程的分区转换模块,主机接口(HPI),串行接口,包括标准同步串行接口、带缓冲的串行接口(BSP)、,多通道缓冲串行接口(McBSP),和时分复用串行接口(TDM),直接存储器访问(DMA)控制器,9.1 片内外设映射存放器,地址范围:0020h005Fh(第0页数据页面),存储器映射控制存放器可以控制外设:设置和去除控制存放器的位可以使能、制止、初始化和动态重配置外设器件。,存储器映射数据存放器可以从外设取数据或者将数据传输到外设。,C5402的片内外设映射存放器,9.2 通用I/O,C54x DSP提供了两个通用I/O引脚,分支转移控制输入引脚(/BIO):用于监视外设器件的状态。,外部标志输出引脚(XF):为外设提供信号,XF引脚由软件控制。,设置ST1存放器的XF位为1:SSBX XF,去除XF位为0:RSBX 1,13,BC和XC指令,BC和XC指令的条件,9.3 定时器,片内定时器可以用于周期地产生中断。最高分辨率为处理器的CPU时钟速度。通过带4位预定标器的16位计数器,获得较大范围的定时器频率。,9.3.1 定时器存放器,片内定时器是可编程的,由三个16位的存放器组成,定时器存放器(TIM):减1计数器,可加载周期存放器(PRD)的值。,定时器周期存放器(PRD):时间常数存放器,用于重载定时器存放器(TIM)。,定时器控制存放器(TCR):包含定时器的控制和状态位。,9.3.1 定时器存放器续,定时器的存放器,定时器号,定时器地址,寄存器,描 述,定时器0,0024h,TIM,定时器寄存器,0025h,PRD,定时器周期寄存器,0026h,TCR,定时器控制寄存器,定时器1,(仅C5402有),0030h,TIM1,定时器1寄存器,0031h,PRD1,定时器1周期寄存器,0032h,TCR1,定时器1控制寄存器,9.3.1 定时器存放器TCR,位,名 称,复位时的值,功 能,位1512,保留位,-,读总为0,位11,位10,Soft,Free,0,0,Soft与Free位一起结合使用,决定当在高级语言调试时遇,到断点时定时器的状态。,Free Soft 定时器状态,0 0 定时器立即停止工作,0 1 定时器减到0时,停止工作,1 X 定时器继续运行,位96,PSC,-,4位的预定标计数器(减1计数器),当PSC减到0时或者定时器复位:,PSC加载TDDR的内容,TIM减少1,位5,TRB,-,定时器重载。当TRB复位时(=1),复位片内定时器。,TIM加载PRD中的值,而PSC加载TDDR的值,TRB读总为0,位4,TSS,0,定时器停止状态。停止或启动片内定时器。,复位时,TSS被清除并且定制其立即启动计数。,TSS=0时,计数器开始工作,TSS=1时,计数器停止工作,位30,TDDR,0000,定时器分频系数。指定片内定时器的分频系数(周期)。,当PSC减计数到0时,PSC载入TDDR的内容,9.3.2 定时器操作,主定时器模块:由PRD和TIM组成,预定标器模块:由TCR的TDDR和PSC位组成,定时器由CPU提供时钟,系统复位,定时器重载,定时器分频系数(4bit),预定标计数器(4bit),0:启动,1:停顿,定时器中断送到CPU,定时器输出引脚84,9.3.2 定时器操作续,定时器中断的周期:,TOUT周期(TDDR+1)(PRD+1)CLKOUT,CLKOUT为CPU时钟周期,,PRD为定时器周期值,,TDDR为定时器分频系数。,当复位时,PRD=FFFFH,TIM=FFFFH,TDDR=0H,TSS=0,可见复位时,定时器已经开场工作,9.3.2 定时器操作续,定时器可用于产生外设电路(如模拟接口电路)所需的采样时钟信号。一种方法是使用 TOUT信号为外设提供时钟;另一种方法是利用中断,周期地读一个存放器。,1初始化定时器的步骤:,(1)将TCR中的TSS位置1,停顿定时器。,(2)加载PRD。,(3)重新加载TCR:加载TDDR,,TSS=0重新启动定时器,TRB=1复位片内定时器,(TIM加载PRD中的值,而PSC加载TDDR的值),9.3.2 定时器操作续,2开放定时器中断的操作步骤,(假定INTM=1:所有可屏蔽中断被制止):,(1)将IFR中的TINT位置1,去除尚未处理完(挂起)的 定时器中断。,(2)将IMR中的TINT位置1,使能定时器中断。,(3)将ST1中的INTM位清0,全局使能中断。,例:CPU时钟频率10MHz,要求每秒钟执行一个中 断效劳程序,问如何设置存放器PRD 和TDDR的值?,9.4.1 时钟发生器的硬件连接,时钟发生器可以采用两种方法实现:,(1)使用具有内部振荡电路的晶体振荡器 必须配置CLKMD引脚以使能内部振荡器,(2)使用外部时钟 可以采用封装好的晶体振荡器,此时内部振荡器无效,C54x DSP的时钟发生器包括一个内部振荡器和一个锁相环(PLL),C54x DSP有两种类型的PLL:硬件可配置的;软件可编程的,NC(不连接),外部时钟信号,晶体振荡器,GND,NC,输出,V,DD,9.4.2 硬件可配置的PLL,硬件配置的PLL:就是通过配置C54x的3个引脚CLKMD1、CLKMD2和CLKMD3的状态,来选定时钟方式。,模式选择引脚,时钟模式,CLKMD1,CLKMD2,CLKMD3,选项1,选项2,0,0,0,使用外部时钟源,PLL3,使用外部时钟源,PLL5,1,1,0,使用外部时钟源,PLL2,使用外部时钟源,PLL4,1,0,0,使用,内部振荡器,,PLL3,使用,内部振荡器,,PLL5,0,1,0,使用外部时钟源,PLL1.5,使用外部时钟源,PLL4.5,0,0,1,使用外部时钟源,时钟频率除以2,使用外部时钟源,时钟频率除以2,1,1,1,使用内部振荡器,时钟频率除以2,使用内部振荡器,时钟频率除以2,1,0,1,使用外部时钟源,PLL1,使用外部时钟源,PLL1,0,1,1,停止模式,停止模式,9.4.3 软件可配置的PLL,具有软件可编程PLL的DSP器件可以选用两种时钟方式之一来配置:,(1)PLL形式倍频:CLKIN倍频系数(从0.2515共31个),(2)DIV形式分频:CLKIN除以2或4,1复位时的时钟形式(由3个外部引脚的状态所决定),CLKMD1,CLKMD2,CLKMD3,CLKMD复位值,时钟模式,0,0,0,E007h,使用内部振荡器,PLL15,0,0,1,9007h,使用内部振荡器,PLL10,0,1,0,4007h,使用内部振荡器,PLL5,1,0,0,1007h,使用内部振荡器,PLL2,1,1,0,F007h,使用内部振荡器,PLL1,1,1,1,0000h,使用内部振荡器,1/2(禁止PLL),1,0,1,F000h,使用内部振荡器,1/4(禁止PLL),0,1,1,-,保留(旁路模式),9.4.3 软件可配置的PLL续,软件可编程PLL 的方法:对16位存储器映射时钟形式存放器(CLKMD)编程加载PLL,以配置所要求的时钟方式。,CLKMD(地址为58h):包含定时器的控制和状态位,9.4.3 软件可配置的PLL续,位,名 称,功 能,1512,PLLMUL,PLL乘法系数(乘法器)。,11,PLLDIV,PLL乘法系数(除法器)。,103,PLLCOUNT,PLL计数器值。每16个输入时钟CLKIN到来后PLL计数器减1。,(提供牵引时间:从PLL工作到PLL提供稳定时钟所需的时间),PLL计数器可以用于确保处理器直到PLL锁定之后才被锁定,以,便只有有效的时钟信号送到DSP,2,PLLON/OFF,PLL开/关。与PLLNDIV一起使能或禁止时钟发生器的PLL部分,PLLON/OFF PLLNDIV PLL状态,0 0 关,0 1 开,1 0 开,1 1 开,1,PLLNDIV,PLL时钟发生器选择。,PLLNDIV=0时,工作在分频器(DIV)模式,PLLNDIV=1时,工作在PLL模式,0,PLLSTATUS,PLL状态。表示时钟发生器的工作模式:,PLLSTATUS=0时,分频器(DIV)模式,PLLSTATUS=1时,PLL模式,9.4.3 软件可配置的PLL续,PLL的乘法系数 CLKOUT=CLKIN乘法系数,PLLNDIV,PLLDIV,PLLMUL,乘法系数,0,X,014,0.5(/2),0,X,15,0.25(/4),1,0,014,PLLMUL+1,1,0,15,1(旁路),1,1,0或偶数,(PLLMUL+1)2,1,1,奇数,PLLMUL4,9.4.3 软件可配置的PLL续,2软件可编程PLL的编程本卷须知,(1)使用PLLCOUNT可编程锁定定时器,PLL锁定定时器是一个减1计数器,每16个CLKIN计数器减1,锁定延迟时间可以设置为04080(25516)个CLKIN周期。,公式,TCLKIN为输入时钟周期,LockupTime为所要求的PLL锁定时间。,为了平安,也可以将PLLCOUNT设置为全1,即最大值,9.4.3 软件可配置的PLL续,9.4.3 软件可配置的PLL续,(2)时钟形式由DIV形式转换为PLL形式,通过修改PLLMUL、PLLDIV和PLLNDIV位来完成,只有在DIV形式时,才能改变以下几个值:PLLMUL,PLLCOUNT,PLLON/OFF,一旦PLLNDIV位被置1,PLLCOUNT定时器开场减计数直到0。,当完成了PLL形式转换时,CLKMD的PLLSTATUS位读为1。,例:C549 DSP转换DIV形式为PLL3形式,输入CLKIN频率为13MHz,并且PLLCOUNT=18(十进制):19us/(16/13M)1618,STM#0010 0 00010010 111b,CLKMD,9.4.3 软件可配置的PLL续,(3)时钟形式由PLL形式转换为DIV形式,通过加载CLKMD存放器来完成,PLLNDIV=0,选择DIV形式,设置PLLMUL位,从PLL形式转换为DIV形式时,会在一个短暂的延迟后完成这两种形式之间的转换,所以不用设置PLLCOUNT,当完成了DIV形式转换时,CLKMD存放器的PLLSTATUS位读为0,例:从PLL3形式DIV/2形式。,STM#0b,CLKMD ;转换为DIV形式,TstStatu:LDM CLKMD,A,AND#01b,A ;查询PLLSTATUS位,BC TstStatu,ANEQ ;ANEQ表示(A)0,9.4.3 软件可配置的PLL续,(4)改变PLL乘法系数,(思想:PLLDIVPLL,因为只有在DIV形式时,才能改变以下几个值:PLLMUL,PLLCOUNT,PLLON/OFF),步骤:,(1)去除PLLNDIV位为0,选择DIV形式。,(2)查询PLLSTATUS位,直到该位变为0,表示DIV形式有效。,(3)修改CLKMD,设置PLLMUL、PLLDIV和PLLNDIV位,以获得所期望的频率乘法系数。,(4)设置PLLCOUNT位为所期望的锁定时间。,9.4.3 软件可配置的PLL续,注:在除以2形式和除以4形式之间的转换是不可能的。为了 转换这两种形式,时钟发生器必须首先设置为PLL形式,然后设置回期望的除数配置的DIV形式。,例:将时钟形式从PLL(X)转换为PLL 1:,STM#0b,CLKMD ;转换为DIV形式,TstStatu:,LDM CLKMD,A,AND#1b,A ;查询PLLSTATUS位,BC TstStatu,ANEQ,STM#0000 0 01111101 111b,CLKMD,;转换为PLL1形式,9.4.3 软件可配置的P
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 压缩资料 > 基础医学


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!