在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

【藍橋杯物聯網】第三章 stm32l0xx_hal_gpio.c的常見函數

撞上電子 ? 2021-08-09 10:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ca738a36-f862-11eb-a0cf-000c2944909e.gif

本章將介紹幾個在比賽中常見的函數,這幾個函數都是非常簡單,關系到LED,按鍵,繼電器等簡單的外設。

第一節HAL_GPIO_Init

函數原型:

voidHAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init);

函數解析:

這個是GPIO的初始化的函數,這個函數主要用來初始化我們需要用到的引腳的工作模式,包括具體引腳的工作速度、是否復用模式、上下拉等等參數。形參解析:

一共兩名形參,該形參的具體功能如下:

GPIO_TypeDef *GPIOx:該形參是對GPIO的類型的定義,比如:GPIOA,GPIOC等等。

GPIO_InitTypeDef *GPIO_Init:該形參是對結構體GPIO_InitTypeDef的指針的初始化,包含了外設GPIO的配置信息,比如GPIO引腳,模式,速度等等。該配置信息如下:(見stm32l0xx_hal_gpio.h)

cad1b110-f862-11eb-abe6-000c2944909e.png

返回值:

void函數無返回值。

第二節HAL_GPIO_DeInit

函數原型:

void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin);

函數解析:

該函數是承接HAL_GPIO_Init函數的,將初始化之后的引腳恢復成默認的狀態,即各個寄存器復位時的值。

形參解析:

一共兩名形參,該形參的具體功能如下:

GPIO_TypeDef *GPIOx:該形參是對GPIO的類型的定義,比如:GPIOA,GPIOC等等。

uint32_t GPIO_Pin:該形參是對GPIO引腳的定義,比如:GPIO_PIN_14,GPIO_PIN_15等等。

返回值:

void函數無返回值。

第三節HAL_GPIO_ReadPin

函數原型:

GPIO_PinStateHAL_GPIO_ReadPin(GPIO_TypeDef*GPIOx,uint16_tGPIO_Pin)

函數解析:

該函數是GPIO讀函數,將GPIO的電平狀態讀取出來,一般讀取之后,就明白該GPIO的狀態了。

形參解析:

一共兩名形參,該形參的具體功能如下:

GPIO_TypeDef *GPIOx:該形參是對GPIO的類型的定義,比如:GPIOA,GPIOC等等。

uint16_t GPIO_Pin:該形參是對GPIO引腳的定義,比如:GPIO_PIN_14,GPIO_PIN_15等等。

返回值:

如果讀取到高電平,返回GPIO_PIN_SET;如果是低電平,返回GPIO_PIN_RESET。

第四節HAL_GPIO_WritePin

函數原型:

voidHAL_GPIO_WritePin(GPIO_TypeDef*GPIOx,uint16_tGPIO_Pin,GPIO_PinState PinState);

函數解析:

該函數是GPIO寫函數,通過該函數操作GPIO的狀態。

形參解析:

一共三名形參,該形參的具體功能如下:

GPIO_TypeDef *GPIOx:該形參是對GPIO的類型的定義,比如:GPIOA,GPIOC等等。

uint16_t GPIO_Pin:該形參是對GPIO引腳的定義,比如:GPIO_PIN_14,GPIO_PIN_15等等。

GPIO_PinState PinState:該形參是對GPIO引腳的電平狀態的定義,如果是GPIO_PIN_SET,那么對該GPIO賦值為高電平;如果是GPIO_PIN_RESET,那么對該GPIO賦值為底電平。

返回值:

void函數無返回值。

第五節HAL_GPIO_TogglePin

函數原型:

void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);

函數解析:

該函數是GPIO引腳電平狀態的翻轉函數,通過該函數操作GPIO的電平的狀態的翻轉。

形參解析:

一共兩名形參,該形參的具體功能如下:

GPIO_TypeDef *GPIOx:該形參是對GPIO的類型的定義,比如:GPIOA,GPIOC等等。

uint16_t GPIO_Pin:該形參是對GPIO引腳的定義,比如:GPIO_PIN_14,GPIO_PIN_15等等。

返回值:

void函數無返回值。

第六節HAL_GPIO_LockPin

函數原型:

HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);

函數解析:

該函數是GPIO引腳電平狀態的鎖存函數,使用該函數之后,將鎖定GPIO的狀態,寫函數也無法改變,除非重置。

形參解析:

一共兩名形參,該形參的具體功能如下:

GPIO_TypeDef *GPIOx:該形參是對GPIO的類型的定義,比如:GPIOA,GPIOC等等。

uint16_t GPIO_Pin:該形參是對GPIO引腳的定義,比如:GPIO_PIN_14,GPIO_PIN_15等等。

返回值:

由結構體HAL_StatusTypeDef(如下圖,stm32l0xx_hal_def.h)可知,如果鎖存成功,返回HAL_OK(0x00U),如果失敗,返回HAL_ERROR(0x01U)。

caf793b0-f862-11eb-9162-000c2944909e.png

需要注意的是,只能返回這兩種值,即使該寄存器有四個變量。為什么呢?仔細看HAL_GPIO_LockPin函數的最后看明白了。

第七節HAL_GPIO_EXTI_IRQHandler

函數原型:

voidHAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin);

函數解析:

外部中斷服務函數,用來響應外部中斷的觸發。

形參解析:

一共一名形參,該形參的具體功能如下:

uint16_t GPIO_Pin:該形參是對GPIO引腳的定義,比如:GPIO_PIN_14,GPIO_PIN_15等等。

返回值:

void函數無返回值。

第八節HAL_GPIO_EXTI_Callback

函數原型:

__weakvoid HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin);

函數解析:

該函數是回調函數,說白了就是中斷之后,需要什么功能,就寫在這個函數里面。至于__weak,它是一個弱化標識,帶有這個的函數就是一個弱化函數,就是你可以在其他地方寫一個名稱和參數都一模一樣的函數,編譯器就會忽略這一個函數,而去執行你寫的那個函數。

形參解析:

一共一名形參,該形參的具體功能如下:

uint16_t GPIO_Pin:該形參是對GPIO引腳的定義,比如:GPIO_PIN_14,GPIO_PIN_15等等。

返回值:

該函數無返回值。

cb02f7a8-f862-11eb-9171-000c2944909e.png

往期精彩

【1】【藍橋杯物聯網】第二章 軟件環境搭建

【2】【藍橋杯物聯網】第一章 了解開發板

【3】藍橋杯單片機文檔教程免費下載

【4】

【5】【藍橋杯單片機】第十六章 獨立按鍵(松開有效)

cb0888be-f862-11eb-923c-000c2944909e.png

原文標題:【藍橋杯物聯網】第三章 stm32l0xx_hal_gpio.c的常見函數

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

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

    關注

    1

    文章

    129

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    初級工程師PCB設計技巧(PPT版)

    目錄第一:PCB 概述第二:PCB 設計流程及PCB Layout 設計第三章: PROTEL 常用操作第四: PCB Layout 技巧 獲取完整文檔資料可下載附件哦?。。。?
    發表于 06-26 15:50

    《ESP32S3 Arduino開發指南》第三章 C/C++語言基礎

    第三章 C/C++語言基礎 C/C++語言是國際上廣泛流行的計算機高級語言。在進行絕大多數的硬件開發時,均使用
    發表于 06-10 09:20

    第三章 警報聯動】手把手教你玩轉新版正點原子云

    本帖最后由 jf_85110202 于 2025-3-13 14:43 編輯 【第三章 警報聯動】手把手教你玩轉新版正點原子云 新版原子云網址:原子云(點擊登錄原子云) 原子云特色功能:設置
    發表于 03-12 16:05

    藍橋聯網需要安裝哪些軟件?

    藍橋聯網比賽需要安裝的軟件有如下幾種,需要大家自己在練習的時候自行安裝。下面是安裝教程。以下是需要安裝的軟件,本教程會一一帶領大家安裝,【注意:一定要按照順序安裝】沒有安裝包的話,
    的頭像 發表于 12-23 21:02 ?1048次閱讀
    <b class='flag-5'>藍橋</b><b class='flag-5'>杯</b><b class='flag-5'>物</b><b class='flag-5'>聯網</b>需要安裝哪些軟件?

    藍橋聯網開發板硬件組成

    第一節開發板簡介聯網設計與開發競賽實訓平臺由藍橋大賽技術支持單位北京四梯科技有限公司設計和生產,該產品可用于參加藍橋
    的頭像 發表于 12-22 21:30 ?1196次閱讀
    <b class='flag-5'>藍橋</b><b class='flag-5'>杯</b><b class='flag-5'>物</b><b class='flag-5'>聯網</b>開發板硬件組成

    藍橋該如何備賽?

    藍橋聯網已經換了次開發板了,每次換板子,題目難度都會降低不少,所以說,藍橋
    的頭像 發表于 12-19 21:02 ?1437次閱讀
    <b class='flag-5'>藍橋</b><b class='flag-5'>杯</b>該如何備賽?

    HAL庫的函數調用示例

    HAL(Hardware Abstraction Layer,硬件抽象層)庫是STM32等微控制器中常用的庫,它為開發者提供了訪問和控制硬件設備的接口。以下是一些常用的HAL函數及其
    的頭像 發表于 12-02 14:01 ?1517次閱讀

    《DNESP32S3使用指南-IDF版_V1.6》第三章 ESP32-S3基礎知識

    第三章 ESP32-S3基礎知識 在本章中,我們將深入探索ESP32-S3這款備受矚目的微控制器。我們將詳細闡述其定義、核心資源、功能應用,以及如何選擇適合您項目的ESP32-S3型號。通過本章
    發表于 11-22 09:43

    記錄我的stm32開發學習過程

    _OK) { Error_Handler_u(); } 由于程序中用的宏定義變量和HAL函數都是在“stm32f1xx_hal_uart.c”中,所以需要包含stm32f1xx_hal
    發表于 11-19 14:37

    聯網學習路線來啦!

    環境 STM32主流開發方式 3.1.2單片機常見接口 熟練掌握GPIO、UART、SPI、I2C、ADC等接口,以及中斷、定時器、DMA等單片機基本模塊的使用,適度了解看門狗、低功耗
    發表于 11-11 16:03

    藍橋單片機】第一 大賽概述

    第一節藍橋是什么樣的比賽藍橋全國軟件和信息技術專業人才大賽(以下簡稱“藍橋”)是由中國教育
    的頭像 發表于 10-29 12:00 ?1362次閱讀
    【<b class='flag-5'>藍橋</b><b class='flag-5'>杯</b>單片機】第一<b class='flag-5'>章</b> 大賽概述

    【「嵌入式Hypervisor:架構、原理與應用」閱讀體驗】+第三四章閱讀報告

    在深入閱讀了《嵌入式Hypervisor:架構、原理與應用》的第三、四后,我對嵌入式Hypervisor的設計與實現技術有了更為詳盡和系統的理解。以下是我對這兩內容的閱讀報告: 第三章
    發表于 10-09 18:29

    《DNK210使用指南 -CanMV版 V1.0》第三章 CanMV簡介

    第三章 CanMV簡介 本章將對CanMV進行簡單介紹本章分為如下幾個小節:3.1 初識CanMV 3.2 CanMV的應用開發方式 3.1 初識CanMVCanMV是嘉楠科技針對AIOT編程
    發表于 09-03 10:13

    迅為電子RK3588S開發板第三章Buildroot系統功能測試

    迅為電子RK3588S開發板第三章Buildroot系統功能測試
    的頭像 發表于 09-02 14:45 ?1370次閱讀
    迅為電子RK3588S開發板<b class='flag-5'>第三章</b>Buildroot系統功能測試

    第12-ADC采集電壓和顯示 基于STM32的ADC—電壓采集(詳細講解+HAL庫)

    第12-ADC采集電壓和顯示 基于STM32的ADC—電壓采集(詳細講解+HAL庫)
    的頭像 發表于 08-21 16:31 ?5184次閱讀
    第12<b class='flag-5'>章</b>-ADC采集電壓和顯示 基于<b class='flag-5'>STM32</b>的ADC—電壓采集(詳細講解+<b class='flag-5'>HAL</b>庫)
    主站蜘蛛池模板: 色激情小说 | 日本色免费| 天天干天天摸天天操 | 中国人69xxx大全 | 在线视频免费视频网站 | 精品亚洲大全 | 日本黄色片在线观看 | 亚洲午夜一级毛片 | 亚洲成人三级电影 | 免费成人毛片 | 亚洲不卡视频 | 中文字幕在线观看你懂的 | 痴女中文字幕在线视频 | 五月婷婷丁香综合网 | 69er小视频| 视频一区二区在线 | 午夜神马福利免费官方 | 国产日日夜夜 | 三级网站在线播放 | 朱元璋传奇1998王耿豪版 | 国产综合在线视频 | 久久精品亚洲一区二区三区浴池 | 美女张开腿露出尿口让男人桶 | 欧美整片第一页 | 视频在线观看免费视频 | 麻生希痴汉电车avop130 | 正在播放国产女免费 | 色综合久久丁香婷婷 | 波多野结衣50连精喷在线 | 特黄特黄一级高清免费大片 | 久久久噜噜噜久久久午夜 | 天天摸天天操天天爽 | 欧美人成一本免费观看视频 | 成人三级在线播放线观看 | 国产精欧美一区二区三区 | 天堂网在线视频 | 又粗又爽又色男女乱淫播放男女 | www一区二区三区 | 日韩精品一区二区三区毛片 | 免费黄色小视频 | 在线播放免费 |