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

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

3天內(nèi)不再提示

RA2快速設(shè)計(jì)指南 [8] I/O端口配置(2)

瑞薩MCU小百科 ? 來源:未知 ? 2023-04-12 13:10 ? 次閱讀

9. I/O端口配置(2)

9.2 設(shè)置端口并將其用作GPIO

有兩種方法可以設(shè)置端口并將其用作GPIO:一種是使用端口控制寄存器(PCNTR1),另一種是使用PmnPFS寄存器。

方法1:端口控制寄存器(PCNTR1)

? 通過向端口控制寄存器1(PCNTR1)的端口方向位 (PDRn) 寫入“1”,選擇一個(gè)引腳作為輸出。

? 端口方向位 (PDRn) 是可讀寫的。將該值設(shè)置為“1”將選擇該引腳作為輸出。I/O端口的默認(rèn)狀態(tài)為“0”(輸入)??梢栽赗A2 MCU上讀取端口方向寄存器。

? 相應(yīng)端口控制寄存器 (PCNTR1) 中的端口輸出數(shù)據(jù)位 (PODRn) 是可讀寫的。讀取PODR時(shí),也會讀取輸出數(shù)據(jù)鎖存器的狀態(tài)(不是引腳電平)。

? 端口控制寄存器 2 (PCNTR2) 中的端口輸入位 (PIDRn) 是只讀的。讀取PCNTR2寄存器中的 PIDRn 位以讀取引腳狀態(tài)。

方法2:端口mn引腳功能

選擇 (PmnPFS) 寄存器

? 端口模式寄存器 (PMR) 是可讀寫的,用于指定各個(gè)引腳是用作GPIO還是用作外設(shè)引腳。復(fù)位后,所有PMR寄存器均置0,這會將所有引腳都設(shè)置為GPIO。如果PMR寄存器置1,則該對應(yīng)的引腳將用于實(shí)現(xiàn)外設(shè)功能。外設(shè)功能由該引腳的MPC設(shè)置定義。

? 將引腳設(shè)置為輸出時(shí),建議先將所需的端口輸出值寫入數(shù)據(jù)鎖存器,然后將方向寄存器設(shè)置為輸出。盡管在所有系統(tǒng)中此操作都不太重要,但這可以防止在設(shè)置端口時(shí)出現(xiàn)意外的輸出毛刺。

通常,使用PCNTR1配置端口有助于提高訪問速度,但可用的配置功能較少。使用PmnPFS寄存器將獲得更多可用的配置功能,但訪問速度較慢。

Renesas FSP提供了引腳配置工具,以在復(fù)位后配置GPIO引腳,如圖19所示。配置GPIO后,可以在FSP中使用HAL層API對該GPIO進(jìn)行控制

9d034216-d8ee-11ed-bfe3-dac502259ad0.jpg

圖19. 使用FSP配置器將P107配置為輸出和低電平

9.2.1 內(nèi)部上拉

? 端口0到9上的大多數(shù)引腳都可以選擇使能上拉電阻。上拉由每個(gè)端口mn引腳功能選擇 (PmnPFS) 寄存器中的上拉 (PCR) 位控制。每個(gè)PmnPFS寄存器中的PCR位用于控制端口上的相應(yīng)引腳。

? 首先,必須通過PmnPFS寄存器中的相關(guān)位將該引腳設(shè)置為輸入。將PCR位置“1”以使能上拉,將其置“0”以禁用上拉。

? 復(fù)位后,會將所有PCR寄存器清零,因此將禁用所有上拉電阻。

? 每當(dāng)將某個(gè)引腳指定為外部總線引腳、GPIO輸出或外設(shè)功能輸出引腳時(shí),上拉就會自動關(guān)閉。

9.2.2 漏極開路輸出

? 配置為輸出的引腳通常用作CMOS輸出。

? 端口0到上的大多數(shù)引腳都可以選擇配置為NMOS漏極開路輸出。

? 每個(gè)端口9mn引腳功能選擇 (PmnPFS) 寄存器中的N溝道漏極開路控制 (NCODR) 位控制哪些引腳以漏極開路模式工作。將每個(gè)寄存器中的適用位置“1”會使輸出形式變?yōu)槁O開路。將每個(gè)寄存器中的適用位置“0”會將端口設(shè)置為CMOS輸出。

9.2.3 驅(qū)動能力

RA2A1產(chǎn)品可以使能驅(qū)動能力輸出,其驅(qū)動能力可設(shè)為低或中驅(qū)動能力輸出。其他RA2產(chǎn)品無此功能。

? 驅(qū)動能力的切換由每個(gè)端口mn引腳功能選擇 (PmnPFS) 寄存器中的驅(qū)動能力控制寄存器 (DSCR) 位控制。

? 復(fù)位后,會將所有DSCR寄存器清零,因此會將所有引腳設(shè)置為低驅(qū)動能力輸出。設(shè)置“00”以外的值會更改所選引腳的輸出的驅(qū)動能力。

? 引腳的最大總輸出因產(chǎn)品及封裝而異。具體請參見MCU硬件手冊“電氣特性”章節(jié)的內(nèi)容。

? 驅(qū)動能力的差異如下所示。實(shí)際輸出電流會因產(chǎn)品和引腳類型而有所不同。詳細(xì)信息請參見MCU硬件手冊。

表10. 引腳驅(qū)動能力

9d0ad954-d8ee-11ed-bfe3-dac502259ad0.jpg

輸出驅(qū)動能力可能會對電路板設(shè)計(jì)的整體性能造成重大影響。為每個(gè)輸出選擇驅(qū)動能力時(shí),應(yīng)考慮以下幾點(diǎn):

? 建議首先將所有引腳設(shè)置為低驅(qū)動能力(默認(rèn))并評估性能。

? 根據(jù)電路板布局的不同,驅(qū)動能力設(shè)置為中或高的引腳可能會產(chǎn)生較高的EMI輻射。

? 較長的走線可能需要更高的驅(qū)動能力,才能使信號正確傳播到接收器。

9.3 設(shè)置和使用端口外設(shè)功能

端口mn引腳功能選擇寄存器 (PmnPFS) 用于配置每個(gè)端口的特性。PSEL 位用于選擇為每個(gè)端口選擇的外設(shè)功能。

? 由于大多數(shù)引腳具有多種功能,因此RA2 MCU提供了引腳功能控制寄存器 (PmnPFS),可用于更改分配給引腳的功能。

? 每個(gè)引腳都有自己的PmnPFS寄存器。

? 每個(gè)PmnPFS寄存器都允許將引腳用于外設(shè)功能(PSEL位)、用作IRQ輸入引腳(ISEL位)或用作模擬輸入引腳(ASE位)。如果ASEL位置“1”(將引腳用作模擬輸入引腳),則應(yīng)將該引腳的PMR位置1以用于GPIO,并將該引腳的PDR位置1以用于輸入。

? 請參見《硬件手冊》中“I/O端口”一章的“每種產(chǎn)品的外設(shè)選擇設(shè)置”部分。

? 為了確保外設(shè)引腳上沒有非預(yù)期的邊沿輸入或輸出,確保在修改引腳的PmnPFS寄存器之前將目標(biāo)引腳的端口模式控制 (PMR) 位清零。

? 復(fù)位后,所有PmnPFS寄存器均受到寫保護(hù)。為了對這些寄存器執(zhí)行寫入操作,必須首先使用寫保護(hù)寄存器 (PWPR) 來使能寫入。

? 設(shè)置PmnPFS寄存器時(shí)應(yīng)格外小心,切勿將一個(gè)功能分配給多個(gè)引腳。用戶不應(yīng)這樣做,但MCU允許上述操作。如果發(fā)生這種情況,則引腳上的功能將處于未定義狀態(tài)。

? 圖20為使用Renesas FSP的引腳配置器使能QSPI引腳的示例。

9d49fd3c-d8ee-11ed-bfe3-dac502259ad0.jpg

圖20. 使用Renesas FSP中的引腳配置器使能QSPI引腳


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16885

    瀏覽量

    349920
  • 瑞薩
    +關(guān)注

    關(guān)注

    34

    文章

    22282

    瀏覽量

    85953

原文標(biāo)題:RA2快速設(shè)計(jì)指南 [8] I/O端口配置(2)

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    51單片機(jī)STC8H8K64U通過RA8889/RA8876如何控制彩屏 I2C源碼下載

    用51單片機(jī)STC8H8K64U驅(qū)動彩屏,控制器采用瑞佑RA8889. 使用軟件模擬I2C方式通信,驅(qū)動大屏顯示。
    的頭像 發(fā)表于 11-01 11:02 ?291次閱讀
    51單片機(jī)STC<b class='flag-5'>8H8</b>K64U通過<b class='flag-5'>RA</b>8889/<b class='flag-5'>RA</b>8876如何控制彩屏 <b class='flag-5'>I2</b>C源碼下載

    物聯(lián)網(wǎng)中常見的I/O擴(kuò)展電路設(shè)計(jì)方案_IIC I/O擴(kuò)展芯片

    物聯(lián)網(wǎng)系統(tǒng)中為什么要使用 IIC I/O擴(kuò)展芯片 ??在物聯(lián)網(wǎng)系統(tǒng)中使用IIC(也稱為I2C)I/O擴(kuò)展芯片的原因主要可以歸結(jié)為以下幾點(diǎn):
    的頭像 發(fā)表于 09-24 11:29 ?285次閱讀
    物聯(lián)網(wǎng)中常見的<b class='flag-5'>I</b>/<b class='flag-5'>O</b>擴(kuò)展電路設(shè)計(jì)方案_IIC <b class='flag-5'>I</b>/<b class='flag-5'>O</b>擴(kuò)展芯片

    I2C基本指南

    電子發(fā)燒友網(wǎng)站提供《I2C基本指南.pdf》資料免費(fèi)下載
    發(fā)表于 09-10 09:40 ?0次下載
    <b class='flag-5'>I2</b>C基本<b class='flag-5'>指南</b>

    NCA9555帶中斷的16位I2C總線I/O端口英文手冊

    電子發(fā)燒友網(wǎng)站提供《NCA9555帶中斷的16位I2C總線I/O端口英文手冊.pdf》資料免費(fèi)下載
    發(fā)表于 07-03 17:26 ?1次下載

    具有中斷輸出和配置寄存器的PCA9554遠(yuǎn)程8I2C和SMBus I/O擴(kuò)展器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《具有中斷輸出和配置寄存器的PCA9554遠(yuǎn)程8I2C和SMBus I/O擴(kuò)展器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-28 11:04 ?1次下載
    具有中斷輸出和<b class='flag-5'>配置</b>寄存器的PCA9554遠(yuǎn)程<b class='flag-5'>8</b>位<b class='flag-5'>I2</b>C和SMBus <b class='flag-5'>I</b>/<b class='flag-5'>O</b>擴(kuò)展器數(shù)據(jù)表

    PCA9554A具有中斷輸出和配置寄存器的遠(yuǎn)程8I2C和SMBus I/O擴(kuò)展器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《PCA9554A具有中斷輸出和配置寄存器的遠(yuǎn)程8I2C和SMBus I/O擴(kuò)展器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-28 11:03 ?0次下載
    PCA9554A具有中斷輸出和<b class='flag-5'>配置</b>寄存器的遠(yuǎn)程<b class='flag-5'>8</b>位<b class='flag-5'>I2</b>C和SMBus <b class='flag-5'>I</b>/<b class='flag-5'>O</b>擴(kuò)展器數(shù)據(jù)表

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [11] 配置RA6T2 ADC模塊 (8)

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [11] 配置RA6T2 ADC模塊 (8)
    的頭像 發(fā)表于 05-24 08:06 ?276次閱讀
    <b class='flag-5'>RA6T2</b>的16位模數(shù)轉(zhuǎn)換器操作 [11] <b class='flag-5'>配置</b><b class='flag-5'>RA6T2</b> ADC模塊 (<b class='flag-5'>8</b>)

    RA2在e2 studio環(huán)境生成LIB庫操作

    RA2在e2 studio環(huán)境生成LIB庫操作
    的頭像 發(fā)表于 05-15 08:06 ?401次閱讀
    <b class='flag-5'>RA2</b>在e2 studio環(huán)境生成LIB庫操作

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [9] 配置RA6T2 ADC模塊 (6)

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [9] 配置RA6T2 ADC模塊 (6)
    的頭像 發(fā)表于 05-08 08:06 ?307次閱讀
    <b class='flag-5'>RA6T2</b>的16位模數(shù)轉(zhuǎn)換器操作 [9] <b class='flag-5'>配置</b><b class='flag-5'>RA6T2</b> ADC模塊 (6)

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [8] 配置RA6T2 ADC模塊 (5)

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [8] 配置RA6T2 ADC模塊 (5)
    的頭像 發(fā)表于 04-29 08:08 ?302次閱讀
    <b class='flag-5'>RA6T2</b>的16位模數(shù)轉(zhuǎn)換器操作 [<b class='flag-5'>8</b>] <b class='flag-5'>配置</b><b class='flag-5'>RA6T2</b> ADC模塊 (5)

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [7] 配置RA6T2 ADC模塊 (4)

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [7] 配置RA6T2 ADC模塊 (4)
    的頭像 發(fā)表于 04-20 08:06 ?281次閱讀
    <b class='flag-5'>RA6T2</b>的16位模數(shù)轉(zhuǎn)換器操作 [7] <b class='flag-5'>配置</b><b class='flag-5'>RA6T2</b> ADC模塊 (4)

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [5] 配置RA6T2 ADC模塊 (2)

    RA6T2的16位模數(shù)轉(zhuǎn)換器操作 [5] 配置RA6T2 ADC模塊 (2)
    的頭像 發(fā)表于 04-04 08:05 ?303次閱讀
    <b class='flag-5'>RA6T2</b>的16位模數(shù)轉(zhuǎn)換器操作 [5] <b class='flag-5'>配置</b><b class='flag-5'>RA6T2</b> ADC模塊 (<b class='flag-5'>2</b>)

    對12Bit A/D轉(zhuǎn)換器(ADC12)的更正和RA2組用戶手冊

    電子發(fā)燒友網(wǎng)站提供《對12Bit A/D轉(zhuǎn)換器(ADC12)的更正和RA2組用戶手冊.pdf》資料免費(fèi)下載
    發(fā)表于 02-19 10:51 ?0次下載
    對12Bit A/D轉(zhuǎn)換器(ADC12)的更正和<b class='flag-5'>RA2</b>組用戶手冊

    RA8D1微控制器組評估套件快速入門指南

    電子發(fā)燒友網(wǎng)站提供《RA8D1微控制器組評估套件快速入門指南.pdf》資料免費(fèi)下載
    發(fā)表于 01-31 10:15 ?1次下載
    <b class='flag-5'>RA8</b>D1微控制器組評估套件<b class='flag-5'>快速</b>入門<b class='flag-5'>指南</b>

    MCK-RA8T1快速入門指南

    電子發(fā)燒友網(wǎng)站提供《MCK-RA8T1快速入門指南.pdf》資料免費(fèi)下載
    發(fā)表于 01-29 14:07 ?0次下載
    MCK-<b class='flag-5'>RA8</b>T1<b class='flag-5'>快速</b>入門<b class='flag-5'>指南</b>