色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          "); //-->

          博客專欄

          EEPW首頁 > 博客 > STM32 printf重定向(串口輸出)

          STM32 printf重定向(串口輸出)

          發(fā)布人:電子禪石 時間:2024-07-13 來源:工程師 發(fā)布文章

          一、前言


          什么是重定向?重定向是指將fputc里面的輸出指向目標(biāo)設(shè)備。

          因printf函數(shù)調(diào)用了fputc,而fputc輸出有默認(rèn)指向的目標(biāo),

          且不同庫中的fputc輸出指向不同,所以需要重寫fputc


          二、標(biāo)準(zhǔn)庫與HAL庫實現(xiàn)重定向到串口


          若需要printf輸出到串口,則需要將fputc里面的輸出指向串口,這一過程稱為重定向。


              1.標(biāo)準(zhǔn)庫(重定向到USARTx,代碼中為USART1)


          int fputc(int ch,FILE *p) 

           

          {

           

           USART_SendDate(USART1,(u8)ch);

           

           while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);

           

           return ch;

           

          }

              2.HAL庫 (重定向到huartx,代碼中為huart1)


          int fputc(int ch, FILE *f)

           

          {

           

            HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xffff);

           

            return ch;

           

          }

          NOTES:


          1.調(diào)用printf需先導(dǎo)入stdio.h頭文件


          2.需勾選Target中的use MicroLIB

          ————————————————


                                  

          原文鏈接:https://blog.csdn.net/xuhuang11/article/details/119580130


          *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



          關(guān)鍵詞: 重定向

          技術(shù)專區(qū)

          關(guān)閉