标题: 如何把这个STM32程序改成HAL库可用的 [打印本页]

作者: 12345678..    时间: 2021-3-1 19:24
标题: 如何把这个STM32程序改成HAL库可用的
u16 USART2_RX_STA=0;           


void USART2_IRQHandler(void)
{
        u8 res;              
        if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)//接收到数据
        {         
                res =USART_ReceiveData(USART2);                 
                if((USART2_RX_STA&(1<<15))==0)//接收完的一批数据,还没有被处理,则不再接收其他数据
                {
                        if(USART2_RX_STA<USART2_MAX_RECV_LEN)        //还可以接收数据
                        {
                                TIM_SetCounter(TIM4,0);//计数器清空                                          //计数器清空
                                if(USART2_RX_STA==0)                                 //使能定时器4的中断
                                {
                                        TIM_Cmd(TIM4,ENABLE);//使能定时器4
                                }
                                USART2_RX_BUF[USART2_RX_STA++]=res;        //记录接收到的值         
                        }else
                        {
                                USART2_RX_STA|=1<<15;                                //强制标记接收完成
                        }
                }
        }                                                                                                                           
}   

Snipaste_2021-03-01_19-22-47.png (188.23 KB, 下载次数: 75)

Snipaste_2021-03-01_19-22-47.png

作者: liesnake    时间: 2021-3-2 19:57
HAL库写串口通信比较麻烦的,每收到一个数据中断一次。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1