|
請問各位小弟目前用的MCU是 Siliconlab的C5081F320, spec中說明這顆MCU可以開到24MHz 的system clock) Q$ P/ E3 a" c0 x4 A' o
因此小弟照spec上的設定下去寫{
: S: c+ m' ?' W, ?& j- M: U0 z CLKMUL = 0x00;j]jjU
! A- X, a U9 L. ]! C( e CLKMUL |= 0x80; // Enable clock multiplier+ `6 |+ |$ [; v8 a5 j
for( x= 0; x < 20; x++ ); // Wait 5us for initialization) v! b' c/ ]2 Y' Q# ^) c
CLKMUL |= 0xC0; // Initialize the clock multiplier
/ S- j6 W9 o" e7 h7 F while((CLKMUL & 0x20)==0); ) E, h( ~6 C8 ?% k# v, H
CLKSEL = SYS_INT_OSC; // Select USB clock (48MHz) CLKSEL = 0x02;- A4 [0 l0 V2 S3 [, j0 j# A
CLKSEL |= SYS_4X_DIV_2; // Select system clock (24MHz)C, z2 T& T- M7 q% P( E/ Z5 y
OSCICN |= 0x83;TNPC; Z2 N5 O: z/ \" Z) w9 x
USB0XCN |= 0xE0; // Enable transceiver; select full speed, \: u; B3 h# ^6 e' w! d
RSTSRC = 0x04;
5 @; [$ h& C6 V% A2 _! }/ M7 }, l! s/ n0 }7 v0 Y5 z
不過這樣設定的system clock 是 24MHz 沒錯, 但是卻變成原本USB可以跑的變成不能跑了 請問各位我是少設定了什麼嗎?
1 v8 i& r( P" k: B1 t我後來有把 CLKSEL |= SYS_4X_DIV_2; 這行註解掉7 U3 q: s4 s) `2 s1 F7 g' F
不知道是不是除頻的問題呢? 謝謝 |
|