1. 程式人生 > >ARM設定時鐘開關的方法(使用PLL)

ARM設定時鐘開關的方法(使用PLL)

第一步:觀察下面程式碼中r2=0x10001111

ldr	r1, 0xE0100200
ldr	r2, =0x10001111
orr	r1, r1, r2                         //orr用於將r1中一些位置1
str	r1, [r0, #CLK_SRC0_OFFSET]

第二步:將0x10001111轉換為二進位制

第三步:結合資料手冊中暫存器的用法,如下圖,根據上圖可知將bit28、bit12、bit8、bit4、bit0設定為1;將bit24、bit20、bit16設定為0.(在下圖中用紅色筆將要設定的數值勾出來)。

第四步:根據上圖中以藍筆畫出來的各種MUX開關,在下圖的時鐘系統圖中找到對應的MUX。然後根據設定的(bit28、bit12、bit8、bit4、bit0設定為1;將bit24、bit20、bit16設定為0)對MUX開關進行選擇。如下圖所示,用紅線連線了時鐘的選擇流向。這樣就設定了時鐘的MUX開關。