一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>STM32學(xué)習(xí)GPIO之設(shè)計(jì)篇

STM32學(xué)習(xí)GPIO之設(shè)計(jì)篇

2025-03-27 | pdf | 960.23 KB | 次下載 | 免費(fèi)

資料介紹

今日分享 GPIO 結(jié)合寄存器以及硬件電路,再來(lái)舉例子分析輸入輸出。

寄存器介紹:

通過(guò)寄存器的位標(biāo)注 rw,我們可知這個(gè)寄存器的某個(gè)位是可讀(r)并且可寫(xiě) 的(w),我們也可以通過(guò)讀寄存器里面的值得到引腳的配置信息,如果寄存器的 位標(biāo)注只有 r 或者 w,那么就代表這個(gè)寄存器的這個(gè)位只能進(jìn)行讀(r)或者寫(xiě)(w)

復(fù)位后 IO 口寄存器的值每一位可能不都是一樣的,也就是說(shuō)復(fù)位后 IO 口的 狀態(tài)、工作模式等不完全相同,一定要注意

模式配置寄存器 GPIOx_MODER,右上角用藍(lán)色圓圈標(biāo)識(shí)的地方告訴我們 IO 口的復(fù)位值,可以看到復(fù)位后對(duì)于 A 組 IO 口來(lái)說(shuō)初始值 0XA8000000,對(duì)于 B 組 IO 口初始值為 0x00000280,其他組 IO 口都是 0。該寄存器共 32 位,每 2 個(gè)位 控制 1 個(gè) IO

如圖中左下角劃藍(lán)線的為第 0 位和第 1 位。通過(guò)往第 0 位寫(xiě) 0,第 1 位寫(xiě) 0 配置成 Input Mode(輸入模式),通過(guò)往第 0 位寫(xiě) 0,第 1 位寫(xiě) 1 配置成 General purpose output Mode(普通輸出模式),通過(guò)往第 0 位寫(xiě) 1,第 1 位寫(xiě) 0 配置 成 Alternate function Mode(復(fù)用功能模式),通過(guò)往第 0 位寫(xiě) 1,第 1 位寫(xiě) 1 配置成 Analog Mode(模擬模式)

例如我們要把這個(gè)寄存器第 0 位寫(xiě) 1,其他都寫(xiě) 0,表示如下:

GPIOA->MODER |= 0x00000001;

這就相當(dāng)于把 A 組的 PA0 口配置成了普通輸出模式,其他 IO 口配置成了輸入模 式

GPIOx_OTYPER 寄存器用于控制 IO 的輸出類型,僅用于輸出模式,在輸 入模式下不起作用。該寄存器低 16 位(第 0 位-第 15 位)有效,每一個(gè)位控制 一個(gè) IO 口,根據(jù)往不同的位寫(xiě) 1(開(kāi)漏輸出)/寫(xiě) 0(推挽輸出)來(lái)配置成不同的 輸出模式。復(fù)位后,該寄存器值均為 0,即默認(rèn)為推挽輸出

例如我們往 A 組 IO 口的第 0 位寫(xiě) 1 那就將 PA0 成開(kāi)漏輸出模式:

GPIOA->OTYPER |= 0x00000001;

GPIOx_OSPEEDR 寄存器用于控制 IO 的輸出速度,僅用于輸出模式,在輸 入模式下不起作用。該寄存器每 2 個(gè)位控制一個(gè) IO 口,根據(jù)往不同的位寫(xiě) 1/ 清 0 不同的位來(lái)配置成不同的模式。復(fù)位后對(duì)于 A 口來(lái)說(shuō)初始值為 0X0C000000, 對(duì)于 B 口初始值 0x000000C0,其他口都是 0

例如我們往 A 組 IO 口的第 0 位和第 1 位寫(xiě) 1 那就將 PA0 成高速輸出模式: GPIOA->OSPEEDR |= 0x00000003;

GPIOx_PUPDR 寄存器用于控制 IO 的上拉/下拉,該寄存器每 2 個(gè)位控制 一個(gè) IO 口, 用于設(shè)置上下拉,根據(jù)往不同的位寫(xiě) 1/清 0 不同的位來(lái)配置成不 同的模式。復(fù)位后對(duì)于 A 口來(lái)說(shuō)初始值為 0X64000000,對(duì)于 B 口初始值 0x00000100,其他口都 0x0C000000

例如我們往 A 組 IO 口的第 0 位寫(xiě) 1 那就將 PA0 下拉模式: GPIOA->PUPDR |= 0x00000001;

GPIOx_ODR 寄存器是 IO 口的輸出數(shù)據(jù)寄存器,寄存器低 16 位(第 0 位- 第 15 位)有效,寄存器每 1 個(gè)位控制一個(gè) IO 口, 也就是這個(gè)里面位的狀態(tài) 代表了單片機(jī)輸出的狀態(tài),根據(jù)往不同的位寫(xiě) 1/清 0 不同的位來(lái)配置成不同的 模式。復(fù)位后都是 0

例如我們往 A 組 IO 口的第 0 位寫(xiě) 1 那 PA0 就輸出高: GPIOA->0DR |= 0x00000001;

對(duì)于一些其他的寄存器大家可以去參考數(shù)據(jù)手冊(cè),按照上面講述的方法去配 置

硬件設(shè)計(jì):

圖示LED燈部分我們用到了B組的2PIN(腳的簡(jiǎn)稱)和4PIN, C組的15PIN, D 組的 8PIN, E 組的 8PIN 和 9PIN

LED 燈硬件的設(shè)計(jì)決定了 LED 燈的驅(qū)動(dòng)方法,LED 燈相當(dāng)于一個(gè)發(fā)光二 極管,如果單片機(jī)引腳輸出高,則二極管的左邊和右邊電壓相同,不亮,反之單 片機(jī)輸出低,右邊電壓大于左邊電壓通過(guò)單片機(jī)內(nèi)部電路形成回路點(diǎn)亮二極管, 那麼通過(guò)控制引腳輸出的高低就控制了 LED 燈的亮滅

完整版技術(shù)文檔請(qǐng)點(diǎn)擊文章開(kāi)頭普通下載

 

 

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

  • --
    文章
  • --
    閱讀
  • --
    粉絲

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)