下面是中断函数 请各位看看问题出在哪
void USART2_IRQHandler(void)
{
int i;
static unsigned char counter=0; //接收十个数
if(USART_GetITStatus(USART2,USART_IT_RXNE)==SET) //中断是否产生
{
USART_ClearITPendingBit(USART2,USART_IT_RXNE);
RxBuffer[counter]=USART_ReceiveData(USART2); //接收数据
counter++;
if(counter>=10)
counter=0;
}
for(i=0;i<10;i++)
{
USART_SendData(USART2,RxBuffer); //发送数据
while(USART_GetFlagStatus(USART2,USART_FLAG_TC)== RESET);//判断是否发送完
}
}
|