DSP

TMS320X281x介绍与系统时钟配置

2019-07-13 13:04发布

TMS320X2812的资源、性能


TMS320X2812是TI公司推出的32位定点DSP芯片,采用了先进的哈佛总线架构,其不但具有强大的数字信号处理能力,而且还有较为完善的事件管理器功能和嵌入式控制功能,主频高达150MHz,因此广泛应用于工业控制等领域
特性1
特性2
功能概述

TMS320X2812系统时钟配置


片内振荡器电路使用X1/XCLKIN和X2引脚将晶振连接到F281x和C281x器件。 如果不使用晶振,则可以将外部振荡器直接连接到X1/XCLKIN引脚,并使X2引脚保持未连接状态。 在这种情况下,逻辑高电平不应超过VDD。 通过PLLCR位[3:0]设置时钟比率

OSC和PLL块

OSC+PLL框图

PLLCR寄存器

PLLCR寄存器
PLLCR_DIV

配置详解

通过上面的时钟框图和PLLCR寄存器位定义表我们可以轻易得出TMS320X2812系统时钟配置方法如下: Here is an example of application: /** * @brief 对2812的系统控制寄存器进行初始化配置 * * @note None * @retval None */ void Init_System(void) { volatile Uint16 iVol; /* * TI的DSP为了提高安全性能,将很多关键寄存器作了保护处理。 * 通过状态寄存器1(ST1)的位6设置与复位,来决定是否允许 * DSP指令对关键寄存器进行操作。这些关键寄存器包括:器件 * 仿真寄存器、FLASH寄存器、CSM寄存器、PIE矢量表、系统控 * 制寄存器、GPIOMux寄存器、eCAN寄存器的一部分。DSP由于 * 在上电复位之后,状态寄存器基本上都是清零,而这样的状态 * 下正是上述特殊寄存器禁止改写的状态。为了能够对这些特殊 * 寄存器进行初始化,所以在对上述特殊寄存器进行改写之前, * 一定要执行汇编指令asm(“EALLOW”)或者宏定义EALLOW来设 * 置状态寄存器1的C6位,在设置完寄存器之后,一定要注意执 * 行汇编指令asm(“EDIS”)或者宏定义EDIS来清除状态寄存器 * 1的C6位。*/ EALLOW; //解锁相关寄存器使之进入可配置状态 SysCtrlRegs.WDCR = 0x0068; //禁止看门狗模块 SysCtrlRegs.PLLCR.bit.DIV = 0xA; //初始化PLL模块,如果外部晶振为30MHz,则SYSCLKOUT = (OSCCLK ✖ 10) / 2 = 150MHz for(iVol= 0; iVol< ( (131072/2)/12 ); iVol++){}; //短暂延时使得PLL模块能够完成初始化操作 /* 高速时钟预定标器和低速时钟预定标器,产生高速外设时钟HSPCLK和低速外设时钟LSPCLK */ SysCtrlRegs.HISPCP.all = 0x0001; //HSPCLK = 150MHz / 2 = 75MHz SysCtrlRegs.LOSPCP.all = 0x0001; //LSPCLK = 150MHz / (2 + 2) = 37.5MHz /* 对工程中使用到的外设进行时钟使能 */ /* SysCtrlRegs.PCLKCR.bit.ADCENCLK = 1; //ADC模块时钟使能*/ SysCtrlRegs.PCLKCR.all = 0x0; //关闭所有外设时钟 EDIS; //结束配置 }

系统时钟配置计算公式

通过上面的方法我们最终可以得出系统时钟配置的计算公式如下:
6