首页 > 其他 > 详细

STM32串口收发

时间:2021-05-06 09:48:32      阅读:25      评论:0      收藏:0      [点我收藏+]

串口发送:

技术分享图片
void Usart_SendString(USART_TypeDef *USARTx, unsigned char *str, unsigned short len)
{

    unsigned short count = 0;
    
    for(; count < len; count++)
    {
        USART_SendData(USARTx, *str++);
        while(USART_GetFlagStatus(USARTx, USART_FLAG_TC) == RESET);
    }
}
Usart_SendString
技术分享图片
void UsartPrintf(USART_TypeDef *USARTx, char *fmt,...)
{
    unsigned char UsartPrintfBuf[296];
    va_list ap;
    unsigned char *pStr = UsartPrintfBuf;
    
    va_start(ap, fmt);
    vsnprintf((char *)UsartPrintfBuf, sizeof(UsartPrintfBuf), fmt, ap);    
    va_end(ap);
    
    while(*pStr != 0)
    {
        USART_SendData(USARTx, *pStr++);
        while(USART_GetFlagStatus(USARTx, USART_FLAG_TC) == RESET);
    }
}
UsartPrintf

串口接收:

技术分享图片
void USART1_IRQHandler(void) 
{
    u8 Res=0;
    Res = USART_ReceiveData(USART1);
    USART1_RX_BUF[First_Int] = Res; 
    First_Int++; 
    if(First_Int >= USART_REC_LEN)
    {
        First_Int = 0;
    }
}     
USART1_IRQHandler

 

STM32串口收发

原文:https://www.cnblogs.com/lzemian-n/p/14733289.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!