|
請問各位小弟目前用的MCU是 Siliconlab的C5081F320, spec中說明這顆MCU可以開到24MHz 的system clock- {) O) i1 d' W4 {3 Z
因此小弟照spec上的設定下去寫{
, w9 p/ F8 n' |' M! p CLKMUL = 0x00;j]jjU
) w7 L6 Y4 m4 v2 C CLKMUL |= 0x80; // Enable clock multiplier6 j& K" p* C: ?/ r. x5 Z; S/ h7 v
for( x= 0; x < 20; x++ ); // Wait 5us for initialization
7 w2 A7 Y/ p( N6 e CLKMUL |= 0xC0; // Initialize the clock multiplier8 q! s8 j) Q5 _
while((CLKMUL & 0x20)==0); # ^8 b5 N- ~8 U5 S) B
CLKSEL = SYS_INT_OSC; // Select USB clock (48MHz) CLKSEL = 0x02;
6 {1 W8 g; @5 Y# M* H. K# h CLKSEL |= SYS_4X_DIV_2; // Select system clock (24MHz)C$ B( L9 f) i% E5 J9 x
OSCICN |= 0x83;TNPC
* e0 q" h& h* G; y N9 ~ USB0XCN |= 0xE0; // Enable transceiver; select full speed
6 {% x) s# k% |6 `6 m# P+ ~. _ RSTSRC = 0x04;7 m% l, L- ?1 X
6 j5 d, u- L3 a
不過這樣設定的system clock 是 24MHz 沒錯, 但是卻變成原本USB可以跑的變成不能跑了 請問各位我是少設定了什麼嗎?
! O' x2 T* |3 ^( }& R我後來有把 CLKSEL |= SYS_4X_DIV_2; 這行註解掉3 h; E/ l& V: P' V9 z9 h/ d
不知道是不是除頻的問題呢? 謝謝 |
|