X-Git-Url: http://www.average.org/gitweb/?p=pulsecounter.git;a=blobdiff_plain;f=Hal%2FHal.c;h=0cdcc297a85b19169fad377c4cf5a2cb2575ed75;hp=be668cb02c9f2e7b4fa5c3208e42e1645a22fef7;hb=693bc78d94d8321baf1744ab7f4c2f695a1b7377;hpb=440f8b92b68c9829d1b9ccf274db5f53fb4e0de7 diff --git a/Hal/Hal.c b/Hal/Hal.c index be668cb..0cdcc29 100644 --- a/Hal/Hal.c +++ b/Hal/Hal.c @@ -64,7 +64,7 @@ #define EAP_TX_INT_ENABLE() (IE2 |= UCA0TXIE) #define MCLK_TICKS_PER_MS 1000L -#define ACLK_TICKS_PER_SECOND 12000L +#define ACLK_TICKS_PER_SECOND 1500L /* was 12000L with divider /1 */ #define UART_WATCHDOG_PERIOD (ACLK_TICKS_PER_SECOND * 250) / 1000 #define UART_WATCH_DISABLE() (TA1CCTL1 = 0) // Turn off CCR1 Interrupt @@ -167,13 +167,21 @@ void Hal_init(void) { /* setup clocks */ WDTCTL = WDTPW + WDTHOLD; + /* MCLK = DCOCLK */ + /* MCLK divider = /1 */ + /* SMCLK divider = /1 */ BCSCTL2 = SELM_0 + DIVM_0 + DIVS_0; if (CALBC1_1MHZ != 0xFF) { DCOCTL = 0x00; BCSCTL1 = CALBC1_1MHZ; /* Set DCO to 1MHz */ DCOCTL = CALDCO_1MHZ; } - BCSCTL1 |= XT2OFF + DIVA_0; + /* XT2 is off (Not used for MCLK/SMCLK) */ + /* ACLK divider = /8 */ + BCSCTL1 |= XT2OFF + DIVA_3; + /* XT2 range = 0.4 - 1 MHz */ + /* LFXT1 range/VLO = VLOCLK (or 3-16 MHz if XTS=1) */ + /* Capacitor 6 pF */ BCSCTL3 = XT2S_0 + LFXT1S_2 + XCAP_1; /* setup LEDs */