clock.c

来自「提高μCOS-II在ARM上执行效率的几种方法》相应代码」· C语言 代码 · 共 45 行

C
45
字号
#include "2410addr.h"
/*
功能:设置三个时钟的比率 
参数:hdivn, pdivn,CLKDIVN寄存器需要设置的值。
*/
void ChangeClockDivider(int hdivn,int pdivn)
{
     // hdivn,pdivn FCLK:HCLK:PCLK
     //     0,0         1:1:1 
     //     0,1         1:1:2 
     //     1,0         1:2:2
     //     1,1         1:2:4
    rCLKDIVN = (hdivn<<1) | pdivn;    

	/* 当使用HDIVN=1时,根据文档需要,设置MMU的bus为asynchronous bus 
	实际上目前先不支持这个特性,程序也能运行
	if(hdivn)
        MMU_SetAsyncBusMode();
    else 
        MMU_SetFastBusMode(); */
}

/*
功能:设置FCLK 的PLL
参数:int mdiv,int pdiv,int sdiv都是寄存器需要设置的值
*/
void ChangeMPllValue(int mdiv,int pdiv,int sdiv)
{
    rMPLLCON = (mdiv<<12) | (pdiv<<4) | sdiv;
}

/* 延时程序 */
void Delay(int time)
{
    int i;
    for(;time>0;time--)
        for(i=0;i<400;i++);
}

/*
void WatchdogDisable()
{
	//Watch-dog disable,1/64,interrupt disable,reset disable
    rWTCON = 0; 
}*/

⌨️ 快捷键说明

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