国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于 printf和scanf在開發(fā)STM32中的配置和應(yīng)用

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 2020-03-24 10:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Ⅰ、寫在前面

在我們學(xué)習(xí)C語言的時候都應(yīng)該知道printf和scanf這個函數(shù),但是你們在開發(fā)中經(jīng)常使用這個函數(shù)嗎?

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

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

Ⅱ、printf和scanf的配置

printf和scanf都知道他們是“標(biāo)準(zhǔn)函數(shù)接口”,源代碼的實現(xiàn)過程就不用我們自己寫,只需要調(diào)用就行了。

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

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

1.使用微庫

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

MDK-ARM的使用微庫:

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

EWARM的使用微庫:

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

2.串口重定義

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

STM32工程中:

Ⅲ、printf和scanf的使用

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

我們在實際應(yīng)用中,常用的應(yīng)該是printf這個函數(shù),而scanf這個函數(shù)比較少見,但也是有些地方可以使用的,比如要在某個地方傳遞參數(shù),可以通過scanf輸入?yún)?shù),以便調(diào)試。

在STM32工程代碼中簡單的應(yīng)用:

通過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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • STM32
    +關(guān)注

    關(guān)注

    2309

    文章

    11162

    瀏覽量

    373415
  • C語言
    +關(guān)注

    關(guān)注

    183

    文章

    7644

    瀏覽量

    145575
  • Printf
    +關(guān)注

    關(guān)注

    0

    文章

    84

    瀏覽量

    14732
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    求助STM32H563關(guān)于LWESP配置UART問題

    求助STM32H563關(guān)于LWESP配置UART問題,信息如下: Uart GPIO:PA9 USART1_TXPA10 USART1_RX 參考文章:https://blog.csdn.net
    發(fā)表于 01-27 14:02

    請問串口接收可以用scanf接收嗎?

    串口接收可以用scanf接收嗎?
    發(fā)表于 01-15 08:20

    linux-arm開發(fā)環(huán)境的簡單配置

    linux-arm開發(fā)環(huán)境簡單配置 關(guān)于linux-arm開發(fā)環(huán)境簡單配置是ARM學(xué)習(xí)的第一步,很多初學(xué)者會在這問題上糾結(jié)很久都不能
    發(fā)表于 01-13 07:56

    ADS編譯器,用標(biāo)準(zhǔn)的C庫函數(shù)printf()需要哪些設(shè)置呢?

    ADS編譯器,用標(biāo)準(zhǔn)的C庫函數(shù)printf()需要哪些設(shè)置呢?又在哪兒可以看到printf()輸出的信息呢?
    發(fā)表于 12-23 07:32

    scanf函數(shù)介紹

    scanf函數(shù)向字符型數(shù)組輸入數(shù)據(jù)char a[20]; scanf(\"%s\", a); 錯誤 scanf(%s\",a); 正確 用scanf函數(shù)向數(shù)值型
    發(fā)表于 12-02 06:07

    求助,關(guān)于C代碼printf打印的疑問求解

    使用E203 testbench執(zhí)行附帶的benchmark測試用例時候,得到如下打印信息: CPU驗證小白一枚,有個問題不是很理解:黃色框框內(nèi)的字符看起來應(yīng)該是C代碼printf語句
    發(fā)表于 11-10 07:54

    Arty移植蜂鳥E203后,發(fā)現(xiàn)不支持scanf函數(shù),怎么解決?

    本人想用Arty A7 35T做一些基于蜂鳥E203的串口交互開發(fā),目前已經(jīng)移植并且成功運行了printf函數(shù)。 測試scanf函數(shù)的時候,發(fā)現(xiàn)結(jié)果不理想(好吧其實就沒反應(yīng)),于是讀
    發(fā)表于 11-07 07:13

    Proteus配置STM32外部時鐘HSE如何配置

    有大佬會配置ProteusSTM32F103C8的外部時鐘嗎 這個proteus打印不出來數(shù)據(jù),但是實物的連接
    發(fā)表于 11-02 13:54

    printf函數(shù)hbird SDK的應(yīng)用

    helloworld的例程,使用到了printf函數(shù),通過串口輸出了數(shù)據(jù)。 Nuclei Studio通過teminal窗口可以查
    發(fā)表于 10-31 08:48

    STM32 Nucleo-144開發(fā)板技術(shù)解析與應(yīng)用指南

    STMicroelectronics NUCLEO-H7S3L8 STM32 Nucleo-144開發(fā)板采用STM32H7S3L8 MCU,提供了一個經(jīng)濟實惠的多功能平臺,用于原型設(shè)計和實驗
    的頭像 發(fā)表于 10-17 14:40 ?1133次閱讀
    <b class='flag-5'>STM32</b> Nucleo-144<b class='flag-5'>開發(fā)</b>板技術(shù)解析與應(yīng)用指南

    對于STM32CubeMx使用FMC的NAND FLASH里面配置這些時間有什么說明嗎?

    對于STM32CubeMx使用FMC的NAND FLASH里面配置這些時間有什么說明嗎?
    發(fā)表于 07-21 07:07

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

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

    STM32CubeMX配置DCMI的腳位時,Mode的選項, 只有8bits, 10bits與12bits, 為何沒有14bits?

    STM32CubeMX配置DCMI的腳位時,Mode的選項, 只有8bits, 10bits與12bits, 為何沒有14bits?
    發(fā)表于 04-27 08:49

    為什么GPIO配置總是出問題?

    STM32開發(fā),GPIO(通用輸入輸出)配置看似簡單,但在實際開發(fā)
    的頭像 發(fā)表于 04-07 11:59 ?1728次閱讀
    為什么GPIO<b class='flag-5'>配置</b>總是出問題?

    STM32開發(fā)入門進階必備!《STM32嵌入式系統(tǒng)開發(fā)—基于STM32CubeMX和HAL庫》新書發(fā)布!

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