写错参数导致串口重定向发不出来
int fputc(int ch,FILE *f) { // while((USART1->ISR&0X40)==0);//中断状态寄存器 // USART3->TDR=(uint8_t)ch;//传输数据寄存器-------------------好吧是你串口高错了 // // return ch; //USART_SendData(USART1, (unsigned char) ch); while (!(USART1->ISR & USART_FLAG_TXE)); HAL_UART_Transmit(&huart1,(uint8_t*)&ch,sizeof(ch),0xffff); return (ch); }
上述两种方法可
重定向,可以直接发送