女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

關于 printf和scanf在開發STM32中的配置和應用

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-24 10:50 ? 次閱讀

Ⅰ、寫在前面

在我們學習C語言的時候都應該知道printf和scanf這個函數,但是你們在開發中經常使用這個函數嗎?

在我們購買開發板配套例程以及在網上找的例程中或許會見到使用printf函數的地方,就有許多人問,這個printf和scanf是如何配置才能使用的?

printf和scanf串口打印功能對于學習開發的朋友是一種很好的工具,在沒有顯示屏或更多表現你程序運行結果的時候,用它打印信息就能很好地解決這個問題。在實際項目中,用于打印某段程序運行狀態,也能幫你快速判斷程序的正確性。

Ⅱ、printf和scanf的配置

printf和scanf都知道他們是“標準函數接口”,源代碼的實現過程就不用我們自己寫,只需要調用就行了。

printf和scanf在軟件中要實現其功能,就需要對軟件及工程進行配置,我們下面講述一下常規的配置。

配置分使用微庫和不使用微庫兩種方法,不使用微庫就是需要在代碼中多添加一段代碼,由于使用“標準函數接口”這種方式與編譯工具關系很緊密,在不同 編譯器上實現的方式存在不同(意思就是通用性不是很強),所以不建議使用這種方法。因此,我們講述使用微庫配置的方法。

1.使用微庫

我們講述MDK-ARM 和 EWARM下的配置。

MDK-ARM的使用微庫:

Project -> Options for Target -> Target 勾選上“Use Micro LIB”,如下圖:

EWARM的使用微庫:

Project -> Options -> General Options -> Library Configuration 選中“Full”,如下圖:

2.串口重定義

由于我們使用的是USART串口進行打印數據,則需要使用串口重定義。其實很簡單,就是要在源代碼中重定義兩個函數:int fputc(int ch, FILE *f)和int fgetc(FILE *f)

STM32工程中:

Ⅲ、printf和scanf的使用

printf和scanf的功能這里不再描述,在你工程運用中會逐漸明白他的用途,我們這里提供例程代碼并講述一下他們的簡單使用方法。

我們在實際應用中,常用的應該是printf這個函數,而scanf這個函數比較少見,但也是有些地方可以使用的,比如要在某個地方傳遞參數,可以通過scanf輸入參數,以便調試。

在STM32工程代碼中簡單的應用:

通過scanf輸入一個字符,通過pringf打印輸入的字符,代碼如下:

char GetData;

While(1)

{

scanf("%c", &GetData);

printf("GetData = %c\n", GetData);

}

基于STM32F103的實例代碼(其他配置原理一樣)我已近打包分享給大家:

基于Keil工具的代碼:

http://pan.baidu.com/s/1kUELHnL

基于IAR工具的代碼:

http://pan.baidu.com/s/1nuILwed

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

    關注

    2289

    文章

    11011

    瀏覽量

    362298
  • C語言
    +關注

    關注

    180

    文章

    7630

    瀏覽量

    140221
  • Printf
    +關注

    關注

    0

    文章

    84

    瀏覽量

    14078
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    瑞薩RA單片機e2 studio環境下printf編譯出錯的問題解析

    最近看到有一些網友討論關于:瑞薩RA單片機e2 studio環境下printf編譯出錯的問題。
    的頭像 發表于 05-24 15:51 ?504次閱讀
    瑞薩RA單片機<b class='flag-5'>在</b>e2 studio環境下<b class='flag-5'>printf</b>編譯出錯的問題解析

    STM32開發入門進階必備!《STM32嵌入式系統開發—基于STM32CubeMX和HAL庫》新書發布!

    上市。高校教學推薦,STM32入門必讀!圖書介紹《STM32嵌入式系統開發——基于STM32CubeMX和HAL庫》是一本介紹嵌入式系統
    的頭像 發表于 04-03 14:54 ?549次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>開發</b>入門進階必備!《<b class='flag-5'>STM32</b>嵌入式系統<b class='flag-5'>開發</b>—基于<b class='flag-5'>STM32</b>CubeMX和HAL庫》新書發布!

    STM32開發板教程之STM32開發指南免費下載

    介紹了幾個常用的系統文件(程序);3,實戰篇,主要通過 56 個實例(絕大部分是直接操作寄存器完成的)帶領大家一步步深入 STM32 的學習。   本指南為 ALIENTEK 戰艦 STM32 開發板的配套教程,
    發表于 02-28 09:08 ?179次下載

    STM32MP25x開發板Bring Up培訓課程(下)

    STM32MP25x開發板BringUp培訓課程(上)STM32MP25x開發板BringUp培訓課程()米爾基于
    的頭像 發表于 02-27 08:03 ?569次閱讀
    <b class='flag-5'>STM32</b>MP25x<b class='flag-5'>開發</b>板Bring Up培訓課程(下)

    工程師開發利器:STM32CubeMX 與 eDesignSuite 的協同開發

    CubeMX 的核心功能與優勢STM32CubeMX 是 ST 官方推出的圖形化配置工具,專為簡化 STM32 微控制器開發流程而設計。以下是其核心功能和優勢:硬件
    的頭像 發表于 02-26 14:07 ?623次閱讀
    工程師<b class='flag-5'>開發</b>利器:<b class='flag-5'>STM32</b>CubeMX 與 eDesignSuite 的協同<b class='flag-5'>開發</b>

    STM32F1開發指南

    這本書詳細講述了STM32HAL庫開發配置流程,非常詳細
    發表于 01-21 15:33 ?3次下載

    試用報告1--關于PG2L100H開發板啟動選項配置的問題

    查閱開發板各種資料的過程中發現不同資料中關于芯片啟動選項的配置描述不統一,比如原理圖中通過QSPI Flash啟動的時候應該配置為0010(如圖1所示),但是
    發表于 12-29 21:13

    stdio.h實現了printf函數?

    printf 函數,作用就是告訴編譯器,printf 是個函數,編譯的時候不要報錯。 至于 printf 的實現,
    的頭像 發表于 12-18 10:28 ?522次閱讀

    51單片機為什么很少出現printf的身影

    51單片機為什么很少出現 printf 的身影?是用不了嗎? 不是的,51單片機可以用 printf,只是不建議使用。 平時我們操作系統上寫C語言代碼,使用
    的頭像 發表于 12-03 10:46 ?1129次閱讀
    51單片機<b class='flag-5'>中</b>為什么很少出現<b class='flag-5'>printf</b>的身影

    HAL庫STM32開發的重要性

    HAL庫(Hardware Abstraction Layer Library,硬件抽象層庫)STM32開發扮演著至關重要的角色。以下是HAL庫
    的頭像 發表于 12-02 13:35 ?1166次閱讀

    STM32H503開發(1)----開發板測試

    的接口和外設,以及傳感器(SENSOR)系列連接器接口,為開發者提供了便捷且靈活的開發環境。 這里通過配置LED和UART輸出進行簡單測試。
    的頭像 發表于 11-28 09:23 ?1144次閱讀
    <b class='flag-5'>STM32</b>H503<b class='flag-5'>開發</b>(1)----<b class='flag-5'>開發</b>板測試

    stm32 GPIO中斷配置教程

    嵌入式開發STM32微控制器因其高性能和豐富的外設而廣受歡迎。GPIO(通用輸入/輸出)中斷是STM32微控制器中常用的功能之一,它允
    的頭像 發表于 11-19 15:53 ?2993次閱讀

    記錄我的stm32開發學習過程

    (UartTransmit()和printf()); 實現stm32單片機串口數據接收功能(阻塞接收和中斷接收); 條件聲明: 本實驗的軟件開發工具為Keil,基礎代碼由STM32Cu
    發表于 11-19 14:37

    stm32用串口燒錄怎么設置

    準備工作 確保您擁有STM32開發板和相應的硬件設備,如USB轉串口模塊。 安裝STM32CubeMX和STM32CubeProgrammer軟件,這些是ST官方提供的工具,用于
    的頭像 發表于 08-22 09:33 ?2871次閱讀

    ai開發需要什么配置

    較高核心數和主頻的CPU,如Intel Xeon或AMD Ryzen系列。此外,多線程技術也可以提高AI開發的性能。 1.2 GPU 深度學習是AI開發的重要組成部分,而GPU深度學習
    的頭像 發表于 07-02 09:54 ?2454次閱讀