|
|
1. 簡(jiǎn)介
HC32F002 系列是一款基礎(chǔ)型通用的 32 位 MCU,,具有寬電壓工作范圍,。芯片集成 10 位 1Msps 高速 SAR ADC,、高性能 PWM 定時(shí)器,、低功耗 UART,、SPI,、I2C 等豐富的外設(shè),具有高整合度,、高可靠性,、低功耗的特點(diǎn)。HC32F002 系列采用 Cortex-M0+內(nèi)核,,主頻**到 48MHz,,配合成熟的 Keil 和 IAR調(diào)試開發(fā)軟件,支持使用 C 語(yǔ)言及匯編語(yǔ)言開發(fā),。
-典型應(yīng)用
? 電機(jī)控制,、電池管理
? 智能家居、**設(shè)備
? 安防報(bào)警,、智能交通
? 傳感器模塊,、無線模塊、貨架標(biāo)簽
2.系統(tǒng)結(jié)構(gòu)
2.1 概述
本產(chǎn)品系統(tǒng)由以下部分組成:
? 1 個(gè) AHB 總線 Master:
? Cortex-M0+
? 4 個(gè) AHB 總線 Slaves:
? FLASH 存儲(chǔ)器
? SRAM 存儲(chǔ)器
? AHB0,,AHB to APB Bridge 包含所有 APB 接口外設(shè)
? AHB1,,包含所有 AHB 接口外設(shè)
整個(gè)系統(tǒng)總線結(jié)構(gòu)采用多層次 AHB-lite 總線互連實(shí)現(xiàn)。如下圖所示:
圖 2-1 系統(tǒng)架構(gòu)示意圖
2.2 存儲(chǔ)器和模塊地址分配
表 2-1 地址劃分表
3.工作模式
3.1 工作模式概述
本產(chǎn)品在電源管理模塊的控制下可實(shí)現(xiàn)三種工作模式,。各工作模式下可工作的功能模塊及功耗各不相
同,。
本產(chǎn)品的工作模式如下所示:
? 運(yùn)行模式(Active Mode): CPU 運(yùn)行,片內(nèi)外設(shè)運(yùn)行,。
? 休眠模式(Sleep Mode): CPU 停止,,片內(nèi)外設(shè)運(yùn)行。
? 深度休眠模式(Deep Sleep Mode): CPU 停止,,低功耗片內(nèi)外設(shè)運(yùn)行,。
3.2 工作模式切換
本產(chǎn)品工作時(shí)可在三種工作模式之間自由切換。在運(yùn)行模式下執(zhí)行 WFI 指令,,可使本產(chǎn)品進(jìn)入休眠模
式或深度休眼模式,。從休眠模式或深度休眼模式通過中斷喚醒,回到運(yùn)行模式,。
圖 3-1 工作模式狀態(tài)轉(zhuǎn)換圖
在各種工作模式下,,CPU 可響應(yīng)的中斷見下方表格,。
在各種工作模式下,可響應(yīng)的復(fù)位信號(hào)見下方下表,。
3.3 運(yùn)行模式(Active Mode)
在該工作模式 MCU 所有功能模塊均正常工作,功耗**,。
系統(tǒng)復(fù)位后或從中斷喚醒后,,MCU 均工作于運(yùn)行模式。
在運(yùn)行模式下可通過一定的措施降低運(yùn)行功耗:
? 為系統(tǒng)時(shí)鐘(SystemClk)選擇更低的頻率,,修改 SysCtrl.CR0.ClkSrc
? 降低系統(tǒng)的內(nèi)核時(shí)鐘(HCLK)的頻率,,修改 SysCtrl.CR0.HclkPrs
? 降低系統(tǒng)的片內(nèi)外設(shè)時(shí)鐘(PCLK)的頻率,修改 SysCtrl.CR0.PclkPrs
? 關(guān)閉未使用的片內(nèi)外設(shè)的時(shí)鐘,,修改 SysCtrl.PeriClkEnx
3.4 休眠模式(Sleep Mode)
在該工作模式下 CPU 停止運(yùn)行,,其它片內(nèi)外設(shè)均正常工作,功耗**運(yùn)行模式,。
在運(yùn)行模式下,,設(shè)置 SCB->SCR.SLEEPDEEP 為 0,執(zhí)行 WFI 指令即可使 MCU 工作于休眠模式,。當(dāng) MCU
響應(yīng)硬件中斷時(shí),,即可退出休眠模式回到運(yùn)行模式。
在休眠模式下可通過一定的措施降低運(yùn)行功耗:
? 為系統(tǒng)時(shí)鐘(SystemClk)選擇更低的頻率,,修改 SysCtrl.CR0.ClkSrc
? 降低系統(tǒng)的內(nèi)核時(shí)鐘(HCLK)的頻率,,修改 SysCtrl.CR0.HclkPrs
? 降低系統(tǒng)的片內(nèi)外設(shè)時(shí)鐘(PCLK)的頻率,修改 SysCtrl.CR0.PclkPrs
? 關(guān)閉未使用的片內(nèi)外設(shè)的時(shí)鐘,,修改 SysCtrl.PeriClkEnx
? 設(shè)置 SCB_SCR.SLEEPONEXIT 為 1,,使 MCU 執(zhí)行完成中斷服務(wù)程序后自動(dòng)進(jìn)入休眠模式。
3.5 深度休眠模式(Deep Sleep Mode)
在該工作模式下 CPU 停止運(yùn)行,,片內(nèi)高速時(shí)鐘 RCH 自動(dòng)關(guān)閉,。如果 HCLK 來源為片內(nèi)高速時(shí)鐘,則片
內(nèi)高速外設(shè)停止運(yùn)行,,僅片內(nèi)低功耗外設(shè)正常工作,;如果 HCLK 來源為片內(nèi)低速時(shí)鐘 RCL,則片內(nèi)外設(shè)
均正常工作,。該模式下功耗遠(yuǎn)**休眠模式下的功耗,。
若設(shè)置 SysCtrl.CR1.AutoSwitch 為 1,則 MCU 退出深度休眠模式時(shí)的系統(tǒng)時(shí)鐘的來源為 RCH,,以實(shí)現(xiàn)
快速喚醒,。
在運(yùn)行模式下,設(shè)置 SCB_SCR.SLEEPDEEP 為 1,,執(zhí)行 WFI 指令即可使 MCU 工作于深度休眠模式,。當(dāng)
MCU 響應(yīng)硬件中斷時(shí),,即可退出深度休眠模式回到運(yùn)行模式。
在休眠模式下可通過一定的措施降低運(yùn)行功耗:
? 選擇高速時(shí)鐘作為系統(tǒng)時(shí)鐘(SystemClk),,修改 SysCtrl.CR0.ClkSrc
? 關(guān)閉未使用的片內(nèi)低功耗外設(shè)的時(shí)鐘,,修改 SysCtrl.PeriClkEnx
? 設(shè)置 SCB_SCR.SLEEPONEXIT 為 1,使 MCU 執(zhí)行完成中斷服務(wù)程序后自動(dòng)進(jìn)入休眠模式,。
3.6 功能模塊工作狀態(tài)
在三種工作模式下功能模塊的工作狀態(tài)對(duì)比如下表所示:
3.7 寄存器
3.7.1 系統(tǒng)控制寄存器(SCB_SCR)
地址:0xE000ED10
復(fù)位值:0x0000 0000
|