使用的是RS485通信协议接受外部模块信息,之前调试好了,放完假回来就接收不到数据了,接收数组返回的都是初始值 
 
主函数如下 
 
    HAL_StatusTypeDef ret; 
    uint8_t buf[12]; 
        uint8_t tx_buff[8] = {0x01,0x03,0x00,0x00,0x00,0x09,0x85,0xcc};//发生数据 
        float out_buff[9]; 
        uint8_t rx_buff[100];//接收数据 
 
  while (1) 
  { 
 
      buf[0]=0xFB;  // PCG8574T P6 = 1 发送模式   1111 1011 其他引脚保持空闲默认状态 
      ret=HAL_I2C_Master_Transmit(&hi2c2, PCF8574_ADDR, buf, 1, 100); 
      HAL_UART_Transmit(&huart2, tx_buff, 8, 100); 
         
 
      buf[0]=0xBB;  // PCG8574T P6 = 0 接收模式   1011 1011 其他引脚保持空闲默认状态 
               HAL_UART_Receive(&huart2,(uint8_t *)rx_buff, 100, 100) 
               HAL_UART_Transmit(&huart1, (uint8_t *)rx_buff,100, 100); 
 
} 
 
 
 |