|
本帖最后由 飞思卡驴 于 2013-7-29 11:07 编辑
各位大神,小弟用430F449时用的官方历程发现不能进入接收中断。求帮助,串口的硬件是好的。现在只能发给电脑,但是接不到电脑的数据。没有进入中断。
/******************************************************************************
函数名称: 串口初始化
修改日期:
入口参数:9600 n 8 1
返回值: 无
******************************************************************************/
void USART0_INT(void)
{
FLL_CTL0 &= 0xbf; // Configure load caps
P2SEL |= 0x30; // P2.4,5 = USART0 TXD/RXD
P2DIR |= 0x10; // P2.4 output direction
UCTL0 |= SWRST; // Initialize USART state machine
UCTL0 |= CHAR; // 8-bit character
UTCTL0 |=SSEL0+SSEL1; // UCLK = SMCLK
UBR00 = 0x41; // 8MHz 9600
UBR10 = 0x03; // 8MHz 9600
UMCTL0 = 0x03; // modulation
ME1 |= UTXE0 + URXE0; // Enable USART0 TXD/RXD
IE1 |= URXIE0; // Enable USART0 RX interrupt
UCTL0 &=~SWRST; // Initialize USART state machine
_EINT();
}
/******************************************************************************
函数名称:串口中端接收
修改日期:
入口参数:无
返回值: 无
******************************************************************************/
#pragma vector=USART0RX_VECTOR
__interrupt void usart0_rx (void)
{
while (!(IFG1 & UTXIFG0)); // USART0 TX buffer ready?
TXBUF0 = RXBUF0; // RXBUF0 to TXBUF0
}
|
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|