娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

IO設置函數

包括兩個函數:GPIO_Set和GPIO_AF_Set. GPIO_AF_Set,每次只能設置一個IO口的復用功能。


STM32F4的每組通用I/O端口包括4個32位配置寄存器(MODER,OTYPER,OSPEEDR和PUPDR),2個32位數據寄存器(IDR和ODR),1個32位置位/復位寄存器(BSRR),1個32位鎖定寄存器(LCKR)和2個32位復用功能選擇寄存器(AFRH和AFRL).


這樣,STM32F4每組IO有10個32位寄存器控制,其中常用的有4個配置寄存器+2個數據寄存器+2個復用功能選擇寄存器,共8個。


各個寄存器介紹

1.MODER寄存器,該寄存器是GPIO端口模式控制寄存器,用于控制GPIOx(STM32F4最多有9組IO,x=A/B/C/D/E/F/G/H/I)的工作模式。

MODERy[1:0]:端口x配置位(y=0~15)這些位通過軟件寫入,用于配置I/O方向模式。


00:輸入(復位狀態)


01: 通用輸出模式


10: 復用功能模式


11:模擬模式


該寄存器各位在復位后,一般都是0(個別不是0,比如JTAG占用的幾個IO口),也就是在默認狀態下是輸入狀態的。每組IO下有16個IO口,該寄存器共32位,每兩個控制一個IO,位31:16 保留,必須保持復位值。


2.OSPEEDR寄存器,該寄存器用于控制GPIOx的輸出速度。(輸出模式)復位時,寄存器值一般為0.


00: 2MHz(低速)


01: 25MHz(中速)


10: 50MHz(快速)


11: 30pF時為100MHz(高速)(15pF時為80MHz輸出(最大速度))


3.PUPDR寄存器,用于控制GPIOx的上拉/下拉。復位后,寄存器值為0.


00: 無上拉/下拉


01: 上拉


10: 下拉


11: 保留


4.ODR寄存器,用于設置某個IO輸出低電平(ODRy=0)還是高電平(ODRy=1),該寄存器也僅在輸出模式下有效,在輸入模式下(MODER[1:0])不起作用.


5.IDR寄存器,用于讀取GPIOx的輸入,用于讀取某個IO的電平,如果對應的位為0,則說明該IO輸入的是低電平


6.OTYPER寄存器,在輸入模式不起作用,低16位有效。


0: 輸出推挽(復位狀態)


1: 輸出開漏


7.AFRL和AFRH,是用來設置IO引腳復用和映射的,STM32F4每個IO引腳通過一個復用器連接到板載外設,該復用器一次僅允許一個外設的復用功能(AF)連接到IO引腳,AFRL控制0…7這8個IO口,AFRH控制8…15這8個IO口。4個位控制一個IO。


0000: AF0


1111: AF15


8.BSRR寄存器是端口位設置/清除寄存器,BSRR低16位用于設置GPIO口對應位輸出高電平,高16位用于設置GPIO口對應位輸出低電平.


void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState)

{

  /* Check the parameters */

  assert_param(IS_GPIO_PIN(GPIO_Pin));

  assert_param(IS_GPIO_PIN_ACTION(PinState));


  if(PinState != GPIO_PIN_RESET)

  {

    GPIOx->BSRR = GPIO_Pin;

  }

  else

  {

    GPIOx->BSRR = (uint32_t)GPIO_Pin << 16U;

  }

}


STM32F4的IO的8種模式

4種輸入模式

1.GPIO_Mode_IN_FLOATING 浮空輸入


MCU直接讀取I/O電平,I/O電平狀態不確定,完全由外部輸入決定


2.GPIO_Mode_IPU 上拉輸入


IO內部接上拉電阻,此時如果IO口外部沒有信號輸入或引腳懸空,IO默認為高電平,如果要大電流還是要外部上拉


3.GPIO_Mode_IPD 下拉輸入


IO內部接上拉電阻,沒有外部信號或引腳懸空,IO默認為低電平


4.GPIO_Mode_AIN 模擬輸入


當位于模擬輸入配置下,通過數模轉換,轉換成模擬信號,CPU不能在"輸入數據寄存器"上讀到有效數據.


4種輸出模式


1.GPIO_Mode_OUT_OD 開漏輸出


2.GPIO_Mode_AF_OD 復用開漏輸出


3.GPIO_Mode_OUT_PP 推挽輸出


4.GPIO_Mode_AF_PP 復用推挽輸出


開漏輸出:可以輸出強低電平,高電平得靠外部電阻拉高


推挽輸出:可以輸出強高低電平.


關鍵字:STM32F4  寄存器 引用地址:STM32F4寄存器與IO輸入輸出學習

上一篇:按鍵實驗(GPIO的輸入模式)
下一篇:STM32F4的GPIO口配置模式

推薦閱讀

毋庸置疑,自動駕駛已經成為全世界的科技和汽車企業一致認同的未來汽車的發展方向。為了鋪占市場,各大公司都不愿意在此領域丟失機會,所有多多少少都有涉水自動駕駛產業。?自動駕駛的全面爆發時代被認為在10年到20年后。曾有專業人士預測“最多再過25年,配備了完善人工智能的無人駕駛系統將徹底取代人類司機。”那么,在過去的2017年,自動駕駛到底有哪...
對于大多數駕駛者來說,一個接一個地通過一系列綠燈,是駕駛體驗中最高興的事情。現在,奧迪正在更新其嵌入式紅綠燈讀取技術,以幫助用戶更精確地捕捉那些神秘的“綠波”。奧迪稱這項新功能為“綠燈優化速度咨詢” (Green Light Optimized Speed Advisory)或GLOSA,它告訴司機如何調節車速以減少紅燈停車等待時間。一些2017和2018奧迪車型具有內置...
集邦咨詢半導體研究中心(DRAMeXchange)公布了全球DRAM廠自有品牌內存營收最新排名。 從2019年第四季營收表現來看,除了SK海力士、美光之外,其它內存廠營收都出現了不同程度的下跌。 三星依然排名第一,但因服務器端的出貨成長略低于同業,銷售位元出貨量僅成長2-3%,加上報價下跌,營收衰退5%,來到67.6億美元。 SK海力士的銷售位元成長達8%左右,盡管報...
據財聯社報道,鴻海董事長劉揚偉表示,富士康-吉利、FARADAY FUTURE討論電動車的合作。此外,劉揚偉還表示,富士康尋求購買一座8英寸晶圓廠,芯片短缺對富士康客戶的影響有限。值得一提的是,1月13日,吉利控股集團微信公眾號發布消息稱,浙江吉利控股集團有限公司與富士康科技集團共同簽署戰略合作協議,雙方將成立合資公司,為全球汽車及出行企業提供代...

史海拾趣

問答坊 | AI 解惑

小車爬坡

爬坡的小車 小車上下坡過橋 角度傳感器測量坡度,高度游標尺測斜坡高度。 上坡時,小車在斜坡上循跡爬坡,這其中必會有角度的測量,只有在一定的傾角范圍內,小車才會正常爬坡。否則,有可能側翻或下滑。 下坡時,小車要減速下坡,涉及電機可控 ...…

查看全部問答∨

安防監控系統的防線組成

安防監控系統一般由下面五道防線組成:   第一道安全防線:由周界防范報警系統構成,以防范翻圍墻和周邊進入社區的非法入侵者。采用感應線纜或主動紅外線對射器。   第二道安全防線:由社區監控系統構成,對出入社區和主要通道上的車輛,人 ...…

查看全部問答∨

請幫忙設計下模擬電路,謝謝

電平控制的RS觸發器芯片的名稱是什么啊? jk觸發器都是脈沖控制觸發的,我現在想找個電平控制的rs觸發器,不知道芯片名稱是什么啊?我的信號有的是瞬間的,有的是電平的。我要在高電平期間,把瞬間信號鎖存。找了半天芯片,就是找不到電平觸發的 ...…

查看全部問答∨

如何使用AVR-GCC

很詳細的介紹AVR-GCC…

查看全部問答∨

單片機看門狗復位后,要清零來刪除標志位嗎?

來自EEWORLD合作群:499581  群主:wangkj…

查看全部問答∨

關于藍牙傳輸不穩定

  我用的是CSR的BC6的藍牙芯片,平臺是S3C2440+WIN CE的,上了CSR的驅動。BC6是用串口與主機通信,現在跑文件傳輸跑300K以下的來是沒問題,跑300K以上的就老傳到一半就沒反應了,會不會是驅動問題,聽給我們提供芯片的公司說微軟的芯片只支持BC4 ...…

查看全部問答∨

求救,各位達人,WinCE6.0如何加載位于BinFS文件系統中類型為NandImage的.bin文件中的內容?

我現在做的是BinFS+Multi-bin,目的是加快WINCE6.0的啟動速度,減小內存使用。核心的東西都放在XIPKERNEL.bin中,為RAMIMAGE,而其他東西則放在nk.bin中,為NANDIMAGE。現在的現象是,xipkernel里面的東西好像加載都是正常的,但是nk.bin中的內容一 ...…

查看全部問答∨

單片機編程問題告急!!!希望個位大哥大姐幫忙.

我要實現的是4X4鍵盤顯示電路  我鍵盤接P2口  顯示電路用LED(8位) ,使用的是 (P3.1)串行通行 現在我要讓鍵盤每一個鍵對應顯示 1,2,3,....F,0,   我的單片機初始狀態顯示了 LED 全亮  可我的按鍵 ...…

查看全部問答∨

【求助】基于msp430可燃氣體探測的設計方案

【求助】基于msp430可燃氣體探測的設計方案 求助〉〉〉〉〉〉〉〉〉〉〉〉〉…

查看全部問答∨

關于IR2130的自舉

請問大家,我現在調試IR2130做驅動,我想輸出高臂端,可是死活不行那,誰能講講怎么回事嗎,現在的現象是,我輸出PWM,可是在HO,VSS之上的波形,是一樣的,沒有電壓差,就是說IGBT沒有輸出,怎么搞的,NND,郁悶.…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 噶尔县| 玉山县| 蕲春县| 江孜县| 绥棱县| 汽车| 新竹市| 江永县| 衡水市| 辽源市| 浦江县| 惠州市| 涟水县| 云南省| 黄陵县| 大关县| 和平县| 陆河县| 忻州市| 开封县| 老河口市| 平远县| 阿坝| 武汉市| 孝感市| 开平市| 黎川县| 阿鲁科尔沁旗| 禄劝| 察雅县| 巫溪县| 通河县| 海淀区| 嘉黎县| 巴中市| 肥城市| 金溪县| 正蓝旗| 广河县| 舞阳县| SHOW|