|
我想写一个计算的东西东西
但是不能显示
//******************************************************************************
// MSP-FET430P440 Demo - Timer_A Toggle P5.1, CCR0 upmode ISR, 32kHz ACLK
//
// Description; Toggle P5.1 using software and the TA_0 ISR. Timer_A is
// configured in an upmode, thus the the timer will overflow when TAR counts
// to CCR0. In this example, CCR0 is loaded with 1000.
// Toggle rate = 32768/(2*1000) = 16.384
// ACLK = TACLK = LFXT1 = 32768, MCLK = SMCLK = DCO = 32xACLK = 1.048576MHz
// //*An external watch crystal on XIN XOUT is required for ACLK*//
//
// MSP430F449
// ---------------
// /|\| XIN|-
// | | | 32kHz
// --|RST XOUT|-
// | |
// | P5.1|-->LED
//
// M. Buccini
// Texas Instruments, Inc
// January 2002
// Built with IAR Embedded Workbench Version: 1.25A
//******************************************************************************
#include <msp430x44x.h>
#include <lcd.h>
uchar lcd_digit_ta××e[];
void HEX2BCD(uint );
uint count=0;
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
FLL_CTL0 |= XCAP14PF; // Configure load caps
LCDCTL = 0x03d; // 4mux LCD, segs16-23 = outputs
BTCTL = BTFRFQ1; // set LCD frame freq = ACLK
P5SEL = 0xFC; // set Rxx and COM pins for LCD
TACTL = TASSEL0 + TACLR; // ACLK, clear TAR
CCTL0 = CCIE; // CCR0 interrupt ena××ed
CCR0 = 32768;
P5DIR |= 0x02; // Set P5.1 to output direction
TACTL |= MC0; // Start Timer_a in upmode
_EINT(); // Ena××e interrupts
for (;;)
{
_BIS_SR(LPM3_bits); // Enter LPM3
_NOP(); // Required only for C-spy
}
}
// Timer A0 interrupt service routine
interrupt[TIMERA0_VECTOR] void Timer_A (void)
{
P5OUT ^= 0x02; // Toggle P5.1 using exclusive-OR
count++;
HEX2BCD(count);
}
uchar lcd_digit_ta××e[] =
{
CHAR_0,
CHAR_1,
CHAR_2,
CHAR_3,
CHAR_4,
CHAR_5,
CHAR_6,
CHAR_7,
CHAR_8,
CHAR_9
};
/***hex_data(<0xff,>0)****/
void HEX2BCD(uint hex_data)
{
uint h ,t,i;
uchar a=3;
uchar hextobcd[];
hextobcd[0]=hex_data/1000;
h=hex_data%1000;
hextobcd[1] =h/100;
t=hex_data%100;
hextobcd[2]=t/10;
hextobcd[3]=hex_data%10;
for(i=0;i<4;i++)
{ LCDMEM[i] =lcd_digit_ta××e[hextobcd[a]];a--;}
}
|
|