用串口给uart1发送了一个0x03,但是UART1_RecvString(RxBuff);这个代码读出来的数据最高位永远是1,不管发送的数据是几,调试的时候代码读出来最高位都是1这是什么问题
__INTERRUPT __HIGH_CODE void UART1_IRQHandler(void) { volatile uint8_t i; switch(UART1_GetITFlag()) { case UART_II_LINE_STAT: // 线路状态错误 { // UART0_GetLinSTA(); break; } case UART_II_RECV_RDY: // 数据达到设置触发点 break; case UART_II_RECV_TOUT: // 接收超时,暂时一帧数据接收完成 i = UART1_RecvString(RxBuff); LOG_INFO("shoudao%d",RxBuff[0]); break; case UART_II_THR_EMPTY: // 发送缓存区空,可继续发送 break; case UART_II_MODEM_CHG: // 只支持串口0 break; default: break; } }
热门产品 :
CH32V317: 互联型青稞RISC-V MCU