void InitSysCtrl(void)
对这个函数的一点解释:
// Disable watchdog module
SysCtrlRegs.WDCR=0x0068; 关看门狗
// Initalize PLL
SysCtrlRegs.PLLCR = 0xA; CLKIN=(OSCCLK*10.0)/2
此指令将PLL使能
// Wait for PLL to lock
for(i= 0; i< 5000;
i++){}延时,等待PLL使能(直译为 锁相环上锁。。哈哈)
// HISPCP/LOSPCP prescale register settings, normally it will be set to default
values
SysCtrlRegs.HISPCP.all = 0x0001; 高速时钟定标HSPCLK=SYSCLKOUT/(HISPCP*2)
SysCtrlRegs.LOSPCP.all = 0x0002; 低速时钟定标LSPCLK=SYSCLKOUT/(LOSPCP*2)
// Peripheral clock enables set for the selected peripherals.
// SysCtrlRegs.PCLKCR.bit.EVAENCLK=1;
SysCtrlRegs.PCLKCR.bit.EVBENCLK=1;EV-B外设高速时钟有效
// SysCtrlRegs.PCLKCR.bit.SCIENCLKA=1;
// SysCtrlRegs.PCLKCR.bit.SCIENCLKB=1;
// SysCtrlRegs.PCLKCR.bit.SPIENCLK=1;
需要考察下EV是如何工作的,很显然这里用外部AD转换结束信号驱动事件管理器B
本文详细解释了初始化系统控制函数的各个步骤,包括关闭看门狗模块、初始化PLL、设置时钟频率、以及配置外围设备时钟启用。通过具体指令如SysCtrlRegs的设置,实现系统初始化关键操作。
3336

被折叠的 条评论
为什么被折叠?



