STM8L052C6串口接收问题

2019-07-19 21:26发布

小弟最近做一个小东西,用的是STM8L052C6,STVD+COSMIC编译环境。调串口接收的时候怎么搞都不行。查询和中断都没有成功,换了几个板子都不没成功,有点疑惑,请大神指点。
贴程序:
void UART1_Init(void)
{
        SYSCFG->RMPCR1 &= 0xaf;
        SYSCFG->RMPCR1 |= 0x10;

        GPIO_Init(GPIOA,GPIO_Pin_2,GPIO_Mode_In_PU_No_IT);                   //串口接收  
        GPIO_Init(GPIOA,GPIO_Pin_3,GPIO_Mode_Out_PP_High_Slow);              //串口发送                 
        CLK_PeripheralClockConfig(CLK_Peripheral_USART1,ENABLE);

        USART_DeInit(USART1);
        USART_Init(USART1,9600,USART_WordLength_8b,USART_StopBits_1,USART_Parity_No,(USART_Mode_TypeDef)(USART_Mode_Rx|USART_Mode_Tx));
        USART_ClockInit(USART1,USART_Clock_Disable,USART_CPOL_Low,USART_CPHA_2Edge,USART_LastBit_Disable);
        USART_ClearITPendingBit(USART1,USART_IT_RXNE);
        enableInterrupts();
        USART_ClearITPendingBit(USART1,USART_IT_RXNE);
        USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);
        USART_Cmd(USART1,ENABLE);
}

中断
INTERRUPT_HANDLER(USART1_RX_TIM5_CC_IRQHandler,28)
{
    /* In order to detect unexpected events during development,
       it is recommended to set a breakpoint on the following instruction.
    */
        USART1_SendByte(0x88);
        bTemp=USART_ReceiveData8(USART1);//USART1->DR
        USART_ClearITPendingBit(USART1,USART_IT_RXNE);       
        USART1_SendByte(bTemp);
}

while(1)里面啥没有。。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
qhwan_love
1楼-- · 2019-07-19 23:53
PA1 PA2不是默认的USART端口吧,需要重新映射。
Dylan Hayden
2楼-- · 2019-07-20 04:56
 精彩回答 2  元偷偷看……
Dylan Hayden
3楼-- · 2019-07-20 09:07
 精彩回答 2  元偷偷看……

一周热门 更多>