日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]此篇文章重點討論STM32的GPIO的配置種類以及上拉輸入、下拉輸入、浮空輸入、模擬輸入的區(qū)別經(jīng)過學習STM32發(fā)現(xiàn),GPIO有8種工作方式輸入模式:輸入浮空、輸入上拉、輸入下拉、模擬輸入輸出模式:開漏輸出、開漏復用功能

此篇文章重點討論STM32的GPIO的配置種類以及上拉輸入、下拉輸入、浮空輸入、模擬輸入的區(qū)別

經(jīng)過學習STM32發(fā)現(xiàn),GPIO有8種工作方式

輸入模式:輸入浮空、輸入上拉、輸入下拉、模擬輸入

輸出模式:開漏輸出、開漏復用功能、推挽式輸出、推挽式復用功能

輸入模式參照圖片來講

浮空輸入:浮空輸入狀態(tài)下上拉電阻和下拉電阻都是斷開的,信號經(jīng)過I/O端口——施密特觸發(fā)器——輸入數(shù)據(jù)寄存器——CPU讀取

上拉輸入:相比浮空輸入狀態(tài),就是上拉電阻閉合(下拉電阻仍然處于斷開狀態(tài))

下拉輸入:相比浮空輸入狀態(tài),就是下拉電阻閉合(上拉電阻仍然處于斷開狀態(tài))

模擬輸入:上拉電阻和下拉電阻都處于斷開狀態(tài),并且信號不是經(jīng)過施密特觸發(fā)器,而是直接進入施密特觸發(fā)器之前的模擬輸入通道


輸出模式也參照圖片來講:


開漏輸出模式:其中1號區(qū)域,兩個寄存器有兩種讀寫方式,這個后面會介紹,這是關(guān)于寄存器的配置原因,對于輸出驅(qū)動器部分,當輸出控制電路輸出邏輯1(高電平)時,外部的I/O端口輸出的電平由外部電路決定,如果外部連接有上拉電阻,則輸出高電平,如果接有下拉電阻,則輸出低電平;當輸出控制電路輸出邏輯0(低電平)時,外部的電路不管是否接有上拉電阻還是下拉電阻,都輸出低電平;所有應(yīng)用開漏輸出模式的時候想要輸出高電平切記要加上拉電阻

開漏復用功能輸出:此模式與開漏輸出模式只有一個不同的地方,就是在1號區(qū)域,此模式是直接在復用功能輸出引輸出部分輸出的

推挽輸出模式:也是走的1、2、3、4號路線,其中在2號區(qū)域輸出控制電路部分,如果輸出邏輯1,則3號區(qū)域P-MOS導通,N-MOS截止,輸出高電平(不管外部有沒有上拉電阻);如果輸出邏輯0,則3號區(qū)域P-MOS截止,N-MOS導通,輸出低電平(不管外部有沒有上拉電阻和下拉電阻)

推挽復用功能輸出:此模式與推挽輸出模式不同的地方就是1號區(qū)域,此模式是直接在復用功能輸出部分輸出的

下面講解一下輸出模式與寄存器的關(guān)系

在STM32的參考手冊中我們可以找到GPIOx_CRL和GPIOx_CRH寄存器,這兩個寄存器功能相同,就是GPIOx_CRL是用來配置低8位(例:PA0_PA7)I/O口的,GPIOx_CRH是用來配置高8位(例:PA8_PA15)I/O口的


這是一個32位寄存器,每4位配置一個端口,例:第1位和第0位即MODE0[1:0],用來設(shè)置Px0(PA0%20or%20PB0%20or%20PC0%20and%20so%20on)是輸入還是輸出,第3位和第2位即CNF0[1:0],用來選擇Px0的輸入或者輸出的具體模式。

其中有一個地方值得注意,就是在輸入模式下,CNFx=10的狀態(tài):上拉/下拉輸入模式,到底是上拉輸入模式還是下拉模式就要用到另一個寄存器GPIOx_ODR,并且這個寄存器對輸入和輸出有著不同的作用


這是一個32位寄存器,高16位保留,低16位每位對應(yīng)Px的一個I/O口

在輸入模式下,如果對應(yīng)位置1,則為上拉輸入;如果對應(yīng)位置0,則為下拉輸入

在輸出模式下,如果對應(yīng)位置0,則是要求輸出端口輸出默認輸出高電平,注意:此處,若為開漏輸出模式,若想輸出高電平需要外界上拉電阻

具體對應(yīng)關(guān)系見下表:


還有一個寄存器需要介紹,端口位設(shè)置/清除寄存器(GPIOx_BSRR)


在輸出模式下,可以通過配置這個寄存器決定到底是輸出高電平還是低電平,低16位置1,則對應(yīng)端口輸出高電平,高16位置1,則對應(yīng)端口輸出低電平

這個寄存器就是上面講解輸出模式時的疑問


配置輸出模式時,可以通過配置寄存器GPIOx_BSRR然后映射到寄存器GPIOx_ODR,也可以直接配置寄存器GPIOx_ODR,但是對于運行效率來說,還是通過GPIOx_BSRR映射到GPIOx_ODR效率更高。


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

樹莓派,(英語:Raspberry Pi,簡寫為RPi,別名為RasPi / RPI)是為學習計算機編程教育而設(shè)計,只有信用卡大小的微型電腦,其系統(tǒng)基于Linux。隨著Windows 10 IoT的發(fā)布,用戶可以用上運行...

關(guān)鍵字: 樹莓派 gpio gpio編程

AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓,高性能CMOS8位微處理器,俗稱單片機。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8...

關(guān)鍵字: 3AT89C51 單片機 引腳說明

串行外設(shè)接口(SPI)是微控制器和外圍IC(如傳感器、ADC、DAC、移位寄存器、SRAM等)之間使用最廣泛的接口之一。本文先簡要說明SPI接口,然后介紹ADI公司支持SPI的模擬開關(guān)與多路轉(zhuǎn)換器,以及它們?nèi)绾螏椭鷾p少系...

關(guān)鍵字: gpio spi 串行外設(shè)接口

一、什么是GPIO? GPIO,英文全稱為General-Purpose IO ports,也就是通用IO口。嵌入式系統(tǒng)中常常有數(shù)量眾多,但是結(jié)構(gòu)卻比較簡單的外部設(shè)備/電路,對這些設(shè)備/電路有的需要C

關(guān)鍵字: gpio 通用io口

//**********************************************************************//************************************...

關(guān)鍵字: gpio STM32

GPIO(General Purpose I/O Ports)意思為通用輸入/輸出端口,通俗地說,就是一些引腳,可以通過它們輸出高低電平或者通過它們讀入引腳的狀態(tài)-是高電平或是低電平。 S3C2410共有117個I...

關(guān)鍵字: ARM gpio 硬件介紹

Ⅰ、寫在前面完事開頭難,只要肯努力;師傅領(lǐng)進門,修行看個人;當你看到本文,說明你是幸運的,作者接下來推出的一系列STM8S教程,將助你踏入STM8S的世界。本文是STM8S教程的開始,寫給剛?cè)腴TSTM8S的朋友。學習本文

關(guān)鍵字: gpio stm8s 基礎(chǔ)知識

一、在STM32中,有5個時鐘源,為HSI,HSE,LSI,LSE,PLL.①HSI是高速內(nèi)部時鐘,RC振蕩器,頻率為8MHz;②HSE--高速外部時鐘,可接石英或者陶瓷諧振器,或者外部時鐘源,頻率范圍4MHz--15M...

關(guān)鍵字: STM32 stm32f10x 時鐘配置

以下是驅(qū)動的源碼。#includelinux/config.h//配置頭文件#includelinux/kernel.h//用于調(diào)用kmalloc和kfree#includelinux/sched.h//調(diào)度,進程睡眠,...

關(guān)鍵字: gpio mini2440 驅(qū)動led

一、API說明HAL庫一共包含如下6個IO操作函數(shù):1、讀取某個引腳的電平狀態(tài):HAL_GPIO_ReadPin()2、寫入某個引腳的電平狀態(tài):HAL_GPIO_WritePin()3、翻轉(zhuǎn)某個引腳的電平狀態(tài):HAL_G...

關(guān)鍵字: gpio LED STM32
關(guān)閉