(msp430g2231) 마이크로 컨트롤러를 재설정 :MSP430 시계 문제는 이후
void configure_clock(void) {
if (CALBC1_1MHZ == 0xFF || CALDCO_1MHZ == 0xFF) { // Checks the clock constants
while(TRUE); // If callibration constants are erased, TRAP!
}
BCSCTL1 |= CALBC1_1MHZ; // Sets DCO range
DCOCTL |= CALDCO_1MHZ; // Set DCO step and modulation
BCSCTL1 &= ~(XTS | XT2OFF); // Disables XT2 and sets low frequency mode
BCSCTL3 |= (LFXT1S_0 | XCAP_3); // Selects LFXT1 crystal with 12,5pF
do {
IFG1 &= ~OFIFG;
__delay_cycles(1000);
} while (IFG1 & OFIFG); // Waits until crystal stabilizes
BCSCTL2 |= (SELM_2 | SELS); // Selects SMCLK and MCLK from LFXT1CLK
}
문제가 처음으로이 코드를 실행 (바로 마이크로 컨트롤러를 전원을 켠 후) 모든 것이 예상대로 작동하며 32768 kHz 클럭을 얻습니다. 그러나 보드의 리셋 버튼 (MSP430 Launchpad)을 누르면 시계가 올바르게 작동하지 않는 것처럼 보입니다. 코드는 매우 천천히 (예 : 10 번 정도) 실행됩니다. 클럭 구성에 대한 아이디어가 있습니까?
감사합니다.
pere
감사합니다. 귀하의 제안을 시도하고 그들이 작동하는지 알려 드리겠습니다 ... –