国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

STM32 GPIO設置(GPIO初始化)學習筆記

這篇具有很好參考價值的文章主要介紹了STM32 GPIO設置(GPIO初始化)學習筆記。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

GPIO都知道是通用輸入輸出接口的意思就不詳細解釋

那么我們就直接進入怎么設置GPIO接口:

這里我的編譯軟件是keil5,相信大家都應該知道stm32有各種的工作模式上拉、下拉、推挽、開漏等等。如果想要了解具體的工作模式原理這里我推薦大家看:推挽 開漏 高阻 這都是誰想出來的詞??上拉電阻的通俗解釋,你真正知道嗎?下拉電阻的通俗解釋,你真正知道嗎?

GPIO設置(GPIO初始化):

我們直接看下STM32的函數(shù)庫使用手冊:

stm32管腳在keil5里面怎么定義,STM32學習筆記,stm32,嵌入式硬件,單片機

可以看到GPIO_Init有兩個參數(shù),參數(shù)一就是你要使用的是哪個GPIOx組的接口

參數(shù)二是指向結構 GPIO_InitTypeDef 的指針,GPIO_InitTypeDef具體是什么先按下不表,直接講如何使用(輸出):

GPIO_InitTypeDef  GPIO_InitStructure; //定義GPIO的初始化枚舉結構	
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1; //選擇端口號(0~15或all)                        
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //選擇IO接口工作方式       
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //設置IO接口速度(2/10/50MHz)
GPIO_Init(GPIOA, &GPIO_InitStructure); 

/*
選擇IO接口工作方式:
GPIO_Mode_AIN 模擬輸入
GPIO_Mode_IN_FLOATING 浮空輸入
GPIO_Mode_IPD 下拉輸入
GPIO_Mode_IPU 上拉輸入
GPIO_Mode_Out_PP 推挽輸出
GPIO_Mode_Out_OD 開漏輸出
GPIO_Mode_AF_PP 復用推挽輸出
GPIO_Mode_AF_OD 復用開漏輸出
*/   

輸入設置:

GPIO_InitTypeDef  GPIO_InitStructure; //定義GPIO的初始化枚舉結構	
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1; //選擇端口號(0~15或all)                        
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //選擇IO接口工作方式 //上拉電阻
//可以看到輸入和輸出代碼的不同,輸入不需要設置IO接口速度       
//GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //設置IO接口速度(2/10/50MHz)    
GPIO_Init(GPIOB,&GPIO_InitStructure);		

但是如果僅僅這樣就完了嗎?沒有這只是GPIO初始化,在使用前還有對RCC_APB2PeriphClockCmd 使能/失能APB2外設時鐘函數(shù)來設置下:具體看STM32函數(shù)庫數(shù)據(jù)手冊:stm32管腳在keil5里面怎么定義,STM32學習筆記,stm32,嵌入式硬件,單片機stm32管腳在keil5里面怎么定義,STM32學習筆記,stm32,嵌入式硬件,單片機

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB, ENABLE); //使能GPIOA、B時鐘

GPIO_InitTypeDef 結構體通常包含以下幾個重要的成員(可能根據(jù)不同版本的庫有所差異):

  • GPIO_Pin: 指定要配置的GPIO引腳。每個微控制器的GPIO引腳都有一個對應的編號,這個字段通常接受一個位掩碼,以允許同時配置多個引腳。
  • GPIO_Mode: 設置引腳的工作模式,比如輸入、輸出、復用功能或模擬模式等。
  • GPIO_Speed: 當引腳配置為輸出模式時,設置其輸出速率,例如低速、中速、高速或超高速。
  • GPIO_OType: 配置輸出類型,主要用于輸出模式,可以是推挽輸出或開漏輸出。
  • GPIO_PuPd: 配置內部上拉或下拉電阻,用于輸入模式。

下一級我們講一下現(xiàn)在我們設置的端口怎么使用文章來源地址http://www.zghlxwxcb.cn/news/detail-844041.html

到了這里,關于STM32 GPIO設置(GPIO初始化)學習筆記的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 詳解STM32的GPIO八種輸入輸出模式,GPIO各種輸入輸出的區(qū)別、初始化的步驟詳解,看這文章就行了(超詳細)

    詳解STM32的GPIO八種輸入輸出模式,GPIO各種輸入輸出的區(qū)別、初始化的步驟詳解,看這文章就行了(超詳細)

    在STM32微控制器中,常見的輸入輸出(GPIO)模式有八種,分別是推挽輸出、開漏輸出、復用推挽輸出、復用開漏輸出、浮空輸入、上拉輸入、下拉輸入和模擬輸入。下面我將為你解釋每種模式的特點和區(qū)別,并提供相應的示例代碼。 推挽輸出(Push-Pull Output):推挽輸出模式是最常

    2024年02月15日
    瀏覽(97)
  • 【物聯(lián)網】詳解STM32的GPIO八種輸入輸出模式,GPIO各種輸入輸出的區(qū)別、初始化的步驟詳解,看這文章就行了(超詳細)

    【物聯(lián)網】詳解STM32的GPIO八種輸入輸出模式,GPIO各種輸入輸出的區(qū)別、初始化的步驟詳解,看這文章就行了(超詳細)

    在STM32微控制器中,常見的輸入輸出(GPIO)模式有八種,分別是推挽輸出、開漏輸出、復用推挽輸出、復用開漏輸出、浮空輸入、上拉輸入、下拉輸入和模擬輸入。下面我將為你解釋每種模式的特點和區(qū)別,并提供相應的示例代碼。 推挽輸出(Push-Pull Output):推挽輸出模式是最常

    2024年02月14日
    瀏覽(95)
  • STM32CubeMX v6.9.0 BUG:FLASH_LATENCY設置錯誤導致初始化失敗

    STM32CubeMX v6.9.0 BUG:FLASH_LATENCY設置錯誤導致初始化失敗

    今天在調試外設功能時,發(fā)現(xiàn)設置了使用外部時鐘之后程序運行異常,進行追蹤調試并與先前可以正常運行的項目進行對比之后發(fā)現(xiàn)這個問題可能是由于新版本的STM32CubeMX配置生成代碼時的BUG引起的。 MCU: STM32H750VBT6 STM32CubeIDE: Version: 1.13.0 Build: 17399_20230707_0829 (UTC) STM32CubeMX: v

    2024年02月15日
    瀏覽(32)
  • STM32/GD32學習指南-踩坑之(一)外部晶振配置,初始化失敗,不起振

    STM32/GD32學習指南-踩坑之(一)外部晶振配置,初始化失敗,不起振

    GD32使用外部有源晶振和無源晶振的問題,型號為GD32 F450 一、GD32配置使用外部晶振 1.使用外部無源晶振 找到startup_gd32f450_470.s匯編文件,找到SystemInit()函數(shù)跳轉進去 在底部找到system_clock_config()函數(shù),再次跳轉進去 選中宏定義:__SYSTEM_CLOCK_200M_PLL_IRC16M,跳轉,如圖 將內部時鐘

    2024年02月13日
    瀏覽(26)
  • stm32 hal庫 RCC初始化函數(shù)SystemClock_Config()梳理分析、初步細致學習(一)

    stm32 hal庫 RCC初始化函數(shù)SystemClock_Config()梳理分析、初步細致學習(一)

    目錄 一、PLL主時鐘初始化 1.1 時鐘使能 ?1.2 配置好主時鐘配置結構體 1.3 將配置好的值寫入到對應的寄存器、初始化PLL主時鐘; 1.3.1 __HAL_RCC_HSE_CONFIG(RCC_OscInitStruct-HSEState)分析:? 1.3.2 給PLL相關寄存器賦值: 二、外設時鐘初始化 2.1等待周期的驗證和寫入; 2.2 HCLK配置 2.3 SYSC

    2024年02月15日
    瀏覽(26)
  • STM32各外設初始化步驟

    STM32各外設初始化步驟

    ? ? ? ? 1、使能GPIO時鐘 ? ? ? ? 2、初始化GPIO的輸入/輸出模式 ? ? ? ? 3、設置GPIO的輸出值或獲取GPIO的輸入值 ? ? ? ? 1、使能EXTI線所在的GPIO時鐘和AFIO復用時鐘 ? ? ? ? 2、初始化EXTI線所在的GPIO的輸入輸出模式 ? ? ? ? 3、將GPIO腳映射到對應的EXTI線上 ? ? ? ? 4、設置

    2024年03月25日
    瀏覽(32)
  • STM32 cubemx CAN
STM32 CAN初始化詳解

    STM32 cubemx CAN STM32 CAN初始化詳解

    接收用到的結構體如下: CAN概念: ? ? ? ? 全稱Controller Area Network,是一種半雙工,異步通訊。 物理層: ? ? ? ? 閉環(huán):允許總線最長40m,最高速1Mbps,規(guī)定總線兩端各有一個120Ω電阻,閉環(huán) ? ? ? ?開環(huán):最大傳輸距離1Km,最高速125Kbps,規(guī)定每根線串聯(lián)一個2.2kΩ的電阻,

    2024年02月13日
    瀏覽(29)
  • STM32 串口的初始化(內附詳細代碼)

    STM32 串口的初始化(內附詳細代碼)

    首先我們先要根據(jù)原理圖來確認我們用的串口接到了那個引腳 ?我這邊的串口1為例,接收端是PA10,發(fā)送端是PA9首先我們需要配置PA9和PA10. 把接受端配置成浮空輸入,完全靠引腳來判斷。把發(fā)送端配置成復用推挽模式,并打開GPIOA的時鐘和復用時鐘多的看代碼吧,我把注釋都寫

    2024年02月13日
    瀏覽(20)
  • STM32 hal庫 NVIC初始化函數(shù)梳理

    STM32 hal庫 NVIC初始化函數(shù)梳理

    使用的是stm32f407vg,代碼來源stm32cubemx。 已經配置了中斷的是GPIOD_pin6和TIM2。 ?這個是STM32CubeMX里面NVIC的控制面板;其中最上面priority grope是優(yōu)先級組,我設置的是4位搶占優(yōu)先級,0位響應優(yōu)先級,就和以前剛學中斷時中斷嵌套那樣。 下面是有哪些中斷源,勾上之后,在最下面

    2024年01月18日
    瀏覽(96)
  • STM32—TIM定時器初始化結構體詳解

    STM32—TIM定時器初始化結構體詳解

    ??注:高級控制定時器可以用到所有初始化結構體,通用定時器不能使用 TIM_BDTRInitTypeDef 結構體,基本定時器只能使用時基結構體。 ?? 時基結構體TIM_TimeBaseInitTypeDef用于定時器基礎參數(shù)設置,與TIM_TimeBaseInit函數(shù)配合使用完成配置。 (1) TIM_Prescaler:定時器預分頻器設置,

    2024年02月02日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包