买了原子的板子,STM32串口代码问题

2019-08-23 14:39发布

下面这段代码是什么意思,谁能够解释一下。uart的代码          
#if 1
#pragma import(__use_no_semihosting)            

struct __FILE
{
        int handle;

};

FILE __stdout;      

_sys_exit(int x)
{
        x = x;
}

int fputc(int ch, FILE *f)
{      
        while((USART1->SR&0X40)==0);
    USART1->DR = (u8) ch;      
        return ch;
}
#endif

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
dingdi
2019-08-23 20:09
树上的龙猫 发表于 2017-4-1 16:48
应该是重定向printf函数吧,就是让串口支持printf函数打印

while(1)
        {
                if(USART_RX_STA&0x8000)
                {                                          
                        len=USART_RX_STA&0x3fff;
                        printf(" Äú·¢ËíμÄÏûÏ¢Îa: ");
                        for(t=0;t<len;t++)
                        {
                                USART_SendData(USART1, USART_RX_BUF[t]);
                                while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
                        }
                        printf(" ");
                        USART_RX_STA=0;
                }



if(USART_RX_STA&0x8000)   这里0x8000  我不太理解

一周热门 更多>