感谢问题已解决
修改代码如下
CH571
串口查询方式发送
__attribute__((section(".highcode")))
void USART1_SendByte(uint8_t Data)
{
UART1_SendByte(Data);
mDelaymS(1);
}
串口配置如下:
GPIOA_SetBits( GPIO_Pin_9 );
GPIOA_ModeCfg( GPIO_Pin_8, GPIO_ModeIN_PU ); // RXD-配置上拉输入
GPIOA_ModeCfg( GPIO_Pin_9, GPIO_ModeOut_PP_5mA ); // TXD-配置推挽输出,注意先让IO口输出高电平
UART1_DefInit();
void UART1_DefInit( void )
{
UART1_BaudRateCfg( 9600 );
R8_UART1_FCR|=0x40;
R8_UART1_FCR&=0x7F;
R8_UART1_FCR = RB_FCR_TX_FIFO_CLR | RB_FCR_RX_FIFO_CLR| RB_FCR_FIFO_EN;// FIFO打开,触发点4字节
R8_UART1_LCR = RB_LCR_WORD_SZ;
R8_UART1_IER = RB_IER_TXD_EN;
R8_UART1_DIV = 1;
}
串口接收代码如下:
__attribute__((section(".highcode")))
uint8_t USART2_RcvByte(void)
{
uint8_t Rcvbuffer;
while(R8_UART1_LSR&0x01==1)
{
}
Rcvbuffer=UART1_RecvByte();
return Rcvbuffer;
}