TMS320F2802x_Piccolo系列DSC原理及应用 下载本文

第2章 时钟与系统控制

本章描述振荡器、PLL和时钟机制、看门狗功能以及低功率模式。 2.1 时钟和系统控制

图 2.1所示为各种时钟和复位域。

图 2.1 时钟和复位域

PLL、时钟、看门狗和低功率模式由表 2.1列出的寄存器来控制。

表 2.1 PLL、时钟、看门狗和低功率模式寄存器

名称 地址 大小(×16) 1 1 1 1 1 1 1 1 9

描述 XCLKOUT/XCLKIN控制 PLL状态寄存器 时钟控制寄存器 PLL锁定周期寄存器 内部振荡器1调整寄存器 内部振荡器2调整寄存器 低速外设时钟预分频器寄存器 外设时钟控制寄存器0 XCLK 0x0000-7010 PLLSTS 0x0000-7011 CLKCTL 0x0000-7012 PLLLOCKPRD 0x0000-7013 INTOSC1TRIM 0x0000-7014 INTOSC2TRIM 0x0000-7016 LOSPCP 0x0000-701B PCLKCR0 0x0000-701C

PCLKCR1 名称 LPMCR0 PCLKCR3 PLLCR SCSR WDCNTR WDKEY WDCR 0x0000-701D 地址 0x0000-701E 0x0000-7020 0x0000-7021 0x0000-7022 0x0000-7023 0x0000-7025 0x0000-7029 1 大小(×16) 1 1 1 1 1 1 1 外设时钟控制寄存器1 续上表

描述 低功率模式控制寄存器0 外设时钟控制寄存器3 PLL控制寄存器 系统控制&状态寄存器 看门狗计数器寄存器 看门狗复位密钥寄存器 看门狗控制寄存器 2.1.1 使能/禁能外设模块的时钟

PCLKCR0/1/3寄存器使能/禁能各种外设模块的时钟。从写PCLKCR0/1/3寄存器出现到操作有效之间有2个SYSCLKOUT周期的延迟。在尝试访问外设配置寄存器之前,必须考虑到这个延时。由于外设的GPIO在引脚上的复用,所有外设不能同时使用。虽然可以同时开启所有外设的时钟,但这样的配置可能用处不大。如果同时开启所有外设的时钟,消耗的电流会比要求的大。为了避免出现这种情况,只启用应用需要使用的时钟。

图 2.2 外设时钟控制0寄存器(PCLKCR0) 表 2.2 外设时钟控制0寄存器(PCLKCR0)的域描述

位 域 15-11 保留 10 SCIAENCLK 值 0 1 0 1 0 1 0 描述(1) SCI-A时钟使能。 不给SCI-A模块计时。(默认)(1) 由低速时钟(LSPCLK)为SCI-A模块计时。 SPI-A时钟使能。 不给SPI-A模块计时。(默认)(1) 由低速时钟(LSPCLK)为SPI-A模块计时。 I2C时钟使能。 不给I2C模块计时。(默认)(1) 给I2C模块计时。 ADC时钟使能。 不给ADC模块计时。(默认)(1) 10

9 8 保留 SPIAENCLK 7-5 4 保留 I2CAENCLK 3 ADCENCLK

1

给ADC模块计时。 续上表 描述(1) ePWM模块时基时钟(TBCLK)同步:允许用户将所有使能的ePWM模块与时基时钟(TBCLK)同步; 停止每个已使能ePWM模块内的TBCLK(时基时钟)(默认)。但是,如果PCLKCR1寄存器的ePWM时钟使能位被置位,那么ePWM模块仍然由SYSCLKOUT来计时,即使TBCLKSYNC为0。 所有已使能的ePWM模块的时钟在已校准的TBCLK的第一个上升沿启动。为了得到完美同步的TBCLK,每个ePWM模块的TBCTL寄存器中的预分频器位必须设置相同。使能ePWM时钟的正确过程如下所示: ? 在PCLKCR1寄存器中使能ePWM模块的时钟。 ? 将TBCLKSYNC设置为0。 ? 配置预分频器值和ePWM模式。 ? 将TBCLKSYNC设置为1。 1 保留 保留 0 HRPWMENCLK HRPWM时钟使能。 0 HRPWM不使能。 1 HRPWM使能。 (1) 如果一个外设时钟不使用,就可以关闭该外设的时钟来使功耗降至最低。 位 2 域 TBCLKSYNC 值 0 1

图 2.3 外设时钟控制1寄存器(PCLKCR1) 表 2.3 外设时钟控制1寄存器(PCLKCR1)的域描述

位 域 15-9 保留 8 ECAP1ENCLK 值 0 1 0 1 描述(1) eCAP1时钟使能。 不给eCAP1模块计时。(默认)(2) 由系统时钟(SYSCLKOUT)为eCAP1模块计时。 ePWM4时钟使能。(3) 不给ePWM4模块计时。(默认)(2) 由系统时钟(SYSCLKOUT)为ePWM4模块计时。 11

7-4 保留 3 EPWM4ENCLK

2 EPWM3ENCLK 0 1 ePWM3时钟使能。(3) 不给ePWM3模块计时。(默认)(2) 由系统时钟(SYSCLKOUT)为ePWM3模块计时。

续上表 值 描述(1) ePWM2时钟使能。(3) 0 不给ePWM2模块计时。(默认)(2) 1 由系统时钟(SYSCLKOUT)为ePWM2模块计时。 0 EPWM3ENCLK ePWM1时钟使能。(3) 0 不给ePWM1模块计时。(默认)(2) 1 由系统时钟(SYSCLKOUT)为ePWM1模块计时。 (1) 这个寄存器受EALLOW保护。更多信息见2.7.2节。 (2)

如果一个外设时钟不使用,就可以关闭该外设的时钟来使功耗降至最低。 (3)

为了启动ePWM模块内的ePWM时基时钟,还必须臵位PCLKCR0的TBCLKSYNC位。 位 1 域 EPWM2ENCLK

图 2.4 外设时钟控制3寄存器(PCLKCR3) 表 2.4 外设时钟控制3寄存器(PCLKCR3)的域描述

位 15-14 13 值 0 1 12-11 保留 10 CPUTIMER2ENCLK 0 1 9 CPUTIMER1ENCLK 0 1 8 CPUTIMER0ENCLK 0 1 7:2 保留 1 COMP2ENCLK 域 保留 GPIOINENCLK 描述 保留 GPIO输入时钟使能。 不给GPIO模块计时。 给GPIO模块计时。 保留 CPU定时器2时钟使能。 不给CPU定时器2计时。 给CPU定时器2计时。 CPU定时器1时钟使能。 不给CPU定时器1计时。 给CPU定时器1计时。 CPU定时器0时钟使能。 不给CPU定时器0计时。 给CPU定时器0计时。 保留 COMP2时钟使能。 12