




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《ESP32技術(shù)參考手冊(cè)》的目標(biāo)讀者群體是使用ESP32的應(yīng)用開發(fā)工程師。本手冊(cè)提供了關(guān)于ESP32的具發(fā)布說明日版增加章節(jié)I2C免責(zé)申明和公本文檔不負(fù)任何責(zé)任,包括使用本文檔內(nèi)信息產(chǎn)生的任何專利權(quán)行為的責(zé)任。本文檔在此未以反言或其他方式授予任何知識(shí)使用,不管是明示還是暗示。WiFi成員標(biāo)志歸WiFi牙標(biāo)志是BluoothSIG的商標(biāo)。文中提到的所有商標(biāo)名稱、商標(biāo)和商標(biāo)均屬其各自所有者的財(cái)產(chǎn),特此歸?2016樂鑫所有。保留所利1器8 概8 8 1.3.1地址映1.3.2片上器InternalROMInternalROMInternalSRAMInternalSRAMInternalSRAMRTCFASTRTCSLOW1.3.3器1.3.4不對(duì)稱PIDController器速度中斷矩 概 主要特 功能描 CPU中CPUCPU的NMI類型中斷查詢外部中斷源當(dāng)前的中斷狀態(tài)復(fù)位和時(shí) System復(fù) 概 復(fù)位 系統(tǒng)時(shí) 概 時(shí)鐘 CPU時(shí) 外設(shè)時(shí) APB_CLK REF_TICK LEDC_SCLK APLL_SCLK PLL_D2_CLK 時(shí)鐘源注意事 Wi-FiBT時(shí) RTC時(shí) IO_MUX和GPIO交換矩 概 概 功能描 簡(jiǎn)單GPIO輸 概 功能描 簡(jiǎn)單GPIO輸 IO_MUX的直接I/O功 概 功能描 RTCIO_MUX的低功耗和模擬I/O功 概 功能描 Light-sleep模式管腳功 PadHold特 I/OPad供 VDD_SDIO電源 外設(shè)信號(hào)列 RTC_MUX管 38寄存器列 寄存 I2C控制 概 主要特 I2C功能描 I2C簡(jiǎn) I2C架 I2C總線時(shí) I2Ccmd結(jié) I2C主機(jī)寫入從 I2C主機(jī)從 中 寄存器列 寄存 84概 功能描 架通中寄存器列 寄存 紅外 98概 功能描 RMTRMT時(shí)中寄存器 概 功能描 架構(gòu) 計(jì)數(shù)器通道輸入信 觀察 舉 溢出中 寄存器列 寄存 64-bit定時(shí) 概 功能描 16-bit預(yù)分頻 64-bit時(shí)基計(jì)數(shù) 產(chǎn)生 中寄存器看門狗定時(shí) 概 主要特 功能描 時(shí) 運(yùn)行過 Flash啟動(dòng)保AES 126概 主要特 功能描 運(yùn)算模 密鑰、明文、密 字節(jié) 加密與運(yùn) 運(yùn)行效 寄存器列 寄存 SHA 133概 特 功能描 填充解析信 信息 133哈希運(yùn) 運(yùn)行效 寄存器列 寄存 123DMA4片外器地址映567CPU中PRO_CPU和APP_CPU復(fù)位 CPU_CLK CPU_CLK 外設(shè)時(shí)鐘用 APB_CLK REF_TICK LEDC_SCLK IO_MUXLight-sleep管腳功能寄存 GPIO交換矩陣外設(shè)信 RTC_MUX管 38運(yùn)算模 AES文本字節(jié) AES-128密鑰字節(jié) AES-192密鑰字節(jié) AES-256密鑰字節(jié) 中斷矩陣結(jié)構(gòu)圖系統(tǒng)時(shí) 通過IO_MUX、GPIO交換矩陣的外設(shè)輸 ESP32I/OPad供電 I2CMaster基本架 I2CSlave基本架 I2C時(shí)序 I2C命令寄存器結(jié) I2CMaster寫7-bit地址 I2CMaster寫10-bit地址 I2CMaster寫7-bit地址Slave的M地址 I2CMaster讀7-bit地址 I2CMaster讀10-bit地址 I2CMaster從7-bit地址Slave的M地址N個(gè)數(shù) LED_架 LED_高速通道框 LED_輸出信號(hào) 漸變占空比輸出信號(hào) RMT架 數(shù)據(jù)結(jié) T單元基本架構(gòu) T遞增計(jì)數(shù) T遞減計(jì)數(shù) 11系統(tǒng) 系統(tǒng)和概ESP32采用兩個(gè)哈佛結(jié)構(gòu)XtensaLX6CPU構(gòu)成雙核系統(tǒng)。所有的片上器、片外器以及外設(shè)都分布在兩個(gè)CPU的數(shù)據(jù)總線和/或指令總線上。設(shè)能夠通過DMA片上器。兩個(gè)APP_CPU主要特1296KB片上器地址空19704KB片外器地址空512KB部分片上器與片外器既能被數(shù)據(jù)總線也能被指令總線328KBDMA片上448KBInternal520KBInternal8KBRTCFAST8KBRTCSLOW片外片外 器可作為片外器被映射到可用的地址空間部分片上器可用作片外器 Cache16MB片外SPI8MB片外SPI外13DMA12功能描地址映射同構(gòu)雙核系統(tǒng)由兩個(gè)哈佛結(jié)構(gòu)XtensaLX6CPUCPU4GB(32-bit)0x4000_00000x4000_0000~0x4FFF_FFFF部分為指令總線的地址范圍,地址0x5000_0000及以上的部分是數(shù)據(jù)總線與指令總線共用的地址范圍。CPU的數(shù)據(jù)總線與指令總線都為小端序。即字節(jié)地址0x0、0x1、0x2、0x3的字節(jié)分別是0x0的32-bitCPU可以通過指令總線進(jìn)行數(shù)據(jù),但必須是字對(duì)齊方式;非對(duì)齊數(shù)據(jù)會(huì)導(dǎo)致CPU工作異常。兩個(gè)CPU都能夠使用數(shù)據(jù)總線與指令總線直接片上器、使用Cache和MMU直接映射到地址空地址映射呈對(duì)稱結(jié)構(gòu)。表1描述了兩個(gè)CPU的數(shù)據(jù)總線與指令總線中的各段地址所能的目標(biāo)。系統(tǒng)中部分片上器與部分片外器既可以被數(shù)據(jù)總線也可以被指令總線這種情況下兩個(gè)都可以用多個(gè)地址到同一目標(biāo)1容目地保數(shù)4片外數(shù)4片外3保數(shù)512外數(shù)512片上指776片上指11512片外244保8片上保片上片上器分為InternalROM、InternalSRAM、RTCFASTMemory、RTCSLOWMemory四個(gè)部分,其容量分別為448KB、520KB、8KB、8KB。448KBInternalROM384KBInternalROM0、64KBInternalROM1520KBInternalSRAM192KBInternalSRAM0、128KBInternalSRAM1、200KBInternalSRAM2三部RTCFASTMemory與RTCSLOWMemory都為SRAM表2列出了所有片上器以及片上器的數(shù)據(jù)總線與指令總線地址段容目備地?cái)?shù)8RTCFASTPRO_CPU56保數(shù)64InternalROM56保數(shù)200InternalSRAM數(shù)128InternalSRAM容目備地指32InternalROM指352InternalROM64保指64InternalSRAM指128InternalSRAM指64InternalSRAM指32InternalSRAM指32InternalSRAM指8RTCFASTPRO_CPU低位地 地容目備 8RTCSLOWInternalROMInternalROM0的容量為384KB,可以被兩個(gè)CPU通過指令總線0x4000_0000~0x4005_FFFFROM0的頭32KB的地址(0x4000_0000~0x4000_7FFF)可以被重新映射到InternalSRAM1中的一部分,這部分原本被地址0x400B_0000~0x400B_7FFF。重映射時(shí),這32KBSRAM不能再被地址別為兩個(gè)CPU配置一個(gè)寄存器,即為PRO_CPU置位DPORT_PRO_BOOT_REMAP_CTRL_REG寄存器的bit0或者為APP_CPU置位DPORT_APP_BOOT_REMAP_CTRL_REG寄存器的bit0。InternalROMInternalROM1的容量為64KB,其可以被兩個(gè)CPU通過數(shù)據(jù)總線0x3FF9_0000~0x3FF9_FFFFInternalSRAMInternalSRAM0的容量為192KB,通過配置,硬件的頭64KB可以作為Cache來緩存片外器Cache使用時(shí),頭64KB可以被兩個(gè)CPU通過指令總線0x4007_0000~0x4007_FFFF讀寫,其余128KB可以被兩個(gè)CPU通過指令總線0x4008_0000~0x4009_FFFF讀寫。InternalSRAMInternalSRAM1128KB,其既可以被兩個(gè)CPU0x3FFE_0000~0x3FFF_FFFF讀寫,也可以被兩個(gè)CPU通過指令總線0x400A_0000~0x400B_FFFF讀寫。指令總線地址和數(shù)據(jù)總線地址的word是逆序的。即地址0x3FFE_0000與0x400B_FFFC到相同的0x3FFE_0004與0x400B_FFF8到相同的0x3FFE_0008與0x400B_FFF4到相同的0x3FFF_FFF4與0x400A_0008到相同的0x3FFF_FFF8與0x400A_0004到相同的0x3FFF_FFFC與0x400A_0000到相同的CPU的數(shù)據(jù)總線與指令總線都是小端序。因此地址空間每個(gè)word的字節(jié)順序不是逆序的。即地址0x3FFE_0000的字節(jié)等同于0x400B_FFFC的word中的最低字0x3FFE_0001的字節(jié)等同于0x400B_FFFC的word中的次低字0x3FFE_0002的字節(jié)等同于0x400B_FFFC的word中的次高字0x3FFE_0003的字節(jié)等同于0x400B_FFFC的word中的最高字部分器可以被重新映射到ROM0的地址空間。詳細(xì)信息請(qǐng)參見InternalRom0InternalSRAMDMA使用與CPU數(shù)據(jù)總線完全相同的地址讀寫InternalSRAM1與InternalSRAM2DMA使用地址~0x3FFF_FFFFInternalSRAM10x3FFA_E000~0x3FFD_FFFFInternalSRAM2。系統(tǒng)中具有DMA功能的模塊總共有13個(gè)。表3列出了所有具有DMA功能的模塊。表3:具有DMASDIORTCFASTRTCFASTMemory為8KBSRAM,其只能被PRO_CPU通過數(shù)據(jù)總線0x3FF8_0000~0x3FF8_1FFF讀寫,或被PRO_CPU通過指令總線0x400C_0000~0x400C_1FFF讀寫。與其他器不同,APP_CPU不能RTCFASTMemory。PRO_CPU的這兩段地址同序RTCFASTMemory。即地址0x3FF8_0000與0x400C_0000到相同的word,0x3FF8_0004與0x400C_0004到相同的word,0x3FF8_0008與0x400C_0008到相同的word,以此類推。APP_CPU的這兩段地址不能到RTCFASTMemory,也不能到其他任何目標(biāo)。RTCSLOWRTCSLOWMemory為8KBSRAM,其可以被兩個(gè)CPU通過數(shù)據(jù)總線與指令總線共用地址段0x5000_0000片外ESP32將ExternalFlash與ExternalSRAM作為片外器。表4列出了兩個(gè)CPU的數(shù)據(jù)總線與指令總線中的各段地址通過Cache與MMU所能的片外器。兩個(gè)CPU通過Cache與MMU對(duì)片外器進(jìn)行時(shí),Cache將根據(jù)MMU中的設(shè)置把CPU的地址變換為ExternalFlash與ExternalSRAM的實(shí)地址。經(jīng)過變換之后的實(shí)地址最大支持16MB的ExternalFlash與8MB的ExternalSRAM。表4:片 容目備地?cái)?shù)4External讀數(shù)4External讀/寫低位地 地容目備指 11512External讀外ESP32共有41個(gè)外設(shè)模塊。表5詳細(xì)描述了兩個(gè)CPU的數(shù)據(jù)總線中的各段地址所能的各個(gè)外設(shè)模塊。除了PIDController以外,其余外設(shè)模塊都可以被兩個(gè)CPU用相同地址到。5容目備地?cái)?shù)4DPort數(shù)4AES數(shù)4RSA數(shù)4SHA數(shù)444保數(shù)16CacheMMU44保數(shù)4PID每個(gè)CPU128保數(shù)44保數(shù)4數(shù)4數(shù)412保數(shù)4數(shù)4IO4保數(shù)4SDIO數(shù)48保數(shù)4數(shù)48保數(shù)4數(shù)4數(shù)4SDIO數(shù)4數(shù)4數(shù)4SDIO數(shù)4LED數(shù)4Efuse數(shù)4Flash8保數(shù)40數(shù)4數(shù)412保數(shù)4數(shù)4數(shù)4容目備地?cái)?shù)4數(shù)4數(shù)84保數(shù)41數(shù)4數(shù)4數(shù)42數(shù)4316保數(shù)440保不對(duì)稱PIDController系統(tǒng)中有兩個(gè)PIDController分別服務(wù)于PRO_CPU和APP_CPU。PRO_CPU和APP_CPU都只能自己的PIDController,不能對(duì)方的PIDController。兩個(gè)CPU都使用數(shù)據(jù)總線0x3FF1_F000~3FF1_FFFF自己的PIDController。不連續(xù)外設(shè)地址范圍外設(shè)模塊SDIOSlave被劃分為三部分。兩個(gè)CPU這三部分的地址是不連續(xù)的。這三部分分別被兩個(gè)CPU的數(shù)據(jù)總線0x3FF4_B000~3FF4_BFFF、0x3FF5_5000~3FF5_5FFF、0x3FF5_8000~3FF5_8FFF。和其他外設(shè)一樣,SDIOSlave能被兩個(gè)CPU。器速度ROM和SRAM的時(shí)鐘源都是CPU_CLK,CPU可在單個(gè)時(shí)鐘周期內(nèi)這兩個(gè)器由于RTCFASTMemory的時(shí)鐘源是APB_CLOCK,RTCSLOWMemory的時(shí)鐘源是FAST_CLOCK,所以CPU這兩個(gè)器的速度稍慢。DMA在APB_CLK時(shí)鐘下器。 概ESP32中斷矩陣將任一外部中斷源單獨(dú)分配到每個(gè)CPU的任一外部中斷上。這提供了強(qiáng)大的靈活性,能適應(yīng)主要特CPU26個(gè)外部中斷(52個(gè))CPU的NMI類型中斷中斷矩陣的結(jié)構(gòu)如圖3所示。3功能描ESP32總共有71個(gè)外部中斷源。表6列出了所有外部中斷源。ESP32中的71個(gè)外部中斷源中有67個(gè)可以分配給兩個(gè)CPU。其余的4個(gè)外部中斷源只能分配給特定的CPU,每個(gè)CPU2個(gè)。GPIO_INTERRUPT_PRO和GPIO_INTERRUPT_PRO_NMI只可以分配給PRO_CPU,GPIO_INTERRUPT_APP和GPIO_INTERRUPT_APP_NMI只可以分配給APP_CPU。因此,PRO_CPU與APP_CPU各可以分配到69個(gè)外2EspressifESP32技術(shù)參考手冊(cè)表6:PRO_CPU、2EspressifESP32技術(shù)參考手冊(cè)PeripheralInterrupt000011112222333344445555666655556666777788889999001122334455667788992Espressif2EspressifESP32技術(shù)參考手冊(cè)PeripheralInterrupt0011223344CPUCPU(PRO_CPUAPP_CPU)32267CPU所有的中7:CPU編類種01112軟解1123344534軟345分配外部中斷源至CPU記號(hào)Source_X記號(hào)PRO_X_MAP_REG(或APP_X_MAP_REG)表示PRO_CPU(或APP_CPU)寄存器,且此外部中斷配置寄存器與外部中斷源Source_X相對(duì)應(yīng)。即表6中“PRO_CPU(APP_CPU)-PeripheralInterruptConfigurationRegister”一列中與“PeripheralInterruptSource-Name”一列中的某個(gè)14、17~28、30~31記號(hào)Interrupt_I表示CPU中斷序號(hào)為Num_I的內(nèi)部中斷,Num_I的取值范圍為 將外部中斷源Source_X分配到CPU(PRO_CPU或?qū)⒓拇嫫鱌RO_X_MAP_REG(APP_X_MAP_REG)配成Num_P。Num_P可以取任意CPU關(guān)閉CPU(PRO_CPU或APP_CPU)外部中斷源PRO_X_MAP_REG(APP_X_MAP_REG)Num_INum_I的中斷都沒有連接到2個(gè)CPU上,選擇特定內(nèi)部中斷值不會(huì)造成影響。將多個(gè)外部中斷源Source_XnORed分配到PRO_CPU(APP_CPU)PRO_Xn_MAP_REGAPP_Xn_MAP_REGNum_P。這些外設(shè)中斷都會(huì)觸發(fā)CPUInterrupt_P。CPU的NMI類型中斷中斷矩陣能夠根據(jù)信號(hào)PRO_CPUNMIInterruptMask(或APP_CPUNMIInterruptMask)暫時(shí)所有被分配到PRO_CPU(或APP_CPU)的外部中斷源的NMI中斷。信號(hào)PRO_CPUNMIInterruptMask和APP_CPUNMIInterruptMask分別來自外設(shè)PIDController。PRO_INTR_STATUS_REG_n(APP_INTR_STATUS_REG_n)Bit值就可以獲知外部中斷源當(dāng)前的中斷狀態(tài)。寄存器PRO_INTR_STATUS_REG_n(APP_INTR_STATUS_REG_n)與外部中斷源的對(duì)應(yīng)關(guān)系如表6所示。3System概4CPU復(fù)位:只復(fù)位CPU內(nèi)核復(fù)位:除了RTCdigital的寄存器全部復(fù)位,包括CPUGPIO系統(tǒng)復(fù)位:會(huì)復(fù)位整個(gè)所有的寄存器,包 RTC復(fù)位大多數(shù)情況下,APP_CPU和PRO_CPU將被立刻復(fù)位,有些復(fù)位源只能復(fù)位其中一個(gè)。APP_CPU和 來獲取復(fù)位源,APPCPU則可以通過寄存器; TL_RESET_CAUSE_PROCPU來獲取復(fù)位源。表8列出了從這些寄存器中可能讀出的復(fù)位源。表8:PRO_CPU和APP_CPU源注上電復(fù)位-配 TL_SW_SYS_RST寄存DeepSleep源注-MWDT0CPUCPU復(fù)-軟件CPUCPU復(fù)配 TL_SW_APPCPU_RST寄存-MWDT1CPUCPU復(fù)-軟件CPUCPU復(fù)配 TL_SW_APPCPU_RST寄存RWDTCPUCPU復(fù)-PROCPUCPU復(fù)表明PROCPU能夠通過配置DPORT_APPCPU_RESETTINGAPPCPU系統(tǒng)時(shí)概ESP32CPU,外設(shè),以及RTC的工作頻率,以滿足不同功耗和性能需求。下圖5為系統(tǒng)時(shí)鐘結(jié)構(gòu)。5時(shí)鐘PLL_CLK,320MHz內(nèi)部PLLXTL_CLK,2~40MHzXTL32K_CLK,32KHzRTC8M_CLK,8MHzRTC8M_D256_CLK由RTC8M_CLK256分頻所得,頻率為(RTC8M_CLK256RTC8M_CLK的初始頻率為8MHz時(shí),該時(shí)鐘以31.250KHz的頻率運(yùn)行。RTC_CLK,150KHzAPLL_CLK,16~128MHz內(nèi)部AudioPLLCPU如圖5所示,CPU_CLKCPU160MHz。同時(shí),CPU能夠在超CPU_CLK TL_SOC_CLK_SEL來選擇時(shí)鐘源允許選擇PLL_CLKAPLL_CLKRTC8M_CLKXTL_CLK作為CPU_CLK的時(shí)鐘源。具體請(qǐng)參考表9和表10表9:CPU_CLKTL_SOC_CLK_SEL0123表10:CPU_CLKCPU時(shí)0/-CPU_CLK=XTL_CLK/ T默認(rèn)值為00~10231/0CPU_CLK=PLL_CLK/CPU_CLK頻率為80MHz1/1CPU_CLK=PLL_CLK/CPU_CLK頻率為160MHz2/-CPU_CLK=RTC8M_CLK/ T默認(rèn)值為00~10233/0CPU_CLK=APLL_CLK/43/1CPU_CLK=APLL_CLK/2*SEL:DPORT_CPUPERIOD_SEL外設(shè)時(shí)鐘外設(shè)所需要的時(shí)鐘包括APB_CLK,REF_TICK,LEDC_SCLK,APLL_CLK和PLL_D2_CLK。下表11為接入各個(gè)外設(shè)的時(shí)鐘。11外YNNYNYNNNNYNNYYYYNNNYYNNNYYYNNYNNNNYNNNNYNNNNYNNNNEfuseYNNNNSDIOYNNNNYNNNNAPB_CLK如表12所示,APB_CLK由CPU_CLK產(chǎn)生,分頻系數(shù)由CPU_CLK表12:APB_CLKCPU_CLKCPU_CLK/CPU_CLK/REF_TICKREF_TICK由APB_CLK分頻產(chǎn)生,分頻值由APB_CLK源和CPU_CLK源共同決定。用戶通過配置合理的分頻系數(shù),可以保證REF_TICK在APB_CLK切換時(shí)維持頻率不變。寄存器配置如表13所示:表13:REF_TICKCPU_CLK&APB_CLKLEDC_SCLKLEDC_SCLK時(shí)鐘源由寄存器LEDC_APB_CLK_SEL決定,如表1414:LEDC_SCLKLEDC_APB_CLK_SELLEDC_SCLK10APLL_SCLKAPLL_CLK來自內(nèi)部PLL_CLK,其輸出頻率通過使用APLLPLL_D2_CLKPLL_D2_CLK是PLL_CLK時(shí)鐘源注意事項(xiàng)大多數(shù)外設(shè)一般在選擇PLL_CLK時(shí)鐘源的情況下工作。若頻率發(fā)生變化,外設(shè)需要通過修改配置才能以同樣的頻率工作。接入REF_TICK的外設(shè)允許在切換時(shí)鐘源的情況下,不修改外設(shè)配置即可工作。參考表LED模塊能將RTC8M_CLK作為時(shí)鐘源使用,即在APB_CLK關(guān)閉的時(shí)候,LED也可工作。換而言,但是LED仍然可以通過RTC8M_CLK來正常工作。Wi-FiBTWi-Fi和BT必須在APB_CLK時(shí)鐘源選擇PLL_CLK下才能工作。只有當(dāng)Wi-Fi和BT同時(shí)進(jìn)入低功耗模式時(shí),才能暫時(shí)關(guān)閉PLL_CLK。LOW_POWER_CLK允許選擇RTC_CLK、SLOW_CLK、RTC8M_CLK或XTL_CLK,用于Wi-Fi和BT的低功耗RTCSLOW_CLK和FAST_CLK的時(shí)鐘源為低頻時(shí)鐘。RTC模塊能夠在大多數(shù)時(shí)鐘源關(guān)閉的狀態(tài)下工作。SLOW_CLK允許選擇RTC_CLKXTL32K_CL或RTC8M_D256_CLKPowerManagement模塊。FAST_CLK允許選擇XTL_CLK的分頻時(shí)鐘或RTC8M_CLK,用于驅(qū)動(dòng)On-chipSensor模塊。IO_MUXGPIOIO_MUX和GPIO交換矩概ESP32有40個(gè)物理GPIOpad,有部分GPIOpad不可用或者沒有對(duì)應(yīng)的封裝上的管腳。每個(gè)pad都和傳輸至GPIOpad。這些模塊共同組成了的IO控制。pad(控制信號(hào):FUNC_SEL、IE、OE、WPU、WDU等)256(控制信號(hào):SIG_IN_SEL、SIG_OUT_SEL、IE、OE等)和快速外設(shè)輸入/輸出信號(hào)(控制信號(hào):IE、OE等)以及RTCIO_MUX之間的信號(hào)選擇和連接關(guān)系。圖6:IO_MUX、RTCIO_MUX和GPIO交換矩陣結(jié)構(gòu)IO_MUX中每個(gè)GPIOpad有一組寄存器。每個(gè)pad可以配置成GPIO功能(連接GPIO交換矩陣)或者直連功能(旁路GPIO交換矩陣,快速信號(hào)如以太網(wǎng)、SDIO、SPI、JTAG、UART等會(huì)旁路GPIO交換矩陣以實(shí)現(xiàn)更好的高頻數(shù)字特性。所以高速信號(hào)會(huì)直接通過IO_MUX)4.10GPIOpadIO_MUXGPIO交換矩陣是外設(shè)輸入和輸出信號(hào)和pad?輸入方向:256個(gè)外設(shè)輸入信號(hào)都可以選擇任意一個(gè)GPIOpad的輸入信號(hào)?輸出方向:每個(gè)GPIOpad的輸出信號(hào)可來自256個(gè)外設(shè)輸出信號(hào)中的任意一個(gè)。章節(jié)4.9列出了GPIO交換矩陣的外設(shè)信號(hào)。RTCIO_MUXGPIOpadGPIOpad具有這些功能。章節(jié)4.11列出了RTCIO_MUX功能。通過GPIO交換矩陣的外設(shè)概GPIOGPIO40GPIO(0-39)中獲取外設(shè)輸入信號(hào)的索引號(hào)(0-255。輸入信號(hào)通過IO_MUX從GPIOpad中。IO_MUX必須設(shè)置相應(yīng)pad為GPIO功能。這樣GPIOpad的輸入信號(hào)就可進(jìn)入GPIO交換矩陣然后通過GPIO交換矩陣進(jìn)入選擇的外設(shè)輸入。功能描述InInGPIOInIO0123GPIO1PeripheralSignalXGPIOX01I/OPadGPIOx_FUN_IE=(0x30)(0x38)Constant0Constant1圖7:通過IO_MUX、GPIOGPIOYGPIO_FUNCy_IN_SEL_CFG設(shè)置GPIO_FUNCx_IN_SEL字段為要的GPIOpadX的值GPIO交換矩陣中配置GPIOpadXGPIO_FUNCx_OUT_SEL_CFGGPIO_FUNCx_OEN_SEL1,并且將GPIO_ENABLE_DATA[x]寄存器置為0。否則,不需要關(guān)閉輸出。GPIOpadXIO_MUX置位xx_FUN_IE使能輸設(shè)置xx_FUN_WPU和xx_FUN_WPD同一個(gè)輸入pad上可以同時(shí)綁定多個(gè)內(nèi)部input_signals置位GPIO_FUNCx_IN_INV_SEL可以把輸入的信號(hào)取反。無需將輸入信號(hào)綁定到一 也可以使外設(shè)恒低或恒高電平的輸入值。實(shí)現(xiàn)方式為選擇特定當(dāng)GPIO_FUNCx_IN_SEL是0x30時(shí),input_signal_x始終為0當(dāng)GPIO_FUNCx_IN_SEL是0x38時(shí),input_signal_x始終為1簡(jiǎn)單GPIOGPIO_IN_DATA寄存器著每一個(gè)GPIOpad的輸入值xx_FUN_IE寄存器,如章節(jié)4.2.2通過GPIO交換矩陣的外設(shè)概GPIOGPIO交換矩陣將輸出索引號(hào)(0-255)的外設(shè)信號(hào)輸出到前34個(gè)(0-33)GPIO。GPIOpad34-39不能用于輸出信號(hào)。GPIO交換矩陣,然后到達(dá)IO_MUX。IO_MUX必須設(shè)置相應(yīng)padGPIO功能。這樣輸出GPIO信號(hào)就能連接到相應(yīng)pad。功能描述8256GPIO交換矩陣到達(dá)IO_MUX然后連接到某個(gè)padInGPIOInGPIO0123GPIO_OUT_DATAbitGPIOx_FUN_OE=I/OPadGPIOXInIO圖8:通過GPIOYGPIOpadXGPIOGPIOXGPIO_FUNCx_OUT_SEL_CFGGPIO_ENABLE_DATA[x寄存GPIO_FUNCx_OEN_SELGPIO_ENABLE_DATA[x],此設(shè)置為強(qiáng)制使能輸出模式;或者將GPIO_FUNCx_OEN_SEL清零,此時(shí)輸出使能信號(hào)由內(nèi)部邏輯功能決定??梢酝ㄟ^設(shè)置GPIO_PINx寄存器中的GPIO_PINx_PAD_DRIVERGPIOpadXI/OMux設(shè)置xx_FUN_DRVxx_FUNC_WPUxx_FUNC_WPD寄存器上拉/下拉pad某一個(gè)外設(shè)的輸出信號(hào)可以同時(shí)從多個(gè)pad個(gè)置位GPIO_FUNCx_OUT_INV_SEL簡(jiǎn)單GPIOGPIOGPIOGPIO_OUT_DATAGPIOpadGPIOGPIOGPIO_FUNCx_OUT_SEL(0x100IO_MUX的直接I/O功概信號(hào)會(huì)直接通過IO_MUX輸入和輸出。功能描述為實(shí)現(xiàn)外設(shè)I/O旁路GPIO交換矩陣必須配置兩個(gè)寄存器:GPIOpadIO_MUX必須設(shè)置為相應(yīng)的pad4.10pad對(duì)于輸入信號(hào),必須置位SIG_IN_SELRTCIO_MUX的低功耗和模擬I/O概GPIORTC_MUXI/ORTC當(dāng)這些管腳被配置為RTCGPIO管腳,作為輸出管腳時(shí)仍然能夠在處于Deep-sleep睡眠模式下保持輸出電平值或者作為輸入管腳使用時(shí)可以將從Deep-sleep中喚醒。4.11RTC_MUX功能描述每個(gè)pad的模擬和RTC功能是由RTC_GPIO_PINx寄存器中的RTC_IO_TOUCH_PADx_TO_GPIO位控制的。此位默認(rèn)置為1,通過IO_MUX子系統(tǒng)輸入輸出信號(hào),如前文所述。如果清零RTC_IO_TOUCH_PADx_TO_GPIO位,則輸入輸出信號(hào)會(huì)經(jīng)過RTC子系RTC_GPIO_PINx寄存器用于數(shù)字I/O,pad的模擬功能也可以實(shí)現(xiàn)。章節(jié)4.11列出了RTC管腳表4.11列出了GPIOpad與相應(yīng)的RTC管腳和模擬功能的映射關(guān)系。請(qǐng)注意RTC_IO_PINxRTCGPIOGPIOpadLight-sleep模式管腳功GPIOxx_SLP_SEL位置為1,處于Light-sleep模式下將由另一組不同的寄存器控制pad表15:IO_MUXLight-sleepIO_MUXGPIOxx_SLP_SELLight-sleepGPIOxx_SLP_SELOutputDrivePullupPulldownOutput(FromGPIOMatrix_OENPadHold每個(gè)IOpad(包括RTCpad)都有單獨(dú)的hold功能,由RTC寄存器控制。pad的hold功能被置上后,pad在hold那一刻的狀態(tài)被強(qiáng)制保持,無論內(nèi)部信號(hào)如何變化,修改IO_MUXGPIO配置,都不會(huì)改變padDeep-sleeppad的狀態(tài)不被改變,就需要提前把hold置上。I/OPadIOpad9圖9:ESP32I/OPad供電padRTCpadIOpad使用,詳見章節(jié)4.11。粉紅色和綠色的pad只有數(shù)字IO綠色的pad可以通過VDD_SDIO由外部供電也可由內(nèi)部供電(詳見下文VDD_SDIOVDD_SDIO可以拉電流和灌電流,因此VDD_SDIO電源域可由外部或內(nèi)部供電。若使用外部供電,必須使用和VDD_SDIO供電。VDD_SDIO電壓可以為1.8V或3.3V(與VRTC相同MTDIpad在復(fù)位時(shí)的狀態(tài)高電平時(shí)為1.8V3.3V。Efusebit置上后可強(qiáng)制決定VDD_SDIO的默認(rèn)電壓。此外,軟件啟動(dòng)后軟件還可以配置寄存器來強(qiáng)制改變VDD_SDIO的電壓。外設(shè)信號(hào)列表16:GPIOInputOutput01InputOutput23456789InputOutputInputOutputInputOutputInputOutputDirectI/OinIO_MUXYESIO_MUX直接連接padGPIO交換矩陣,則必須將相應(yīng)的SIG_IN_SEL寄存器清零。IO_MUXPad17列出了每個(gè)I/OpadIO_MUX17:IO_MUXPadPadFunctionFunctionFunctionFunctionFunctionFunction0--3R1--3-2-2R3---3-42R5-3-6-3-7-3-8-3-9-3--3--3-2R1R1R3R-1-PadFunctionFunctionFunctionFunctionFunctionFunction-1---1--1-----1---1--1---1----0R---0R---1R----0R----0R----0R,----0R,----0R,----0R,----0R,----0R,“Reset”一欄是每個(gè)pad復(fù)位后的默認(rèn)配0IE=0(輸入關(guān)閉1IE=1(輸入使能2-IE=1,WPD=1(輸入使能,下拉電阻3-IE=1,WPU=1(輸入使能,上拉電阻說RPad通過RTC_MUX具有RTCIPadGPIO參考ESP32管腳獲取管腳功能的完整表格RTC_MUX管腳18RTC管腳和對(duì)應(yīng)GPIOpad表18:RTC_MUX管腳RTCGPIOGPIOPadog 0-1-2-3-4--5--6-RTCGPIOGPIOPadog 7-894-0-2------寄存器名描地讀/只只讀/只只只GPIO0-31outputbitclear只讀/只只只GPIO32-39outputbitclear只GPIO0-31outputenable讀/GPIO0-31outputenable只GPIO0-31outputenable只GPIO0-31outputenable讀/GPIO0-31outputenable只GPIO0-31outputenable只GPIO0-31outputenablebitset只GPIO0-31outputenablebitclear只GPIO32-39outputenable讀/GPIO32-39outputenable只GPIO32-39outputenable只GPIO32-39outputenablebitset只GPIO32-39outputenablebitclear只Bootstrappinvalue只名描地只只只GPIO0-31interruptstatus讀/GPIO0-31interruptstatus只GPIO0-31interruptstatus只GPIO0-31interruptstatus讀/GPIO0-31interruptstatus只GPIO0-31interruptstatus只GPIO0-31interruptstatusbitset只GPIO0-31interruptstatusbitclear只GPIO32-39interruptstatus讀/GPIO32-39interruptstatus只GPIO32-39interruptstatus只GPIO32-39interruptstatusbitset只GPIO32-39interruptstatusbitclear只GPIO0-31APP_CPUinterrupt只GPIO0-31APP_CPUinterrupt只只只GPIO0-31PRO_CPUinterrupt只GPIO0-31PRO_CPUinterrupt只只只GPIO32-39APP_CPUinterrupt只GPIO32-39APP_CPUnon-maskable只GPIO32-39PRO_CPUinterrupt只GPIO32-39PRO_CPUnon-maskable只ConfigurationforGPIOpin讀/ConfigurationforGPIOpin讀/ConfigurationforGPIOpin讀/ConfigurationforGPIOpin讀/ConfigurationforGPIOpin讀/Peripheralfunction0inputselection讀/Peripheralfunction1inputselection讀/名描地Peripheralfunction254inputselection讀/Peripheralfunction255inputselection讀/PeripheraloutputselectionforGPIO讀/PeripheraloutputselectionforGPIO讀/PeripheraloutputselectionforGPIO讀/PeripheraloutputselectionforGPIO讀/名描地Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/ConfigurationregisterforpadConfigurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/名描地Configurationregisterforpad讀/Configurationregisterforpad讀/Configurationregisterforpad讀/名描地GPIORTCGPIOoutput讀/RTCGPIOoutput只RTCGPIOoutput只RTCGPIOoutputbitset只只讀/只只只RTCGPIOoutputenablebitclear只RTCGPIOinterruptstatus讀/ 只 只RTCGPIOinterruptstatusbitset只RTCGPIOinterruptstatusbitclear只RTCGPIOinput只RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCconfigurationforpin讀/RTCGPIOhold讀/名描地GPIORTCHallsensor讀/Sensorpadsconfiguration讀/ADCconfiguration讀/DAC1configuration讀/DAC2configuration讀/32KHzcrystalpadsconfiguration讀/Touchsensorconfiguration讀/Externalwakeupconfiguration讀/Crystalpowerdownenablegpio讀/RTCI2Cpad讀/寄存Register4.1:GPIO_OUT_REG0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx GPIO0-31(讀/寫Register4.2:GPIO_OUT_W1TS_REG0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
GPIO_OUT_W1TS_REGGPIO0-31輸出置位寄存器。每一位置1,則GPIO_OUT_DATA中的相應(yīng)位也會(huì)置1(只讀)0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGPIO_OUT_W1TC_REGGPIO0-31輸出清零寄存器。每一位置1,則GPIO_OUT_DATA中的相應(yīng)Register4.4:GPIO_OUT1_REG8870000000000000000000000000xxxxxxxx GPIO32-39(只讀Register4.5:GPIO_OUT1_W1TS_REG8870000000000000000000000000xxxxxxxxGPIO_OUT_DATAGPIO32-391GPIO_OUT1_DATA中的相應(yīng)位也會(huì)置1(只讀)Register4.6:GPIO_OUT1_W1TC_REG8870000000000000000000000000xxxxxxxxGPIO_OUT_DATAGPIO32-391GPIO_OUT1_DATA中的相應(yīng)位0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx GPIO0-31(讀/寫0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGPIO_ENABLE_W1TS_REGGPIO0-311GPIO_ENABLE中的相應(yīng)位也置1(只讀)Register4.9:GPIO_ENABLE_W1TC_REG0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
GPIO0-31輸出使能清零寄存器。每一位置1,則GPIO_ENABLE中Register4.10:GPIO_ENABLE1_REG8870000000000000000000000000xxxxxxxx GPIO32-39(讀/寫Register4.11:GPIO_ENABLE1_W1TS_REG8870000000000000000000000000xxxxxxxxGPIO_ENABLE_DATAGPIO32-39輸出使能置位寄存器。每一位置1,則GPIO_ENABLE1中的相應(yīng)位也置1(只讀)Register4.12:GPIO_ENABLE1_W1TC_REG8870000000000000000000000000xxxxxxxxGPIO_ENABLE_DATAGPIO32-39輸出使能清零寄存器。每一位置1,則GPIO_ENABLE1中的相Register4.13:GPIO_STRAP_REG00000000000xxxxxxxxxxxxxxxx GPIOstrap結(jié)果:boot_sel_chip[5:0]:MTDI,GPIO0,GPIO2,GPIO4,MTDO,0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGPIO_IN_REGGPIO0-31輸入值。每個(gè)bitpad1,片外引腳為低電平,此bit0(只讀Register4.15:GPIO_IN1_REGGPIO_IN_DATA_NEXTGPIO32-39輸入值。每個(gè)bit代表pad(只讀Register4.16:GPIO_STATUS_REG
87870000000000000000000000000xxxxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGPIO_STATUS_REGGPIO0-31中斷狀態(tài)寄存器。每個(gè)bit都可以作為兩個(gè)CPU的兩種中斷源,同GPIO_PINn_REG0-4bitGPIO_STATUS_INTERRUPT1(讀/寫Register4.17:GPIO_STATUS_W1TS_REG0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
中斷狀態(tài)置位寄存器。每一位 1,0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 中斷狀態(tài)清除寄存器。每一位 1, 中的相(只讀Register4.19:GPIO_STATUS1_REG8870000000000000000000000000xxxxxxxx GPIO32-39(讀/寫Register4.20:GPIO_STATUS1_W1TS_REG8870000000000000000000000000xxxxxxxx 中斷狀態(tài)置位寄存器。每一位 1,Register4.21:GPIO_STATUS1_W1TC_REG8870000000000000000000000000xxxxxxxx 中斷狀態(tài)清除寄存器。每一位 1, 中的相應(yīng)位會(huì)(只讀0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx GPIO0-31APPCPU(只讀0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx GPIO0-31APPCPU非中斷狀態(tài)寄存器(只讀0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx GPIO0-31PROCPU(只讀0xxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx GPIO0-31PROCPU非中斷狀態(tài)寄存器(只讀Register4.26:GPIO_ACPU_INT1_REG87000000000870000000000000000000000000xxxxxxxxRegister4.27:GPIO_ACPU_NMI_INT1_REG
8700000000000000870000000000000000000000000xxxxxxxxRegister4.28:GPIO_PCPU_INT1_REG
GPIO32-39PROCPU(只讀Register4.29:GPIO_PCPU_NMI_INT1_REG870000000000000000000000000xxxxxxxx GPIO32-39PROCPU非中斷狀態(tài)寄存器(只讀
8870000000000000000000000000xxxxxxxxRegister4.30:GPIO_PINn_REG(n:0-39)GPIO_PINn_INT_ENAbit0APPCPU中斷使能;(bit1:APPCPU非中斷使能bit3:PROCPUbit4:PROCPU非中斷使能 GPIO喚醒使能。只能將CPU從Light-sleep(讀/寫GPIO_PINn_INT_TYPE0:GPIO中斷類型;(1:上2:下3:任4:低5:高 Register4.31:GPIO_FUNCm_IN_SEL_CFG_REG(m:0-255)887650000000000000000000000000xxxxxxxxGPIO_SIGm_IN_SEL旁路GPIO交換矩陣。0:通過GPIO交換矩陣;1:直接通過IO_MUX連接信 反轉(zhuǎn)輸入值。1:反轉(zhuǎn);0:(讀/寫GPIO_FUNCm_IN_SEL外設(shè)輸入m選擇控制。此位選擇1個(gè)GPIO交換矩陣輸入管腳中與信號(hào)連接,或者選擇0x38與恒高電平輸入信號(hào)連接或者選擇0x30與恒低電平輸入信號(hào)連接。(讀/Register _OUT_SEL_CFG_REG(n:0-39)98000000000000000000000xxxxxxxxxxxx 1:反轉(zhuǎn)輸出使能信號(hào);0:(讀/寫_OEN_SEL1:GPIO_ENABLE_REGbitn中選取輸出使能信號(hào)。0:使用從外設(shè) 1:反轉(zhuǎn)輸出值;0:(讀/寫_OUT_SELGPIO輸出n的選擇控制。值為s(0<=s<256)連接外設(shè)輸出s與GPIO輸出n。值為256選擇GPIO_DATA_REG和GPIO_ENABLE_REG的bitn做為輸出值和輸出使Register4.33:IO_MUX_x_REG(x:GPIO0-GPIO39)887 43210 00000000IO_x_MCU_SELIO_MUX功能。0:選擇功能1;12(讀/寫 IO_x_FUNC_IEpad的輸入使能。1:輸入使能;0:輸入關(guān)(讀/寫)IO_x_FUNC_WPUpad的上拉使能。1:內(nèi)部上拉使能;0(讀/寫)IO_x_FUNC_WPDpad的下拉使能。1:內(nèi)部下拉使能;0(讀/寫)IO_x_MCU_DRV睡眠模式下選擇pad的驅(qū)動(dòng)強(qiáng)度,值越大,強(qiáng)度越(讀/寫)IO_x_MCU_IE睡眠模式下pad的輸入使能。1:輸入使能;0(讀/寫)IO_x_MCU_WPU睡眠模式下pad的上拉使能。1:內(nèi)部上拉使能;0(讀/寫)IO_x_MCU_WPD睡眠模式下pad的下拉使能。1:內(nèi)部下拉使能;0(讀/寫)IO_x_SLP_SELpad的睡眠模式選擇。置1將使能睡眠模式(讀/寫)IO_x_MCU_OEpad的輸出使能。1:輸出使能;2:(讀/寫Register4.34:RTCIO_RTC_GPIO_OUT_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_OUT_DATAGPIO0-17輸出寄存器。Bit14GPIO[0],bit15GPIO[1],以此Register4.35:RTCIO_RTC_GPIO_OUT_W1TS_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_OUT_DATA_W1TSGPIO0-17 輸出設(shè)置寄存器。每一位置 1,則 CIO_RTC_GPIO_OUT中的相應(yīng)位也會(huì)置1(只寫)Register4.36:RTCIO_RTC_GPIO_OUT_W1TC_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_OUT_DATA_W1TCGPIO0-17 輸出清除寄存器。每一位置 1,則 CIO_RTC_GPIO_OUT中的相應(yīng)位會(huì)清零(只寫)Register4.37:RTCIO_RTC_GPIO_ENABLE_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_ENABLEGPIO0-17輸出使能。Bit14GPIO[0],bit15GPIO[1],以此類推。1代表此GPIO(讀/寫)Register4.38:RTCIO_RTC_GPIO_ENABLE_W1TS_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_ENABLE_W1TSGPIO0-17輸出使能設(shè)置寄存器。每一位置1,則RT-CIO_RTC_GPIO_ENABLE中的相應(yīng)位也會(huì)置1(只寫)Register4.39:RTCIO_RTC_GPIO_ENABLE_W1TC_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_ENABLE_W1TCGPIO0-17輸出使能清除寄存器。每一位置1,則RT-CIO_RTC_GPIO_ENABLE(只寫)Register4.40:RTCIO_RTC_GPIO_STATUS_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_STATUS_INTGPIO0-17中斷狀態(tài)。Bit14是GPIO[0],bit15是GPIO[1]類推。此寄存器應(yīng)同時(shí)和RTCIO_RTC_GPIO_PINn_REG中斷類型配合使用,1代表有相應(yīng)中斷,0代表沒有中(讀/寫Register4.41:RTCIO_RTC_GPIO_STATUS_W1TS_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_STATUS_INT_W1TSGPIO0-17中斷設(shè)置寄存器。每一位置1,則RT-CIO_RTC_GPIO_STATUS_INT中的相應(yīng)位也會(huì)置1(只寫)Register4.42:RTCIO_RTC_GPIO_STATUS_W1TC_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_STATUS_INT_W1TCGPIO0-17中斷清除寄存器。每一位置1,則RT-CIO_RTC_GPIO_STATUS_INT(只寫)Register4.43:RTCIO_RTC_GPIO_IN_REGxxxxxxxxxxxxxxxxxx00000000000000RTCIO_RTC_GPIO_IN_NEXTGPIO0-17輸入值。Bit14是GPIO[0],bit15是GPIO[1],以此類推。bitpad的片外輸入值,比如片外引腳為高電平,此bit值應(yīng)為1,片外引腳為低電平,此bit值應(yīng)為0(只讀)Register4.44:RTCIO_RTC_GPIO_PINn_REG(n:0-17)9763232000000000000000000000xxxx0000x00 GPIO喚醒使能。只能將處于Light-sleep的(讀/寫 GPIO(讀/寫1:上2:下3:任4:低5:高 Pad驅(qū)動(dòng)器選擇。0:正常輸出;1:(讀/寫00Register4.45:RTCIO_DIG_PAD_HOLD_REG00RTCIO_DIG_PAD_HOLD_REG選擇哪一個(gè)數(shù)字pad置于hold0允許正常操作;1:置于holdRegister4.46:RTCIO_HALL_SENS_REG00000000000000000000000000000000 給霍爾傳感器上電,連接VP和VN(讀/寫 Register4.47:RTCIO_SENSOR_PADS_REG313130292827262524 22217 44 00000 0 00 00 000 置1保持傳感器n的輸出值。0:(讀/寫 1:連接傳感器n與RTC模塊;0:連接傳感器nIO_MUX(讀/寫RTCIO_SENSOR_SENSEn_FUN_SEL選擇RTCIO_MUX0Function0;1:選擇Function pad的睡眠模式選擇信號(hào)。pad進(jìn)入睡眠模式時(shí)應(yīng)將此bit1(讀/寫 睡眠模式下pad的輸入使能。1:使能;0:(讀/寫 pad的輸入使能。1:使能;0:(讀/寫Register4.48:RTCIO_ADC_PAD_REG 000000000 置1將保留pad的輸出值,0:(讀/寫_MUX_SEL1連接pad與數(shù)字IO_MUX(讀/寫)連接padRTC_FUN_SELRTC功能。0Function0;1:Function1(讀/寫_SLP_SELpad的睡眠模式選擇信號(hào)。置1pad(讀/寫_SLP_IEpad的輸入使能。1:使能;0:(讀/寫_FUN_IEpad的輸入使能。1:使能;0:(讀/寫RegisterRegister4.49:RTCIO_PAD_DAC1_REGRTCIO_PAD_PDAC1_DRV選擇pad的驅(qū)動(dòng)強(qiáng)度(讀/寫)RTCIO_PAD_PDAC1_HOLD置1將保留pad的輸出值,0:正常操作(讀/寫)RTCIO_PAD_PDAC1_RDE1:下拉使能;0:下拉關(guān)閉(讀/寫)RTCIO_PAD_PDAC1_RUE1:上拉使能;0:上拉關(guān)閉(讀/寫) PADDAC1輸出值(讀/寫) 給DAC1上電。一般而言,DAC上電時(shí),PDAC1應(yīng)該置為三態(tài),即IE=0、OE=0、RDE=0、RUE=0(讀/寫)RTCIO_PAD_PDAC1_MUX_SEL1:連接pad與數(shù)字IO_MUX(讀/寫)4RTC pad(讀/寫)RTCIO_PAD_PDAC1_SLP_SELpad的睡眠模式選擇信號(hào)。置1則pad(讀/寫)RTCIO_PAD_PDAC1_SLP_IE睡眠模式下pad的輸入使能。1:使能;0:(讀/寫)RTCIO_PAD_PDAC1_SLP_OEpad的輸出使能。1:使能;0:(讀/寫)RTCIO_PAD_PDAC1_FUN_IEpad的輸入使能。1:使能;0:(讀/寫) 給DAC1上電。一般而言,DAC上電時(shí),PDAC1應(yīng)該置為三態(tài),即IE=0、OE=0、RDE=0、RUE=0(讀/寫)RegisterRegister4.50:RTCIO_PAD_DAC2_REGRTCIO_PAD_PDAC2_DRV選擇pad的驅(qū)動(dòng)強(qiáng)度(讀/寫)RTCIO_PAD_PDAC2_HOLD置1將保留pad的輸出值,0:正常操作(讀/寫)RTCIO_PAD_PDAC2_RDE1:下拉使能;0:下拉關(guān)閉(讀/寫)RTCIO_PAD_PDAC2_RUE1:上拉使能;0:上拉關(guān)閉(讀/寫) PADDAC2輸出值(讀/寫) 給DAC2上電。一般而言,DAC上電時(shí),PDAC2應(yīng)該置為三態(tài),即IE=0,OE=0,RDE=0,RUE=0(讀/寫)RTCIO_PAD_PDAC2_MUX_SEL1:連接pad與數(shù)字IO_MUX(讀/寫)4RTCRTCIO_PAD_PDAC2_FUN_SEL選擇pad的RTC功能,0選擇Function0;1:選擇Function1(/寫RTCIO_PAD_PDAC2_SLP_SELpad的睡眠模式選擇信號(hào)。置1則pad(讀/寫)RTCIO_PAD_PDAC2_SLP_IE睡眠模式下pad的輸入使能。1:使能;0:(讀/寫)RTCIO_PAD_PDAC2_SLP_OEpad的輸出使能。1:使能;0:(讀/寫)RTCIO_PAD_PDAC2_FUN_IEpad的輸入使能。1:使能;0:(讀/寫) 給DAC2上電。一般而言,DAC上電時(shí),PDAC2應(yīng)該置為三態(tài),即IE=0OE=0RDE=0RUE=0(讀/寫)RegisterRegister4.51:RTCIO_XTAL_32K_PAD_REG 30 30292827 25242322 5 3 1 00 000 100 0 0000 0 0RTCIO_XTAL_X32N_DRV選擇pad(讀/寫)RTCIO_XTAL_X32N_HOLD1pad的輸出值,0:(讀/寫)RTCIO_XTAL_X32N_RDE1:下拉使能;0:(讀/寫)RTCIO_XTAL_X32N_RUE1:上拉使能;0:(讀/寫)RTCIO_XTAL_X32P_DRV選擇pad(讀/寫)RTCIO_XTAL_X32P_HOLD1pad的輸出值,0:(讀/寫)RTCIO_XTAL_X32P_RDE1:下拉使能;0:(讀/寫)RTCIO_XTAL_X32P_RUE1:上拉使能;0:(讀/寫)RTCIO_XTAL_DAC_XTAL_32K32KXTAL偏置電流DAC(讀/寫)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥企財(cái)務(wù)工作總結(jié)
- 現(xiàn)代禮儀培訓(xùn)課件
- 技術(shù)培訓(xùn)課件
- 立頓營(yíng)銷培訓(xùn)課件
- 孕期心理衛(wèi)生護(hù)理
- 主動(dòng)脈夾層超聲診斷與應(yīng)用
- 雛雞飼養(yǎng)知識(shí)培訓(xùn)課件
- 職工素養(yǎng)提升培訓(xùn)
- 腫瘤內(nèi)科化療方案專題
- 幼兒園愛牙日主題教育
- 國(guó)有企業(yè)合規(guī)管理
- 慈利金投公司招聘筆試題目
- 醫(yī)療器械市場(chǎng)調(diào)整與價(jià)格波動(dòng)對(duì)策
- 髖關(guān)節(jié)假體松動(dòng)查房
- 【基于單片機(jī)的超速報(bào)警器的電路設(shè)計(jì)6100字(論文)】
- 鼠疫介紹演示培訓(xùn)課件
- 固體地球物理學(xué)概論
- 浮針療法課件
- 園林綠化工程施工技術(shù)方案及技術(shù)措施
- “安全生產(chǎn)課件:如何預(yù)防工傷事故”
- 14天攻克KET詞匯表
評(píng)論
0/150
提交評(píng)論