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

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

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

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

關(guān)于STM32的GPIO配置不同輸出速度會有什么影響?

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

掃碼添加小助手

加入工程師交流群

今天有人問:GPIO配置不同輸出速度會有什么影響?你知道答案嗎?

1寫在前面

這個問題看起來比較簡單,我相信很多人都能說出答案。

但是,很多人都只是停留在表面,至于深層次的含義,估計很少有人思考。

需要更深理解其中含義,可能需要結(jié)合特定場景來說,我自己也是在項目中才深刻體會其中含義。

2GPIO輸出速度

不管標準外設(shè)庫,還是STM32CubeMX配置GPIO輸出引腳,都會有速度GPIO_InitStruct.Speed這個選項。

類似如下:

GPIO_InitStruct.Pin = GPIO_PIN_5; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);

根據(jù)不同MCU型號,速度選項,有些有3個,有些有4個。一般定義在xxx_gpio.h文件中。

#define GPIO_Speed_2MHz GPIO_Speed_Level_1 /*!< I/O output speed: Low 2 MHz */#define GPIO_Speed_10MHz GPIO_Speed_Level_2 /*!< I/O output speed: Medium 10 MHz */#define GPIO_Speed_50MHz GPIO_Speed_Level_3 /*!< I/O output speed: High 50 MHz */

#define GPIO_SPEED_FREQ_LOW (0x00000000u) /*!< Low speed */#define GPIO_SPEED_FREQ_MEDIUM (0x00000001u) /*!< Medium speed */#define GPIO_SPEED_FREQ_HIGH (0x00000002u) /*!< High speed */#define GPIO_SPEED_FREQ_VERY_HIGH (0x00000003u) /*!< Very high speed */

對于普通輸出GPIO,使用STM32CubeMX配置,默認配置低:

當然,如果配置成其他模式,有可能是中,或高。

比如:配置UARTCAN引腳,速度會是高。

提問:你想過為什么會是低、高嗎?

3實驗:測量GPIO輸出波形

不知道大家用示波器測量過GPIO輸出波形沒有,特別是在高速(單位M)的時候。

我以前經(jīng)常測量MCO引腳輸出時鐘,測量過的人應(yīng)該都知道,如果輸出速度和配置速度不匹配,會明顯看到波形不正常。

波形會出現(xiàn)不完整,幅度低等失真現(xiàn)象。

相信不用我說,有一定常識的人都能理解。

4具體原因

速度的配置,就是決定IO口驅(qū)動電路的響應(yīng)速度。

我們需要結(jié)合實際情況配置速度,不同速度會有不同的影響。

高低速差異:

配置高速:輸出頻率高,噪音大,功耗高,電磁干擾強;

配置低速:輸出頻率低,噪音小,功耗低,電磁干擾弱;提高系統(tǒng)EMI(電磁干擾)性能;


看到差異,相信很多人就能理解了。

實際情況中,比如:低功耗的產(chǎn)品,你會考慮功耗。

環(huán)境不好的場合,通信不穩(wěn)定,你會考慮電磁干擾等。

舉例:

如果你使用9600波特率UART通信,建議速度配置為低。

所以,如果你想使產(chǎn)品更加完美,速度配置也是關(guān)鍵的一項。

聲明:本文內(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

    瀏覽量

    373399
  • 輸出
    +關(guān)注

    關(guān)注

    0

    文章

    96

    瀏覽量

    22819
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1328

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

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

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

    【MCU學(xué)習(xí)】GPIO詳解

    本實驗通過一個“小實驗框架 GPIO Mode Lab”,在同一個 GPIO 引腳上依次配置不同模式,并用 ADC 探頭測量電壓、同時讀取數(shù)字電平,系統(tǒng)化地觀察。
    的頭像 發(fā)表于 01-24 11:45 ?3540次閱讀
    【MCU學(xué)習(xí)】<b class='flag-5'>GPIO</b>詳解

    掌握 LuatIO:GPIO 復(fù)用模式初始化配置全流程解析

    在使用 LuatIO 進行嵌入式應(yīng)用開發(fā)時,合理配置 GPIO 的復(fù)用功能是實現(xiàn)外設(shè)控制的前提。本文全面解析 GPIO 引腳由普通 IO 轉(zhuǎn)換為復(fù)用功能引腳的初始化流程,包括時鐘使能、模式選擇、
    的頭像 發(fā)表于 01-23 15:28 ?1099次閱讀
    掌握 LuatIO:<b class='flag-5'>GPIO</b> 復(fù)用模式初始化<b class='flag-5'>配置</b>全流程解析

    單片機IO配置不同速度有啥區(qū)別

    一下。 GPIO輸出速度 不管標準外設(shè)庫,還是STM32CubeMX配置GPIO
    發(fā)表于 12-29 07:45

    CW32F030配置GPIO的話,需要像STM32那樣禁用JTAG嗎?

    請問CW32F030配置GPIO的話,需要像STM32那樣禁用JTAG嗎
    發(fā)表于 12-08 07:26

    關(guān)于野火stm32開發(fā)板,自己構(gòu)建庫函數(shù)點亮LED中GPIO初始化函數(shù)的優(yōu)化

    野火stm32F103霸道開發(fā)板中為了讓初學(xué)者了解庫函數(shù)的建立過程,和GPIO端口寄存器的設(shè)置。特意寫了一章,其中關(guān)于端口某個引腳的初始化函數(shù),邏輯很復(fù)雜,對初學(xué)者不是很友好,現(xiàn)將原有代碼和優(yōu)化后
    發(fā)表于 10-29 16:03

    技能+1!如何在樹莓派上使用C++控制GPIO

    和PiGPIO等庫,C++可用于編程控制樹莓派的GPIO引腳。它提供了更好的性能和控制能力,非常適合對速度和精度要求較高的硬件項目。在樹莓派社區(qū)中,關(guān)于“Python
    的頭像 發(fā)表于 08-06 15:33 ?4150次閱讀
    技能+1!如何在樹莓派上使用C++控制<b class='flag-5'>GPIO</b>?

    GPIO配置的工作原理是什么?

    我使用 EZ-USB 配置實用程序,我想知道是否有人知道 GPIO 配置的工作原理。 例如,GPIO0 可以用作傳感器復(fù)位,我知道這個 GPIO
    發(fā)表于 05-19 06:56

    HTR3306 6路LED驅(qū)動器和GPIO控制器中文手冊

    輸出。? ? 通電后,6個IO端口配置默認為GPIO輸出,默認狀態(tài)根據(jù)AD0和AD1決定。所有配置為輸入的IO端口都會持續(xù)監(jiān)控狀態(tài)變化,并
    發(fā)表于 04-14 17:41 ?1次下載

    HTR3310 10路LED驅(qū)動器和GPIO控制器中文手冊

    輸入或輸出。? ? ?通電后,10個IO端口配置默認為GPIO輸出,默認狀態(tài)根據(jù)AD0和AD1決定。所有配置為輸入的IO端口都會持續(xù)監(jiān)控狀態(tài)
    發(fā)表于 04-14 16:31 ?2次下載

    HTR3316 16路LED驅(qū)動器和GPIO控制器中文手冊

    輸入或輸出。? ? ?通電后,16個IO端口配置默認為GPIO輸出,默認狀態(tài)根據(jù)AD0和AD1決定。所有配置為輸入的IO端口都會持續(xù)監(jiān)控狀態(tài)
    發(fā)表于 04-11 17:51 ?2次下載

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

    STM32開發(fā)中,GPIO(通用輸入輸出配置看似簡單,但在實際開發(fā)中,很多人常常會遇到這些困惑:明明按照教程配置
    的頭像 發(fā)表于 04-07 11:59 ?1728次閱讀
    為什么<b class='flag-5'>GPIO</b><b class='flag-5'>配置</b>總是出問題?

    STM32學(xué)習(xí)GPIO之設(shè)計篇

    今日分享 GPIO 結(jié)合寄存器以及硬件電路,再來舉例子分析輸入輸出。寄存器介紹:通過寄存器的位標注 rw,我們可知這個寄存器的某個位是可讀(r)并且可寫 的(w),我們也可以通過讀寄存器里面的值得
    發(fā)表于 03-27 13:57 ?2次下載

    STM32CubeMX PA0、PA4、PA7、PB1等類似的端口不能作為普通的GPIO_Output和GPIO_Input口使用嗎?

    STM32G0B1RCT6芯片 用STM32CubeMX配置端口,有些端口沒有 GPIO_Output和GPIO_Input選項!比如PA
    發(fā)表于 03-14 06:52

    使用stm32f405做6步pwm輸出時,定時器配置由強制輸出轉(zhuǎn)為pwm,com觸發(fā)后會有延遲生效的現(xiàn)象,怎么解決?

    我在使用stm32f405做6步pwm輸出時發(fā)現(xiàn),定時器的配置由pwm改為強制輸出后會在com觸發(fā)時立即生效,但是定時器配置由強制
    發(fā)表于 03-13 07:24