#pragma interrupt_handler uart0_rx_isr:iv_USART0_RXC
void uart0_rx_isr(void)
{
unsigned char ucTmp;
//uart has received a character in UDR
ucTmp=UDR;
if (ucTmp=='A')
{
ucRecv=ucTmp;
ucRecvOk=0x01;
}
}
#pragma interrupt_handler uart0_tx_isr:iv_USART0_TXC
void uart0_tx_isr(void)
{
//character has been transmitted
if (ucComSendCnt!=0)
{
ucComSendPtr+=1;
UDR=ucSendData[ucComSendPtr];
ucComSendCnt-=1;
}else
{
//PORTB&=~BIT(PB_COM_LED); //串口指示燈滅
DISABLE_UARTTX();
//PORTB^=BIT(PB_COM_LED); //串口指示燈滅
}
}
//call this routine to initialize all peripherals
void InitMcu(void)
{
//stop errant interrupts until set up
CLI(); //disable all interrupts
InitPort();
InitUart0();