|
請問各位小弟目前用的MCU是 Siliconlab的C5081F320, spec中說明這顆MCU可以開到24MHz 的system clock2 O0 a1 d7 o3 Q$ Y
因此小弟照spec上的設定下去寫{. w0 H: n# s3 ` X! I2 u" y1 e3 o
CLKMUL = 0x00;j]jjU
4 E, c, S4 q9 C CLKMUL |= 0x80; // Enable clock multiplier
7 m4 j& J$ C' s/ K for( x= 0; x < 20; x++ ); // Wait 5us for initialization( V% m. [7 `" |, O8 J- e% }
CLKMUL |= 0xC0; // Initialize the clock multiplier$ n. M8 b3 P0 B' R, ?9 N2 r
while((CLKMUL & 0x20)==0);
4 w# b* A s: O) x5 o5 N CLKSEL = SYS_INT_OSC; // Select USB clock (48MHz) CLKSEL = 0x02;
3 o+ {( N0 k+ p+ j8 t' h CLKSEL |= SYS_4X_DIV_2; // Select system clock (24MHz)C
: a0 k7 a# b- o- [3 @3 y OSCICN |= 0x83;TNPC
% ?3 f R8 k( I USB0XCN |= 0xE0; // Enable transceiver; select full speed! l% C1 t% a. y" C! W; J
RSTSRC = 0x04;
; X: W9 A) B) n4 Q3 u2 ` E8 a9 Y3 ~/ m3 U. |. g
不過這樣設定的system clock 是 24MHz 沒錯, 但是卻變成原本USB可以跑的變成不能跑了 請問各位我是少設定了什麼嗎? # h3 I" O# R% s0 Q
我後來有把 CLKSEL |= SYS_4X_DIV_2; 這行註解掉
k0 ]( R9 }7 d; ?6 f7 F* a不知道是不是除頻的問題呢? 謝謝 |
|