日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

1. 每個(gè)GPIO均有以下寄存器:

  • 4個(gè)32位配置寄存器:GPIOx_MODER、GPIOx_OTYPER、GPIOx_OSPEEDR和GPIOx_PUPDR

GPIOx_MODER :配置IO端口方向?yàn)檩斎?輸出/AF/模擬

GPIOx_OTYPER :選擇輸出類型:推挽/開漏

GPIOx_OSPEEDR :選擇IO速度(與IO端口方向無關(guān))

GPIOx_PUPDR :選擇上拉/下拉電阻(與IO端口方向無關(guān))

  • 2個(gè)32位數(shù)據(jù)寄存器:GPIOx_IDR、GPIOx_ODR

  • 1個(gè)32位置位/復(fù)位寄存器:GPIOx_BSRR(使用該寄存器讀寫寄存器可以避免在讀寫期間被IRQ中斷,該讀寫操作屬于一個(gè)原子操作)

該寄存器允許置位/復(fù)位GPIOx_ODR上指定的一位,GPIOx_ODR上每位關(guān)聯(lián)到兩個(gè)控制位:GPIOx_BSRR:BSRR(i) [Bits 15:0]和 GPIOx_BSRR:BSRR(i+SIZE)[Bits31:16];往GPIOx_BSRR:BSRR(i) [Bits 15:0]寫1 可以置位對(duì)應(yīng)的ODR;往GPIOx_BSRR:BSRR(i) [Bits 31:16]寫1 可以置位對(duì)應(yīng)的ODR;往該寄存器寫0不會(huì)產(chǎn)生任何影響

  • 1個(gè)32位鎖定寄存器:GPIOx_LCKR

必需通過通過一個(gè)特殊的讀寫時(shí)序才能寫入該寄存器,但時(shí)序正確時(shí),bit16會(huì)置位(lock key active),bits[15:0]顯示哪些IO端口被鎖定了,端口被鎖定之后直到下一個(gè)復(fù)位才能解鎖,鎖定之后以下寄存器將被凍結(jié):GPIOx_MODER、GPIOx_OTYPER、GPIOx_OSPEEDR、GPIOx_PUPDR、GPIOx_AFRH、GPIOx_AFRL

  • 2個(gè)復(fù)用功能寄存器:GPIOx_AFRH、GPIOx_AFRL

2. 每個(gè)GPIO端口均可單獨(dú)設(shè)置為以下模式:

  • 輸入+懸空

  • 輸入+上拉

  • 輸入+下拉

  • 模擬(用作ADC、DAC輸出或者捕獲輸入情況下)

  • 輸出+開漏+上拉/下拉(輸出模式下GPIO的輸出速度是可配置的)

  • 輸出+推挽+上拉/下拉

  • 復(fù)用功能+推挽+上拉/下拉

  • 復(fù)用功能+開漏+上拉/下拉

下圖為GPIO的架構(gòu)圖:


3. GPIO一般用途


  1. 默認(rèn)情況或者剛復(fù)位后,所有IO端口被設(shè)置為輸入+懸空模式,除了調(diào)試接口默認(rèn)設(shè)置為了復(fù)用功能+上拉/下拉

  2. 當(dāng)端口被設(shè)置為輸出的時(shí)候,修改GPIOx_ODR對(duì)應(yīng)可改變輸出高低電平(一般會(huì)使用推挽或者開漏輸出(輸出低電平時(shí),只有N-MOS是接通的))

  3. 當(dāng)端口被設(shè)置為輸入的時(shí)候,每個(gè)AHB總線時(shí)鐘均會(huì)捕獲端口上高低電平,并存放在GPIOx_IDR寄存器

  4. 所有的GPIO端口均可通過配置寄存器使能或不使能內(nèi)部弱上拉/弱下拉


4 .I/O端口多路復(fù)用及映射



IO端口通過一個(gè)內(nèi)部的多路選擇器以允許在同一時(shí)刻只使用一種復(fù)用功能,這樣使得多個(gè)外圍電路共享同樣的IO端口

每個(gè)IO端口可以通過配置GPIOx_AFRL和GPIOx_AFRH設(shè)置所使能的復(fù)用功能(AF0~AF15)

  • 復(fù)位之后,所有的IO連接到復(fù)用功能0(AF0)

  • 外圍電路的復(fù)用功能映射到AF1~AF14

  • Cortex-M3 EVENTOUT映射到AF15

以下說明如何使用復(fù)用功能:

  • System Function:配置IO端口使能的復(fù)用功能(JTAG/SWD,在復(fù)位之后對(duì)應(yīng)端口會(huì)被調(diào)試器設(shè)置為調(diào)試功能下且不受GPIO寄存器的控制;RTC_50HZ,對(duì)應(yīng)端口需要設(shè)置為輸入+懸空;MCO,該端口必需配置在復(fù)用模式下)

  • GPIO:根據(jù)需要配置GPIOx_MODER設(shè)置IO端口工作模式(輸入、輸入/模擬)

  • Perpheral‘s Alternate Function:對(duì)于ADC/DAC,配置IO為模擬;對(duì)于其他外圍功能,配置GPIOx_MODER、GPIOx_OTYPE、GPIOx_PUPDR、GPIOx_OSPEEDER

  • EVENTOUT:配置IO端口復(fù)用功能AF15,用于輸出Cortex-M3 EVENTOUT信號(hào)





5. 外部中斷/喚醒 

所有的IO端口均有外部中斷功能,使用外部中斷功能時(shí),IO端口必需設(shè)置為輸入模式

6. 輸入模式配置

當(dāng)IO端口配置為輸入模式時(shí):

  • 輸出模式被禁用

  • 施密特觸發(fā)器被激活

  • 根據(jù)GPIOx_PUPDR寄存器使能上拉/下拉電阻

  • 每個(gè)AHB時(shí)鐘均會(huì)采樣IO端口上的值存放到輸入數(shù)據(jù)寄存器中

  • 通過讀取輸入數(shù)據(jù)寄存器可以檢測(cè)IO狀態(tài)

7. 輸出模式配置

當(dāng)IO端口配置為輸出模式時(shí):

  • 輸出模式使能

  • 施密特出發(fā)器被激活

--  開漏模式時(shí):輸出0時(shí),N-MOS導(dǎo)通(P-MOS任何情況下不會(huì)導(dǎo)通)

--  推挽模式時(shí):輸出0時(shí),N-MOS導(dǎo)通;輸出1時(shí),P-MOS導(dǎo)通 

  • 根據(jù)GPIOx_PUPDR寄存器使能弱上拉/下拉

  • 每個(gè)AHB時(shí)鐘均會(huì)采樣IO端口上的值存放到輸入數(shù)據(jù)寄存器中

  • 通過讀取輸入數(shù)據(jù)寄存器可以檢測(cè)IO狀態(tài)

  • 通過讀取輸出數(shù)據(jù)寄存器可以得到最后寫入的值


8. 復(fù)用功能配置

當(dāng)IO端口配置為復(fù)用功能時(shí):

  • 輸出模式下可配置為開漏或推挽

  • 復(fù)用功能的輸出信號(hào)將驅(qū)動(dòng)輸出緩沖區(qū)

  • 輸入端的施密特觸發(fā)器被激活

  • 根據(jù)GPIOx_PUPDR寄存器使能弱上拉/下拉

  • 每個(gè)AHB時(shí)鐘均會(huì)采樣IO端口上的值存放到輸入數(shù)據(jù)寄存器中

  • 通過讀取輸入數(shù)據(jù)寄存器可以檢測(cè)IO狀態(tài)


9. 模擬模式配置

當(dāng)IO端口配置為模擬模式時(shí):

  • 輸出模式被禁用

  • 輸入模式下的施密特觸發(fā)器被激活(為每個(gè)IO口的模擬值提供零功耗,施密特觸發(fā)器的輸出端被強(qiáng)制輸出為0)

  • 弱上拉/下拉被禁用

  • 讀取輸入寄存器獲取到0


10. 外部時(shí)鐘/外部晶振端口復(fù)用

  • 沒有使用LSE時(shí),OSC32_IN和OSC32_OUT 可配置為一般用途的IO端口

  • 沒有使用HSE時(shí),OSC_IN和OSC_OUT 可配置為一般用途的IO端口

11. 選擇RTC_AF1復(fù)用功能

STM32L152XX擁有以下特性

  • 兩個(gè)GPIO端口可配置為喚醒源WKUP1和WKUP3

  • 一個(gè)GPIO端口可配置為喚醒源WKUP2,可用于檢測(cè)篡改、時(shí)間戳事件,輸出RTC AFO_ALARM、AFO_CALIB

RTC_AF1端口(PC13)可配置為以下功能:

  • 喚醒源(WKUP2):配置PWR_CSR寄存器中的EWUP2位

  • RTC AFO_ALARM輸出:根據(jù)RTC_CR寄存器中的OSEL[1:0]輸出可配置為:RTC Alarm A、 RTC Alarm B、RTC Wakeup

  • RTC AFO_CALIB輸出:配置RTC_CR寄存器中的COE[23]位

  • RTC AFI_TAMPER1 : 篡改事件檢測(cè)

  • 時(shí)間戳事件檢測(cè)


12. 初始化GPIO端口例子

void Init_GPIOS(void){

GPIO_InitTypeDef GPIO_InitStructure; //定義初始化結(jié)構(gòu)體

RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB,ENABLE); //使能對(duì)應(yīng)AHB總線時(shí)鐘

 

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; //根據(jù)需求配置GPIO工作模式

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;

GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_40MHz;

GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;

GPIO_Init(GPIOB, &GPIO_InitStructure); //初始化GPIO端口

}


關(guān)鍵字:STM32L  GPIO  寄存器 引用地址:STM32L--GPIO

上一篇:STM32的GPIO—快速IO的使用與講解
下一篇:STM32的GPIO口能夠承受多大電壓? 哪些IO口能容忍5V?

推薦閱讀

  備受關(guān)注的2018CES展會(huì)如期在美國(guó)拉斯維加斯展開,這場(chǎng)盛宴聚集了各行各業(yè)的尖端技術(shù),也因此吸引了全世界科技愛好者眼光。在今天凌晨大家熟睡時(shí),CES2018正如火如荼地舉行著,LG、松下、海信、TCL、三星等廠商陸續(xù)在CES的舞臺(tái)上展出了自家的新品和技術(shù),接下來我們將梳理一下那些值得關(guān)注的家電產(chǎn)品。下面就隨手機(jī)便攜小編一起來了解一下相關(guān)內(nèi)容吧。...
近年來,工業(yè)機(jī)器人產(chǎn)業(yè)發(fā)展十分迅速,去年全球銷量達(dá)到38.7萬(wàn)臺(tái),同比增長(zhǎng)31.6%。工業(yè)機(jī)器人已經(jīng)是制造業(yè)的主要角色,在工廠轉(zhuǎn)型升級(jí)的過程中發(fā)揮著巨大的作用,而隨著人工智能、物聯(lián)網(wǎng)、傳感器等技術(shù)的興起,以協(xié)作機(jī)器人為代表的機(jī)器人2.0時(shí)代到來,再次掀起新一輪工業(yè)變革浪潮。在機(jī)器人2.0時(shí)代,傳感器的地位越來越重要,成為機(jī)器人功能增強(qiáng)和效率提...
2019年12月底,第三屆北航全球創(chuàng)新創(chuàng)業(yè)大賽總決賽在京舉行。經(jīng)過初賽、復(fù)賽的激烈對(duì)決和層層選拔,深維科技參賽項(xiàng)目“超高性能數(shù)據(jù)中心FPGA異構(gòu)計(jì)算加速解決方案”從百余項(xiàng)參賽項(xiàng)目中脫穎而出,榮獲本次全球創(chuàng)新創(chuàng)業(yè)大賽二等獎(jiǎng) 。 圖:深維科技榮獲北航全球創(chuàng)新創(chuàng)業(yè)大賽二等獎(jiǎng),公司CEO樊平(左三)上臺(tái)領(lǐng)獎(jiǎng) 深維科技超高性能數(shù)據(jù)中心FPGA異構(gòu)計(jì)算加速解...
從無到有,由淺入深,我國(guó)載人深潛事業(yè)不斷實(shí)現(xiàn)新跨越。2020 年 11 月 10 日,由我國(guó)自主研制的“奮斗者”號(hào)載人潛水器,成功坐底全球海洋最深處——西太平洋馬里亞納海溝中的“挑戰(zhàn)者深淵”,深度達(dá) 10909 米,創(chuàng)下中國(guó)載人深潛新的深度紀(jì)錄。隨后,“奮斗者”號(hào)獲得中國(guó)船級(jí)社頒發(fā)的萬(wàn)米潛水器入級(jí)證書,這標(biāo)志著我國(guó)第一臺(tái)擁有自主知識(shí)產(chǎn)權(quán)的全...

史海拾趣

小廣播
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號(hào)

 
EEWorld服務(wù)號(hào)

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號(hào) 京ICP備10001474號(hào)-1 電信業(yè)務(wù)審批[2006]字第258號(hào)函 京公網(wǎng)安備 11010802033920號(hào) Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved