2.1 STM32F103xx增強(qiáng)型LQFP48引腳分布
2.2 STM32F103xx概述
2.2.1 ARM?的Cortex?-M3核心并內(nèi)嵌閃存和SRAM
ARM的Cortex?-M3處理器是最新一代的嵌入式ARM處理器,它為實(shí)現(xiàn)MCU的需要提供了低成本的平臺(tái)、縮減的引腳數(shù)目、降低的系統(tǒng)功耗,同時(shí)提供卓越的計(jì)算性能和先進(jìn)的中斷系統(tǒng)響應(yīng)。
ARM的Cortex?-M3是32位的RISC處理器,提供額外的代碼效率,在通常8和16位系統(tǒng)的存儲(chǔ)空間上發(fā)揮了ARM內(nèi)核的高性能。
2.2.2 內(nèi)置閃存存儲(chǔ)器
64K或128K字節(jié)的內(nèi)置閃存存儲(chǔ)器,用于存放程序和數(shù)據(jù)。小R使用的開(kāi)發(fā)板內(nèi)置閃存存儲(chǔ)器為64K。
2.2.3 CRC(循環(huán)冗余校驗(yàn))計(jì)算單元
CRC(循環(huán)冗余校驗(yàn))計(jì)算單元使用一個(gè)固定的多項(xiàng)式發(fā)生器,從一個(gè)32位的數(shù)據(jù)字產(chǎn)生一個(gè)CRC碼。在眾多的應(yīng)用中,基于CRC的技術(shù)被用于驗(yàn)證數(shù)據(jù)傳輸或存儲(chǔ)的一致性。
2.2.4 內(nèi)置SRAM
20K字節(jié)的內(nèi)置SRAM,CPU能以0等待周期訪問(wèn)(讀/寫)。
2.2.5 嵌套的向量式中斷控制器(NVIC)
STM32F103xx增強(qiáng)型產(chǎn)品內(nèi)置嵌套的向量式中斷控制器,能夠處理多達(dá)43個(gè)可屏蔽中斷通道(不包括16個(gè)Cortex?-M3的中斷線)和16個(gè)優(yōu)先級(jí)。
● 緊耦合的NVIC能夠達(dá)到低延遲的中斷響應(yīng)處理
● 中斷向量入口地址直接進(jìn)入內(nèi)核
● 緊耦合的NVIC接口
● 允許中斷的早期處理
● 處理晚到的較高優(yōu)先級(jí)中斷
● 支持中斷尾部鏈接功能
● 自動(dòng)保存處理器狀態(tài)
● 中斷返回時(shí)自動(dòng)恢復(fù),無(wú)需額外指令開(kāi)銷
該模塊以最小的中斷延遲提供靈活的中斷管理功能。
2.2.6 外部中斷/事件控制器(EXTI)
外部中斷/事件控制器包含19個(gè)邊沿檢測(cè)器,用于產(chǎn)生中斷/事件請(qǐng)求。每個(gè)中斷線都可以獨(dú)立地配置它的觸發(fā)事件(上升沿或下降沿或雙邊沿),并能夠單獨(dú)地被屏蔽;有一個(gè)掛起寄存器維持所有中斷請(qǐng)求的狀態(tài)。
EXTI可以檢測(cè)到脈沖寬度小于內(nèi)部APB2的時(shí)鐘周期。多達(dá)80個(gè)通用I/O口連接到16個(gè)外部中斷線。
2.2.7 時(shí)鐘和啟動(dòng)
系統(tǒng)時(shí)鐘的選擇是在啟動(dòng)時(shí)進(jìn)行,復(fù)位時(shí)內(nèi)部8MHz的RC振蕩器被選為默認(rèn)的CPU時(shí)鐘,隨后可以選擇外部的、具失效監(jiān)控的4~16MHz時(shí)鐘;當(dāng)檢測(cè)到外部時(shí)鐘失效時(shí),它將被隔離,系統(tǒng)將自動(dòng)地切換到內(nèi)部的RC振蕩器,如果使能了中斷,軟件可以接收到相應(yīng)的中斷。同樣,在需要時(shí)可以采取對(duì)PLL時(shí)鐘完全的中斷管理(如當(dāng)一個(gè)間接使用的外部振蕩器失效時(shí))。
多個(gè)預(yù)分頻器用于配置AHB的頻率、高速APB(APB2)和低APB(APB1)區(qū)域。AHB和高速APB的最高頻率是72MHz,低速APB的最高頻率為36MHz。
2.2.8 自舉模式
在啟動(dòng)時(shí),通過(guò)自舉引腳可以選擇三種自舉模式中的一種:
● 從程序閃存存儲(chǔ)器自舉
● 從系統(tǒng)存儲(chǔ)器自舉
● 從內(nèi)部SRAM自舉
自舉加載程序(Bootloader)存放于系統(tǒng)存儲(chǔ)器中,可以通過(guò)USART1對(duì)閃存重新編程。
2.2.9 供電方案
● VDD = 2.0~3.6V:VDD引腳為I/O引腳和內(nèi)部調(diào)壓器供電。
● VSSA,VDDA = 2.0~3.6V:為ADC、復(fù)位模塊、RC振蕩器和PLL的模擬部分提供供電。使用ADC時(shí),VDDA不得小于2.4V。VDDA和VSSA必須分別連接到VDD和VSS。
● VBAT = 1.8~3.6V:當(dāng)關(guān)閉VDD時(shí),(通過(guò)內(nèi)部電源切換器)為RTC、外部32kHz振蕩器和后備寄存器供電。
2.2.10 供電監(jiān)控器
本產(chǎn)品內(nèi)部集成了上電復(fù)位(POR)/掉電復(fù)位(PDR)電路,該電路始終處于工作狀態(tài),保證系統(tǒng)在供電超過(guò)2V時(shí)工作;當(dāng)VDD低于設(shè)定的閥值(VPOR/PDR)時(shí),置器件于復(fù)位狀態(tài),而不必使用外部復(fù)位電路。
器件中還有一個(gè)可編程電壓監(jiān)測(cè)器(PVD),它監(jiān)視VDD/VDDA供電并與閥值VPVD比較,當(dāng)VDD低于或高于閥值VPVD時(shí)產(chǎn)生中斷,中斷處理程序可以發(fā)出警告信息或?qū)?a target="_blank">微控制器轉(zhuǎn)入安全模式。PVD功能需要通過(guò)程序開(kāi)啟。
2.2.11 電壓調(diào)壓器
調(diào)壓器有三個(gè)操作模式:主模式(MR)、低功耗模式(LPR)和關(guān)斷模式
● 主模式(MR)用于正常的運(yùn)行操作
● 低功耗模式(LPR)用于CPU的停機(jī)模式
● 關(guān)斷模式用于CPU的待機(jī)模式:調(diào)壓器的輸出為高阻狀態(tài)。
2.2.12 低功耗模式
STM32F103xC、STM32F103xD和STM32F103xE增強(qiáng)型產(chǎn)品支持三種低功耗模式,可以在要求低功耗、短啟動(dòng)時(shí)間和多種喚醒事件之間達(dá)到最佳的平衡。
2.2.13 DMA
靈活的7路通用DMA可以管理存儲(chǔ)器到存儲(chǔ)器、設(shè)備到存儲(chǔ)器和存儲(chǔ)器到設(shè)備的數(shù)據(jù)傳輸;DMA控制器支持環(huán)形緩沖區(qū)的管理,避免了控制器傳輸?shù)竭_(dá)緩沖區(qū)結(jié)尾時(shí)所產(chǎn)生的中斷。
每個(gè)通道都有專門的硬件DMA請(qǐng)求邏輯,同時(shí)可以由軟件觸發(fā)每個(gè)通道;傳輸?shù)拈L(zhǎng)度、傳輸?shù)脑吹刂泛湍繕?biāo)地址都可以通過(guò)軟件單獨(dú)設(shè)置。
DMA可以用于主要的外設(shè):SPI、I2C、USART,通用、基本和高級(jí)控制定時(shí)器TIMx和ADC。
2.2.14 RTC(實(shí)時(shí)時(shí)鐘)和后備寄存器
中等容量的STM32F103xx增強(qiáng)型系列產(chǎn)品包含1個(gè)高級(jí)控制定時(shí)器、3個(gè)普通定時(shí)器,以及2個(gè)看門狗定時(shí)器和1個(gè)系統(tǒng)嘀嗒定時(shí)器。
高級(jí)控制定時(shí)器(TIM1)可以被看成是分配到6個(gè)通道的三相PWM發(fā)生器,它具有帶死區(qū)插入的互補(bǔ)PWM輸出,還可以被當(dāng)成完整的通用定時(shí)器。四個(gè)獨(dú)立的通道可以用于:
● 輸入捕獲
● 輸出比較
● 產(chǎn)生PWM(邊緣或中心對(duì)齊模式)
● 單脈沖輸出
配置為16位標(biāo)準(zhǔn)定時(shí)器時(shí),它與TIMx定時(shí)器具有相同的功能。配置為16位PWM發(fā)生器時(shí),它具有全調(diào)制能力(0~100%)。
通用定時(shí)器(TIMx)
STM32F103xx增強(qiáng)型產(chǎn)品中,內(nèi)置了多達(dá)3個(gè)可同步運(yùn)行的標(biāo)準(zhǔn)定時(shí)器(TIM2、TIM3和TIM4)。每個(gè)定時(shí)器都有一個(gè)16位的自動(dòng)加載遞加/遞減計(jì)數(shù)器、一個(gè)16位的預(yù)分頻器和4個(gè)獨(dú)立的通道,每個(gè)通道都可用于輸入捕獲、輸出比較、PWM和單脈沖模式輸出,在最大的封裝配置中可提供最多12個(gè)輸入捕獲、輸出比較或PWM通道。
它們還能通過(guò)定時(shí)器鏈接功能與高級(jí)控制定時(shí)器共同工作,提供同步或事件鏈接功能。在調(diào)試模式下,計(jì)數(shù)器可以被凍結(jié)。任一標(biāo)準(zhǔn)定時(shí)器都能用于產(chǎn)生PWM輸出。每個(gè)定時(shí)器都有獨(dú)立的DMA請(qǐng)求機(jī)制。
這些定時(shí)器還能夠處理增量編碼器的信號(hào),也能處理1至3個(gè)霍爾傳感器的數(shù)字輸出。
2.2.16 IIC總線
多達(dá)2個(gè)I2C總線接口,能夠工作于多主模式或從模式,支持標(biāo)準(zhǔn)和快速模式。I2C接口支持7位或10位尋址,7位從模式時(shí)支持雙從地址尋址。內(nèi)置了硬件CRC發(fā)生器/校驗(yàn)器。它們可以使用DMA操作并支持SMBus總線2.0版/PMBus總線。
2.2.17 通用同步/異步收發(fā)器(USART)
USART1接口通信速率可達(dá)4.5兆位/秒,其他接口的通信速率可達(dá)2.25兆位/秒。USART接口具有硬件的CTS和RTS信號(hào)管理、支持IrDA SIR ENDEC傳輸編解碼、兼容ISO7816的智能卡并提供LIN主/從功能。
所有USART接口都可以使用DMA操作。
2.2.18 串行外設(shè)接口(SPI)
多達(dá)2個(gè)SPI接口,在從或主模式下,全雙工和半雙工的通信速率可達(dá)18兆位/秒。3位的預(yù)分頻器可產(chǎn)生8種主模式頻率,可配置成每幀8位或16位。硬件的CRC產(chǎn)生/校驗(yàn)支持基本的SD卡和MMC模式。所有的SPI接口都可以使用DMA操作。
2.2.19 控制器區(qū)域網(wǎng)絡(luò)(CAN)
CAN接口兼容規(guī)范2.0A和2.0B(主動(dòng)),位速率高達(dá)1兆位/秒。它可以接收和發(fā)送11位標(biāo)識(shí)符的標(biāo)準(zhǔn)幀,也可以接收和發(fā)送29位標(biāo)識(shí)符的擴(kuò)展幀。具有3個(gè)發(fā)送郵箱和2個(gè)接收FIFO,3級(jí)14個(gè)可調(diào)節(jié)的濾波器。
2.2.20 通用串行總線(USB)
STM32F103xx增強(qiáng)型系列產(chǎn)品,內(nèi)嵌一個(gè)兼容全速USB的設(shè)備控制器,遵循全速USB設(shè)備(12兆位/秒)標(biāo)準(zhǔn),端點(diǎn)可由軟件配置,具有待機(jī)/喚醒功能。USB專用的48MHz時(shí)鐘由內(nèi)部主PLL直接產(chǎn)生(時(shí)鐘源必須是一個(gè)HSE晶體振蕩器)。
2.2.21 通用輸入輸出接口(GPIO)
每個(gè)GPIO引腳都可以由軟件配置成輸出(推挽或開(kāi)漏)、輸入(帶或不帶上拉或下拉)或復(fù)用的外設(shè)功能端口。多數(shù)GPIO引腳都與數(shù)字或模擬的復(fù)用外設(shè)共用。
除了具有模擬輸入功能的端口,所有的GPIO引腳都有大電流通過(guò)能力。在需要的情況下,I/O引腳的外設(shè)功能可以通過(guò)一個(gè)特定的操作鎖定,以避免意外的寫入I/O寄存器。
在APB2上的I/O腳可達(dá)18MHz的翻轉(zhuǎn)速度。
2.2.22 ADC(模擬/數(shù)字轉(zhuǎn)換器)
STM32F103xx增強(qiáng)型產(chǎn)品內(nèi)嵌2個(gè)12位的模擬/數(shù)字轉(zhuǎn)換器(ADC),每個(gè)ADC共用多達(dá)16個(gè)外部通道,可以實(shí)現(xiàn)單次或掃描轉(zhuǎn)換。在掃描模式下,自動(dòng)進(jìn)行在選定的一組模擬輸入上的轉(zhuǎn)換。
ADC接口上的其它邏輯功能包括:
● 同步的采樣和保持
● 交叉的采樣和保持
● 單次采樣
ADC可以使用DMA操作。
模擬看門狗功能允許非常精準(zhǔn)地監(jiān)視一路、多路或所有選中的通道,當(dāng)被監(jiān)視的信號(hào)超出預(yù)置的閥值時(shí),將產(chǎn)生中斷。由標(biāo)準(zhǔn)定時(shí)器(TIMx)和高級(jí)控制定時(shí)器(TIM1)產(chǎn)生的事件,可以分別內(nèi)部級(jí)聯(lián)到ADC的開(kāi)始觸發(fā)和注入觸發(fā),應(yīng)用程序能使AD轉(zhuǎn)換與時(shí)鐘同步。
2.2.23 溫度傳感器
溫度傳感器產(chǎn)生一個(gè)隨溫度線性變化的電壓,轉(zhuǎn)換范圍在2V < VDDA < 3.6V之間。溫度傳感器在內(nèi)部被連接到ADC12_IN16的輸入通道上,用于將傳感器的輸出轉(zhuǎn)換到數(shù)字?jǐn)?shù)值。
2.2.24 串行單線JTAG調(diào)試口(SWJ-DP)
內(nèi)嵌ARM的SWJ-DP接口,這是一個(gè)結(jié)合了JTAG和串行單線調(diào)試的接口,可以實(shí)現(xiàn)串行單線調(diào)試接口或JTAG接口的連接。JTAG的TMS和TCK信號(hào)分別與SWDIO和SWCLK共用引腳,TMS腳上的一個(gè)特殊的信號(hào)序列用于在JTAG-DP和SW-DP間切換。
2.3 STM32F103xx增強(qiáng)型模塊框圖
2.4 STM32F103xx時(shí)鐘樹(shù)
-
嵌入式系統(tǒng)
+關(guān)注
關(guān)注
41文章
3607瀏覽量
129602 -
ARM處理器
+關(guān)注
關(guān)注
6文章
361瀏覽量
41827 -
STM32F103
+關(guān)注
關(guān)注
33文章
478瀏覽量
63729 -
中斷控制器
+關(guān)注
關(guān)注
0文章
59瀏覽量
9476 -
閃存存儲(chǔ)器
+關(guān)注
關(guān)注
0文章
21瀏覽量
9153
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論