亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言中怎么設置時鐘

發布時間:2021-11-23 09:23:44 來源:億速云 閱讀:141 作者:iii 欄目:互聯網科技

本篇內容介紹了“C語言中怎么設置時鐘”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

#define APLL_LOCK (*((volatile unsigned long *)0x7E00F000))
#define MPLL_LOCK (*((volatile unsigned long *)0x7E00F004))
#define EPLL_LOCK (*((volatile unsigned long *)0x7E00F008))

#define OTHERS    (*((volatile unsigned long *)0x7e00f900))

#define CLK_DIV0  (*((volatile unsigned long *)0x7E00F020))

#define ARM_RATIO    0   /* ARMCLK = DOUTAPLL / (ARM_RATIO + 1)    */
#define HCLKX2_RATIO 4   /* HCLKX2 = HCLKX2IN / (HCLKX2_RATIO + 1) = 100MHz */
#define HCLK_RATIO   0   /* HCLK = HCLKX2 / (HCLK_RATIO + 1)   = 100MHz       */
#define PCLK_RATIO   1   /* PCLK   = HCLKX2 / (PCLK_RATIO + 1) = 50MHz    */
#define MPLL_RATIO   0   /* DOUTMPLL = MOUTMPLL / (MPLL_RATIO + 1)     */


#define APLL_CON  (*((volatile unsigned long *)0x7E00F00C))
#define APLL_CON_VAL  ((1<<31) | (250 << 16) | (3 << 8) | (1))

#define MPLL_CON  (*((volatile unsigned long *)0x7E00F010))
#define MPLL_CON_VAL  ((1<<31) | (250 << 16) | (3 << 8) | (1))

#define CLK_SRC  (*((volatile unsigned long *)0x7E00F01C))

void clock_init(void)
{
    /*將每一個 LOCK_TIME 設置為 0xffff*/
    APLL_LOCK = 0xffff;
    MPLL_LOCK = 0xffff;
    EPLL_LOCK = 0xffff;

    /* set async mode 當CPU時鐘 != HCLK時,要設為異步模式 */
    OTHERS &= ~0xc0;   //將 OTHERS 的第六和第七位清零,以設置成異步模式。
    while ((OTHERS & 0xf00) != 0);
    /*CLK_DIV是為外設進行分頻的寄存器,共三個.CLK_DIV0、CLK_DIV1、CLK_DIV2。對于設置內核時鐘和AHB、APB的總線時鐘來說,我們只需要了解CLK_DIV0的幾個位域即可。*/
    CLK_DIV0 = (ARM_RATIO) | (MPLL_RATIO << 4) | (HCLK_RATIO << 8) | (HCLKX2_RATIO << 9) | (PCLK_RATIO << 12);
    
    APLL_CON = APLL_CON_VAL;  /* 500MHz */
    MPLL_CON = MPLL_CON_VAL;  /* 500MHz */

    CLK_SRC = 0x03;//打開時鐘源開關,讓進過LOCK_TIME后變得穩定后的時鐘源輸出。
}

注意:OTHERS寄存器中的syncmode和syncmuxsel這兩個位應該是協同工作的,一起置1或清0。syncmode要置1,就先向syncmuxsel位寫1;syncmode清0后,隨即再把syncmuxsel位也清0。

“C語言中怎么設置時鐘”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

凌海市| 贵阳市| 买车| 北安市| 山东| 北海市| 河曲县| 府谷县| 滕州市| 安龙县| 宁津县| 西华县| 武乡县| 洛浦县| 青神县| 专栏| 沭阳县| 鄄城县| 盐池县| 闸北区| 桐乡市| 千阳县| 灵宝市| 乐清市| 广宗县| 纳雍县| 昌图县| 寻甸| 广宁县| 老河口市| 苏州市| 汉中市| 察哈| 大方县| 景德镇市| 巴楚县| 华容县| 靖远县| 两当县| 广东省| 承德市|