|
請問各位小弟目前用的MCU是 Siliconlab的C5081F320, spec中說明這顆MCU可以開到24MHz 的system clock
L( F0 W+ c4 U+ Y U$ X因此小弟照spec上的設定下去寫{! ^/ ~/ G6 R& u
CLKMUL = 0x00;j]jjU" {5 H1 a8 C2 m8 @9 ^/ i
CLKMUL |= 0x80; // Enable clock multiplier: N, K* T( o# i! H/ T. x: Z' k9 W
for( x= 0; x < 20; x++ ); // Wait 5us for initialization
9 c+ m3 o7 {% g5 Y CLKMUL |= 0xC0; // Initialize the clock multiplier
" Q% r: F* T; {. E. ? while((CLKMUL & 0x20)==0);
% j& Q+ L2 m/ ?3 \( W6 [+ h6 A& Y CLKSEL = SYS_INT_OSC; // Select USB clock (48MHz) CLKSEL = 0x02;
, l; C( P* n' D9 Z1 X) a) Z7 k CLKSEL |= SYS_4X_DIV_2; // Select system clock (24MHz)C
' Z$ @" N+ f. e! J/ `: _) r OSCICN |= 0x83;TNPC; Z$ d- e7 e( I* ~
USB0XCN |= 0xE0; // Enable transceiver; select full speed" r* N$ _, m0 J1 o; V$ o9 h2 \, c' I% Y
RSTSRC = 0x04;6 E! S- r, y( _- T6 x, E; g
* ^4 |3 ]1 M$ k9 Y5 m H; C
不過這樣設定的system clock 是 24MHz 沒錯, 但是卻變成原本USB可以跑的變成不能跑了 請問各位我是少設定了什麼嗎?
5 s8 t' \, K* t3 K我後來有把 CLKSEL |= SYS_4X_DIV_2; 這行註解掉
) e; M4 B, t" C3 o1 f% U( H不知道是不是除頻的問題呢? 謝謝 |
|