盐城工学院电气工程学院DSP应用技术1第6章TMS320F2812的时钟及看门狗盐城工学院电气工程学院DSP应用技术2DSPTMS320F2812内部结构CPU外设存储器系统控制外部接口GPIO盐城工学院电气工程学院DSP应用技术36.1时钟单元6.1.1时钟单元基本结构TMS320F2812处理器内部集成了振荡器、锁相环、看门狗及工作模式选择等控制电路。振荡器、锁相环主要为处理器CPU及相关外设提供可编程的时钟,每个外设的时钟都可以通过相应的寄存器进行编程设置;看门狗可以监控程序的运行状态,提高系统的可靠性。盐城工学院电气工程学院DSP应用技术4F2810和F2812内部的各种时钟和复位电路盐城工学院电气工程学院DSP应用技术56.1.2锁相环电路锁相环是一种控制晶振使其相对于参考信号保持恒定相位的电路,在数字通信系统中使用比较广泛。目前微处理器或DSP集成的片上锁相环,主要作用则是通过软件实时地配置片上外设时钟,提高系统的灵活性和可靠性。此外,由于采用软件可编程锁相环,所设计的系统处理器外部允许较低的工作频率,而片内经过锁相环微处理器提供较高的系统时钟。好处:可以有效地降低系统对外部时钟的依赖和电磁干扰,提高系统启动和运行的可靠性,降低系统对硬件的设计要求。盐城工学院电气工程学院DSP应用技术66.1.2锁相环电路TMS320F2812处理器的片上晶振和锁相环模块为内核及外设提供时钟信号,并且控制器件的低功耗工作模式。片上晶振模块允许使用2种方式为器件提供时钟,即采用内部振荡器或外部时钟源。(1)使用内部振荡器,在Xl/XCLKIN和X2这两个引脚之间连接一个石英晶体,一般选用30MHz。(2)采用外部时钟,将输入的时钟信号直接接到Xl/XCLKIN引脚上,而X2悬空,不使用内部振荡器。盐城工学院电气工程学院DSP应用技术7旁路寄存器片上振荡器晶体振荡器及锁相环模块盐城工学院电气工程学院DSP应用技术8锁相环配置模式PLL模式说明SYSCLKOUTPLL禁止上电复位时通过将引脚拉低来调用。PLL模块完全禁止。输入到CPU的时钟(CLKIN)由来自X1/XCLKIN引脚的时钟信号直接驱动。XCLKINPLL旁路如果PLL未处于禁止状态,则为上电复位的默认配置模式。PLL自身被旁路,但是从X1/XCLKIN引脚输入的时钟在送到CPU之前,先经过PLL的‘/2’电路除以2。XCLKIN/2PLL使能通过给PLLCR寄存器写入一个非0的‘n’值来实现。时钟在送到CPU之前,先经过PLL的‘/2’电路除以2。(XCLKIN*n)/2盐城工学院电气工程学院DSP应用技术9处理器内部时钟电路锁相环模块除了为C28x内核提供时钟外,还通过系统时钟输出提供快速和慢速2种外设时钟,而系统时钟主要通过外部引脚XPLLDIS及锁相环控制寄存器进行控制。盐城工学院电气工程学院DSP应用技术10如果XPLLDIS为高电平,使能芯片内部锁相环电路,则可以通过控制寄存器PLLCR软件设置系统的工作频率。注意:1.在通过软件改变系统的工作频率时,必须等待系统时钟稳定后才可以继续完成其他操作。2.可以通过外设时钟控制寄存器使能外设时钟。在具体的应用中。为降低系统功耗,不使用的外设最好将其时钟禁止。外设时钟包括快速外设和慢速外设两种,分别通过HISPCP和LOSPCP寄存器进行设置。盐城工学院电气工程学院DSP应用技术11改变锁相环倍频系数和外设时时钟的具体应用程序//----------------------------------------------------------------------------//初始化锁相环及外设时钟函数InitPll//------------------------------------------------------------------------------voidInitPll(Uint16val)]{volatileUint16iVol;if(SysCtrlRegs.PLLCR.bit.DIV!=val){EALLOW;SysCtrlRegs.PLLCR.bit.DIV=val;EDIS;//在锁相环时钟频率切换过程中,只有当锁相环稳定后CPU才会切换到新的PLL设置//因此在设置完PLLCR后需要等待PLL稳定。PLL的切换时间大约等于131072个输入时钟周期DisableDog();for(iVol=0;iVol((131072/2)/12);iVol++){}}}盐城工学院电气工程学院DSP应用技术12//为降低系统功耗,不使用的外设时钟需要屏蔽。但如果使用外设必须首先使能相应的外设时钟voidInitPeripheralClocks(void){EALLOW;//HISPCP/LOSPCP预定标寄存器设置SysCtrlRegs.HISPCP.a11=0x0001;SysCtrlRegs.LOSPCP.a11=0x0002;//使能使用的外设时钟SysCtrlRegs.PCLKCR.bit.EVAENCLK=1;SysCtrlRegs.PCLKCR.bit.EVBENCLK=1;SysCtrlRegs.PCLKCR.bit.SCIAENCLK=1;SysCtrlRegs.PCLKCR.bit.SCIBENCLK=1;SysCtrlRegs.PCLKCR.bit.MCBSPENCLR=1;SysCtrlRegs.PCLKCR.bit.SPIENCLK=1;SysCtrlRegs.PCLKCR.bit.ECANENCLK=1;SysCtrlRegs.PCLKCR.bit.ADCEtTCLK=1;EDIS;}盐城工学院电气工程学院DSP应用技术136.1.3时钟单元寄存器寄存器名地址长度(×16位)描述保留0x7010~0x701910HISPCP0x701A1HSPCLK时钟的高速外设模块时钟预分频寄存器LOSPCP0x701B1LSPCLK时钟的低速外设模块时钟预分频寄存器PCLKCR0x701C1外设模块时钟控制寄存器盐城工学院电气工程学院DSP应用技术14保留0x701D1LPMCR00x701E1低功耗工作模式控制寄存器0LPMCR10x701F1低功耗工作模式控制寄存器1保留0x70201PLLCR0x70211PLL控制寄存器‡SCSR0x70221系统控制&状态寄存器WDCNTR0x70231程序监视器计数寄存器保留0x70241WDKEY0x70251程序监视器复位密钥寄存器保留0x7026~0x70283WDCR0x70291程序监视器控制寄存器保留0x702A~0x702F6盐城工学院电气工程学院DSP应用技术15注意1.表中所有寄存器只有在执行EALLOW指令后,才可以访问。2.PLL控制寄存器(PLLCR)只能被XRS信号复位到已知状态。盐城工学院电气工程学院DSP应用技术1615141312111098ReservedECANENCLKReservedMCBSPENCLKSCIBENCLKSCIAENCLKReservedSPIENCLKR-0R/W-0R-0R/W-0R/W-0R/W-0R-0R/W-0743210ReservedADCENCLKReservedEVBENCLKEVAENCLKR-0R/w-0R-0R/W-0R/W-01.外设时钟控制寄存器(PCLKCR)盐城工学院电气工程学院DSP应用技术17位15Reserved保留位位14ECANENCLK如置1,将使能CAN外设模块的时钟。要进入低功耗工作模式,用户可以将该位清零或复位为0。位13Reserved保留位位12MCBSPENCLK如置1,使能McBSP外设模块的低速时钟(LSPCLK),要让器件进入低功耗工作模式,用户可以将该位清零或复位。位11SCIBENCLK如置1,使能SCI-B外设模块的低速时钟(LSPCLK),要让器件进入低功耗工作模式,用户可以将该位清零或复位。盐城工学院电气工程学院DSP应用技术18位10SCIAENCLK如置1,使能SCI-A外设模块的低速时钟(LSPCLK),要让器件进入低功耗工作模式,用户可以将该位清零或复位。位9Reserved保留位位8SPIAENCLK如置1,使能串行外设接口的低速时钟(LSPCLK),要让器件进入低功耗工作模式,用户可以将该位清零或复位。位7~4Reserved保留位盐城工学院电气工程学院DSP应用技术19位3ADCENCLK如置1,使能模数转换外设模块的高速时(HSPCLK),要让器件进入低功耗工作模式,用户可以将该位清零或复位。位2Reserved保留位位1EVBENCLK如置1,使能事件管理EVB外设模块的高速时钟(HSPCLK),要让器件进入低功耗工作模式,用户可以将该位清零或复位。位0EVAENCLK如置1,使能事件管理EVA外设模块的高速时钟(HSPCLK),要让器件进入低功耗工作模式,用户可以将该位清零或复位。盐城工学院电气工程学院DSP应用技术20153210ReservedHSPCLKR-0R/W-001位15~3Reserved保留位2.高速外设时钟寄存器(HISPCP)盐城工学院电气工程学院DSP应用技术21位2~0HSPCLK配置与SYSCLKOUT相关的高速外设模块时钟(HSPCLK)频率。000高速时钟=SYSCLKOUT/1001高速时钟=SYSCLKOUT/2(复位值)010高速时钟=SYSCLKOUT/4011高速时钟=SYSCLKOUT/6100高速时钟=SYSCLKOUT/8101高速时钟=SYSCLKOUT/10110高速时钟=SYSCLKOUT/12111高速时钟=SYSCLKOUT/14盐城工学院电气工程学院DSP应用技术22153210ReservedLSPCLKR-0R/W-010位15~3Reserved保留位2.低速时钟寄存器(LOSPCP)盐城工学院电气工程学院DSP应用技术23位2~0LSPCLK配置与SYSCLKOUT相关的低速外设模块时钟(LSPCLK)频率。000低速时钟=SYSCLKOUT/1001低速时钟=SYSCLKOUT/2010低速时钟=SYSCLKOUT/4(复位值)011低速时钟=SYSCLKOUT/6100低速时钟=SYSCLKOUT/8101低速时钟=SYSCLKOUT/10110低速时钟=SYSCLKOUT/12111低速时钟=SYSCLKOUT/14盐城工学院电气工程学院DSP应用技术2415430ReservedDIVR-0R/W-0位15~4Reserved保留位3.锁相环控制寄存器(PLLCR)盐城工学院电气工程学院DSP应用技术25位3~0DIVDIV位域控制是否旁路PLL,不旁路时,用于设置PLL时钟比率。0000CLKIN=OSCCLK/2(PLL旁路)0001CLKIN=(OSCCLK*1.0)/20010CLKIN=(OSCCLK*2.0)/20011CLKIN=(OSCCLK*3.0)/20100CLKIN=(OSCCLK*4.0)/20101CLKIN=(OSCCLK*5.0)/20110CLKIN=(OSCCLK*6.0)/20111CLKIN=(OSCCLK*7.0)/21000CLKIN=(OSCCLK*8.0)/21001CLKIN=(OSCCLK*9.0)/21010CLKIN=(OSCCLK*10.0)/21011~1111保留盐城工学院电气工程学院DSP应用技术26问题如果要使系统时钟为输入时钟的5倍频,同时使能所有的外设时钟,将高速外设的时钟设置为系统时钟的1/8,低速外设的时钟设置为系统时钟的1/10,应该如何设置相关的寄存器?PLLCR=0x000A;PCLKCR=0xFFFF;HISPCP=0x0004;LOSPCP=0x0005;盐城工学院电气工程学院DSP应用技术276.2看门狗看门狗主要用来检测软件和硬件的运行状态,当内部计数器溢出时,将产生一个复位信号。为了避免产生不必要的复位,要求