dsp28_sysctrl.c

来自「TMS320F2812 的 CAN 总线程序 变速箱电液换档程序的一个实例 」· C语言 代码 · 共 66 行

C
66
字号
/************************************************************************************
	版权(c) 	2003-		北京合众达电子技术有限责任公司			                *
*  	设计者:	戴展波	
*************************************************************************************/

#include "DSP28_Device.h"

//---------------------------------------------------------------------------
// InitSysCtrl: 
//---------------------------------------------------------------------------
// This function initializes the System Control registers to a known state.
//

void InitSysCtrl(void)
{
   	Uint16 i;
   	EALLOW;
   
	//On TMX samples, to get the best performance of on chip RAM blocks M0/M1/L0/L1/H0 internal
	//control registers bit have to be enabled. The bits are in Device emulation registers.
   	DevEmuRegs.M0RAMDFT = 0x0300;
   	DevEmuRegs.M1RAMDFT = 0x0300;
   	DevEmuRegs.L0RAMDFT = 0x0300;
   	DevEmuRegs.L1RAMDFT = 0x0300;
   	DevEmuRegs.H0RAMDFT = 0x0300;
   
           
	//Disable watchdog module
   	SysCtrlRegs.WDCR= 0x0068;

	//Initalize PLL
   	SysCtrlRegs.PLLCR = 0xA;
   	// Wait for PLL to lock
   	for(i= 0; i< 5000; i++){}
       
	//HISPCP/LOSPCP prescale register settings, normally it will be set to default values
   	SysCtrlRegs.HISPCP.all = 0x0001;// SYSCLKOUT/2 默认值
   	SysCtrlRegs.LOSPCP.all = 0x0002;// SYSCLKOUT/4
   		
	//Peripheral clock enables set for the selected peripherals.   
   	SysCtrlRegs.PCLKCR.bit.EVAENCLK = 1;
   	SysCtrlRegs.PCLKCR.bit.EVBENCLK = 1;
	SysCtrlRegs.PCLKCR.bit.ECANENCLK = 1;
	SysCtrlRegs.PCLKCR.bit.ADCENCLK=1;				
   	EDIS;	
}

//---------------------------------------------------------------------------
// KickDog: 
//---------------------------------------------------------------------------
// This function resets the watchdog timer.
// Enable this function for using KickDog in the application 

void KickDog(void)
{
    EALLOW;
    SysCtrlRegs.WDKEY = 0x0055;
    SysCtrlRegs.WDKEY = 0x00AA;
    EDIS;
}
	
	
//===========================================================================
// No more.
//===========================================================================

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?