mosbus slave调试软件为什么只接收一次数据后就不接收了?

2019-07-21 00:25发布


void modbus_master_interrupt(void)     //modbus中断函数  串口5
{
  Rec.len = MODBUS_MASTER_BUF_LEN - USART5_Rx_DMA_Channel->CNDTR;  //DMA通道数据寄存器数量
  if (Rec.len == 0)
    return;
  MYDMA_Enable(USART5_Rx_DMA_Channel, MODBUS_MASTER_BUF_LEN);
}

  if(USART_GetITStatus(USART5, USART_IT_IDLE) != RESET)
  {  
    USART_ClearFlag(USART5,USART_FLAG_IDLE);
    modbus_master_interrupt();  //中断服务函数 modbus主机
  }



中断函数一共就这两句话,应该不是中断的问题,可能还有那边出错了?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。