wordpress標(biāo)簽自動生成插件下載北京谷歌seo公司
時鐘頻率可以是由晶振提供的,我們需要高頻率,但是外部接高的晶振會不穩(wěn)定,所有使用PLL(鎖相環(huán))來放大頻率。接下來就讓我們學(xué)習(xí)用外部晶振提供的頻率來配置時鐘頻率。
一.時鐘源的選擇
在這里我們選擇外部晶振作為時鐘源,通過查看芯片手冊和原理圖來看我們的時鐘源。
這是手冊上面,通過OM2和OM3的引腳的電位來設(shè)置時鐘源。那我們?nèi)ゲ榭丛韴D。
通過原理圖我們得知,OM2和OM3是連接的低電平也就是00,所以時鐘源是晶振。
二。晶振的大小為12M,看原理圖得知。
我們以
? ? ? ? ? ? ? ? FCLK:400M
? ? ? ? ? ? ? ? HCLK: 100 M
? ? ? ? ? ? ? ? PCLK:? ? 50M
這三個時鐘頻率分別對不同的區(qū)域提供,由芯片手冊可以得到
那么具體的流程是怎么進(jìn)行的呢?
看芯片手冊就可以得到具體的步驟。
外部晶振提供12M頻率,由MPLL來進(jìn)行放大,具有放大多少怎么配置,由PDIV、MDIV、SDIV,來決定。
我們選擇400M,那么MDIV, PDIV, SDIV分別配置為127、2、1。
具體配置方法為:
將MPLLCON寄存器的對應(yīng)MDIV,PDIV,SDIV設(shè)置為127,2,1
MPLLCON = (127 << 12) | (2 << 4) | (1 << 0);
這里FCLK已經(jīng)配置好了,那接下來就要配置HCLK和PCLK
由FCLK \ HCLK\ PCLK 的比例關(guān)系我們得知HDIVN? PDIVN的具體配置;
這里可以得知HDIVN 配置為2, PDIVN配置為1。
那么怎么在寄存器中配置呢
這里可以得知具體的位數(shù)。
代碼如下
CLKDIVN = (2 << 1) | (1 << 0);
這樣我們就配置好了時鐘的頻率。
其實(shí)在配置的時候我們要先配置HCLK .PCLK,因?yàn)橄扰渲肍CLK的時候,頻率太高,會燒壞后面的電路,所以先配置好分頻,在區(qū)配置主頻。
總結(jié)就是如下
? ? ? ? 1.通過芯片手冊和原理圖看時鐘源是什么。
? ? ? ? 2.看時鐘源的晶振具體大小為多少
? ? ? ? 3.確定FCLK,HCLK,PCLK的大小
? ? ? ? 4.由這三個的比例關(guān)系來看HDIVN 、PDIVN的值(用來配置HCLK和PCLK的大小)
? ? ? ? 5.由CLKDIV寄存器來配置HDIVN和PDIVN
? ? ? ? 6.由FCLK的大小來查手冊看MDIV ,PDIV, SDIV的值(用來配置FCLK的大小)
? ? ? ? 7.MPLLCON來配置這三個的大小就完成了。