1. 程式人生 > >TMS320X281x介紹與系統時鐘配置

TMS320X281x介紹與系統時鐘配置

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