日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

stm32点亮LED的有关寄存器配置CRL、CRH、IDR、ODR

發(fā)布時(shí)間:2023/12/14 编程问答 62 豆豆
生活随笔 收集整理的這篇文章主要介紹了 stm32点亮LED的有关寄存器配置CRL、CRH、IDR、ODR 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1、先了解io口
32的io口可以由軟件配置寄存器為8種模式:

1、輸入浮空 5、開(kāi)漏輸出 2、輸入上拉 6、推挽輸出 3、輸入下拉 7、推挽式復(fù)用功能 4、模擬輸入 8、開(kāi)漏復(fù)用功能

單io口寄存器必須按32位字被訪問(wèn)

32 的每個(gè) io端口 都有 7 個(gè)寄存器控制:

兩個(gè)32位 端口配置 寄存器-- CRL和CRH 兩個(gè)32位 數(shù)據(jù) 寄存器-- IDR和ODR 一個(gè)32位 置位/復(fù)位 寄存器-- BSRR 一個(gè)16位 復(fù)位 寄存器-- BRR 一個(gè)32位 鎖存 寄存器-- LCKR

常用的4個(gè)寄存器-- CRL、CRH、IDR、ODR

2、來(lái)看CRL和CEH:
CRL 和 CRH 控制著每個(gè) IO 口的模式及輸出速率

io口配置表:

輸出模式配置:

端口低配置寄存器 CRL 的描述:

此寄存器的復(fù)位值:0x4444 4444
CRL 控制著那幾個(gè)IO端口(A–G)的低 8 位端口的模式,
例如:A0—A7由CRL控制,A8—A15由CRH控制
每個(gè)IO口占用CRL的4個(gè)位,高兩位為CNFy[1:0],低兩位為MODE

下面有幾個(gè)配置模式常用的值:

- 0X0 表示模擬輸入模式(ADC 用) - 0X3 表示推挽輸出模式(做輸出口用,50M 速率) - 0X8 表示上/下拉輸入模式(做輸入口用) - 0XB 表示復(fù)用輸出(使用 IO 口的第二功能,50M 速率)

舉例:將A端口的第11位設(shè)置為上拉輸入,12位設(shè)置為推挽輸出
11位和12位屬于高8位,由CRH控制,然后一個(gè)引腳占4位 11=1000 12=1110 根據(jù)上表來(lái)配置的

代碼的寫法:

GPIOC->CRH &= 0XFFF00FFF; //清除原來(lái)的設(shè)置 GPIOC->CRH |= 0X00038000; //配置11輸入 12輸出 GPIOC->ODR = 1<<11; //11上拉

3、下面到 IDR 寄存器
IDR 是一個(gè)端口輸入 數(shù)據(jù)寄存器,只用了低 16 位。該寄存器為 只讀 寄存器,并且只能以 16 位的形式讀出

4、ODR 是一個(gè)端口輸出數(shù)據(jù)寄存器
也只用了低 16 位。該寄存器為可 讀寫,從該寄存器讀出來(lái)的數(shù)據(jù)可以用于判斷當(dāng)前 IO 口的輸出狀態(tài)。而向該寄存器寫數(shù)據(jù),則可以控制某個(gè) IO 口的輸出電平。該寄存器的各位描述如下圖所示

配置好這幾個(gè)寄存器,就可以讓32的IO口來(lái)控制LED燈了

總結(jié)

以上是生活随笔為你收集整理的stm32点亮LED的有关寄存器配置CRL、CRH、IDR、ODR的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。