我使用的是IAR环境单片机使用查询方式接收数据
但是不知道串口中断函数的格式怎么写
如果直接把串口中断的处理函数写到main中,是不是也可以啊?
int main( void )
{
/* Enable general interrupts */
enableInterrupts();
/*High speed internal clock prescaler: 1*/
CLK_MasterPrescalerConfig(CLK_MasterPrescaler_HSIDiv1);
/*Set the USART RX and USART TX at high level*/
GPIO_ExternalPullUpConfig(GPIOC,GPIO_Pin_3|GPIO_Pin_4, ENABLE);
USART_DeInit();
USART_Init((uint32_t)9600, USART_WordLength_8D, USART_StopBits_1,
USART_Parity_Odd, USART_Mode_Rx | USART_Mode_Tx);
USART_ITConfig(USART_IT_TXE, ENABLE);
USART_ITConfig(USART_IT_RXNE, ENABLE);
//查询法
while(1)
{
//当RDR移位寄存器中的数据传递到USART_DR中时,SR的bit5被硬件置1,说明单片机收到数据
if(USART->SR&0x20)
{
data=USART->DR;//把接收到的数据储存到变量data中
}
//发送数据
Send_date(data);
}//while结束
}//main结束 |