⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 setup.c

📁 学习资料S12源程序UF32 USB MCU方测试程序 CW环境
💻 C
字号:
//[MCUInit.c]DG128芯片初始化函数-------------------------------------------*
//功  能:                                                                  *
//    芯片初始化设置:通过设置CLKSEL寄存器,确定内部总线的时钟源;通过PLL编  *
//    程,设置PLLCLK;通过设置INTCR和COPCTL寄存器,分别决定是否允许IRQ中断和  *
//    看门狗。                                                             *
//    (1)外部晶振=9.8304Mhz BusClock=19.6608Mhz                            *
//    (2)禁止IRQ中断                                                       *
//    (3)禁止看门狗                                                        *
//参  数:无                                                                *
//返  回:无                                                                *
//-------------------------------------------------------------------------*
#include "Setup.h"
#define VREGR	*(volatile unsigned char*)(0x0019+0x00)
void Setup(void)
{ 
	/*禁止看门狗*/
	COPCTL = 0x00;

	/*使能3.3V产生器*/
	VREGR = 0x02;
	
	/*在PLL程序执行前,fBus = OSCCLK / 2
		CLKSEL.7(PLL选择位)决定内部总线时钟来源
		=O,BusClock=OSCCLK/2; =1,BusClock=PLLCLK/2
		CLKSEL&=0x7f;此时:BusClock=OSCCLK/2,
		执行完毕后,USB总线频率为60Mhz,总线频率为30Mhz
	*/
	UMCR 	|= UMCR_MCE_MASK;
	UMCR 	&= ~UMCR_SPHY_MASK;
	CLKSEL  &= 0x7f;
	asm{
			nop
			nop
			nop
			nop
		};
	while(!(CRGFLG & CRGFLG_LOCK_MASK));

	/*转换系统时钟源为PLL方式*/
	CLKSEL  |= 0x80; //本句执行后:BusClock=PLLCLK/2
	
	INITEE	= 0x21;

}

⌨️ 快捷键说明

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