|
請問各位小弟目前用的MCU是 Siliconlab的C5081F320, spec中說明這顆MCU可以開到24MHz 的system clock' s- J- v5 j2 K$ i
因此小弟照spec上的設定下去寫{$ Q! t$ i" B+ s" h
CLKMUL = 0x00;j]jjU
1 C# N% x/ e( `$ ~6 m CLKMUL |= 0x80; // Enable clock multiplier& }+ n2 n! X8 G) _8 }# m
for( x= 0; x < 20; x++ ); // Wait 5us for initialization C6 \6 ]0 S. E. [: V3 l6 k1 v
CLKMUL |= 0xC0; // Initialize the clock multiplier
: E% l& M% }( Z' K& y+ L3 G& P4 k while((CLKMUL & 0x20)==0);
7 }$ A, a0 w( V: d) _4 d CLKSEL = SYS_INT_OSC; // Select USB clock (48MHz) CLKSEL = 0x02;
; v3 X$ r8 v+ l% m6 l! p. l% G CLKSEL |= SYS_4X_DIV_2; // Select system clock (24MHz)C3 f& y$ u% Y9 q3 g# _
OSCICN |= 0x83;TNPC
* `8 o# W: j2 `8 [# T USB0XCN |= 0xE0; // Enable transceiver; select full speed
/ H/ z9 J: @- T& w RSTSRC = 0x04;
' l% q8 B/ |6 C, P4 ]
/ @) ` J. e! l不過這樣設定的system clock 是 24MHz 沒錯, 但是卻變成原本USB可以跑的變成不能跑了 請問各位我是少設定了什麼嗎? , _9 m# Q0 k- w2 @% f2 c# a
我後來有把 CLKSEL |= SYS_4X_DIV_2; 這行註解掉1 X5 J2 b: D' ~8 \; b7 u
不知道是不是除頻的問題呢? 謝謝 |
|