精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

STM32:如何寫出多串口共用printf函數語句?

單片機愛好者 ? 2018-07-20 11:37 ? 次閱讀

(1)問題描述: 多串口共用printf函數,百度到的資料大部分是建議重新寫一個xx_printf(format, …)。但是使用起來還是不方便,就此問題而言加上一個判斷語句便可解決。

(2)解決方法: printf函數最后調用的是int fputc(int ch, FILE *f),那么重新改寫此函數便可。

(3)代碼:

//標志量定義

int USART_PRINTF_FLAG = 2;//默認串口2

//改寫

fputcint fputc(int ch, FILE *f)

{

if (USART_PRINTF_FLAG == 2)

{

while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET);

USART_SendData(USART2,(uint8_t)ch);

}

else

{

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

USART_SendData(USART1,(uint8_t)ch);

}

return ch;

}

//中斷處理

void USART1_IRQHandler(void)

{

USART_PRINTF_FLAG = 1;

//your coding here.。.

}

void USART2_IRQHandler(void)

{

USART_PRINTF_FLAG = 2;

//your coding here.。.

}

STM32:如何寫出多串口共用printf函數語句?

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2266

    文章

    10871

    瀏覽量

    354796
  • 串口
    +關注

    關注

    14

    文章

    1543

    瀏覽量

    76190

原文標題:STM32多串口共用printf打印串口數據

文章出處:【微信號:gh_dae0718828df,微信公眾號:gh_dae0718828df】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何利用51單片機實現自己的串口發送函數printf函數同時共用

    51單片機如何實現自己的串口發送函數printf函數同時共用?發現調試過程中兩者不能共存
    發表于 10-14 21:16

    如何寫一個簡易的printf函數

    如何寫一個簡易的printf函數
    發表于 04-28 06:47

    如何寫出串口共用printf函數語句

    如何寫出串口共用printf函數語句呢?求大神解答
    發表于 11-17 06:37

    求大神解答如何去實現STM32串口printf函數

    求大神解答如何去實現STM32串口printf函數呢?
    發表于 11-30 06:56

    串口共用printf函數怎么實現?

    串口共用printf函數怎么實現?
    發表于 12-01 07:15

    基于STM32printf串口數據輸出

    該方法適用于 STM32 ,實現了使用printf等標準C流函數輸出數據的辦法,極大的減少了輸出 串口數據 時所需要做的數據處理。 實現原理 在C庫中,
    發表于 06-21 07:51 ?2w次閱讀
    基于<b class='flag-5'>STM32</b>的<b class='flag-5'>printf</b><b class='flag-5'>串口</b>數據輸出

    STM32中使用printf打印串口數據的實現原理及方法

    STM32中使用printf打印串口數據的實現原理 在C庫中,printf()等輸出流函數都是通過fputc()這個
    的頭像 發表于 07-22 11:12 ?1.5w次閱讀

    STM32單片機IAR環境下重定向printf函數

    STM32單片機IAR環境下重定向printf函數一、引言在項目開發中,使用printf函數通過串口
    發表于 12-03 10:36 ?15次下載
    <b class='flag-5'>STM32</b>單片機IAR環境下重定向<b class='flag-5'>printf</b><b class='flag-5'>函數</b>

    STM32使用串口重定向系統printf函數輸出時出現一初始化或使用printf函數系統卡死的原因及解決辦法

    STM32使用串口重定向系統printf函數輸出時出現一初始化或使用printf函數系統卡死的原
    發表于 12-09 10:06 ?13次下載
    <b class='flag-5'>STM32</b>使用<b class='flag-5'>串口</b>重定向系統<b class='flag-5'>printf</b><b class='flag-5'>函數</b>輸出時出現一初始化或使用<b class='flag-5'>printf</b><b class='flag-5'>函數</b>系統卡死的原因及解決辦法

    STM32F103串口1 printf函數的實現

    ??在單片機中使用最多的通信接口基本就是串口了,說起串口就不得不提串口中最常用的一個函數就是打印函數pr
    發表于 12-20 19:37 ?1次下載
    <b class='flag-5'>STM32</b>F103<b class='flag-5'>串口</b>1 <b class='flag-5'>printf</b><b class='flag-5'>函數</b>的實現

    STM32單片機基礎09——重定向printf函數串口輸出的多種方法

    本文詳細的介紹了如何重定向printf輸出到串口輸出的多種方法,包括調用MDK微庫(MicroLib)的方法,調用標準庫的方法,以及適用于 GNUC 系列編譯器的方法。1.printf與fputc
    發表于 12-27 19:22 ?9次下載
    <b class='flag-5'>STM32</b>單片機基礎09——重定向<b class='flag-5'>printf</b><b class='flag-5'>函數</b>到<b class='flag-5'>串口</b>輸出的多種方法

    stm32單片機串口使用printf及u3_printf

    無論是在51單片機還是在stm32,默認printf串口都是串口一。使用printf的時候頭文件為&amp;quot;stdio.h
    發表于 12-27 19:24 ?1次下載
    <b class='flag-5'>stm32</b>單片機<b class='flag-5'>串口</b>使用<b class='flag-5'>printf</b>及u3_<b class='flag-5'>printf</b>

    stm32printf函數串口輸出代碼

    stm32f103串口一與串口printf函數輸出、本人是萌新,因項目需要特意配置了該段代碼,不喜勿噴,純屬個人筆記。對于
    發表于 12-28 19:10 ?13次下載
    <b class='flag-5'>stm32printf</b><b class='flag-5'>函數</b>的<b class='flag-5'>串口</b>輸出代碼

    STM32中串行通訊中printf函數的使用

    由于最近使用到了串口屏,而它與STM32之間的連接是通過單片機之間的串行通訊實現的,具體而言我利用printf函數串口屏發送數據,而
    發表于 12-29 19:31 ?6次下載
    <b class='flag-5'>STM32</b>中串行通訊中<b class='flag-5'>printf</b><b class='flag-5'>函數</b>的使用

    stm32使用printf實現串口打印原理

    ??標準庫函數的默認輸出設備是顯示器, 要實現在串口或 LCD 輸出,必須重定義標準庫函數里調用的與輸出設備相關的函數 .例如 :printf
    發表于 01-13 14:55 ?5次下載
    <b class='flag-5'>stm32</b>使用<b class='flag-5'>printf</b>實現<b class='flag-5'>串口</b>打印原理