一.什么是單片機(jī)最小系統(tǒng)
常見的單片機(jī)最小系統(tǒng)為單片機(jī)能獨(dú)立運(yùn)行程序及控制外圍電路的最簡(jiǎn)單電路,主要由單片機(jī)、晶振電路、復(fù)位電路三部分構(gòu)成。Stm32f103c8t6也不例外,構(gòu)成最小的運(yùn)行電路也需要以上三部分。
Stm32f103最小系統(tǒng)板原理圖如下:
二.最小系統(tǒng)電路
Stm32單片機(jī)最小系統(tǒng)電路有單片機(jī)、晶振電路、復(fù)位電路。
1. 單片機(jī)
Stm32f103系列單片機(jī)主要資源如圖:
Stm32f103c8t6工作電壓為2-3.6V(一般采用3.3V),內(nèi)置64-128KBytes Flash,20KBytesSRAM,帶有37個(gè)通用GPIO口(含特殊功能IO)。在最小系統(tǒng)板上主要連接晶振電路、復(fù)位電路、工作電源、以及配置BOOT啟動(dòng)方式。
BOOT啟動(dòng)方式主要有三種,主閃存存儲(chǔ)器啟動(dòng)、系統(tǒng)存儲(chǔ)器啟動(dòng)、內(nèi)置SRAM啟動(dòng),對(duì)應(yīng)的BOOT引腳狀態(tài)如下圖:
最常用的模式為主閃存存儲(chǔ)器啟動(dòng),即內(nèi)部Flash啟動(dòng),BOOT1=0,BOOT1=x(x表示0或1均可)。(注意三種模式的對(duì)應(yīng)啟動(dòng)地址均不一樣,內(nèi)部Flash啟動(dòng)的地址為0x0800000)
2. 晶振電路
(1)主時(shí)鐘晶振
Stm32單片機(jī)內(nèi)部自帶一個(gè)8MHz的RC時(shí)鐘,在符合設(shè)計(jì)需求的情況下,可通過程序在初始化時(shí)鐘函數(shù)內(nèi),選擇采用內(nèi)部時(shí)鐘。
外部主時(shí)鐘晶振主要作為供單片機(jī)內(nèi)核的時(shí)鐘源,官方推薦晶振電路主要參數(shù)如下:
Stm32單片機(jī)外部晶振為4-16MHz,常用8MHz,電路圖如下:
(2)RTC時(shí)鐘晶振
同樣,RTC時(shí)鐘在符合設(shè)計(jì)需求的情況下,可選用內(nèi)部自帶的40kHz RTC時(shí)鐘。外部晶振32.768KHz主要作為單片機(jī)內(nèi)部RTC時(shí)鐘的時(shí)鐘源,電路圖如下:
3. 復(fù)位電路
復(fù)位電路由RC電路及按鍵構(gòu)成,10k電阻及1uF電容組成的RC電路;stm32單片機(jī)復(fù)位引腳為低電平有效,復(fù)位電路的作用是使單片機(jī)復(fù)位引腳在上電時(shí),確保復(fù)位引腳至少有1ms以上的低電平狀態(tài)。復(fù)位按鍵的作用是當(dāng)按鍵按下,復(fù)位引腳的被拉至低電平,單片機(jī)觸發(fā)復(fù)位。
以上的單片機(jī)、晶振電路、復(fù)位電路,亦可構(gòu)成stm32的最小系統(tǒng)電路,但需使用+3.3V電源給其供電。由于常見采用USB給其供電源,USB電源為+5V,所以為了增加最小系統(tǒng)板的使用方便性,需增加以下外圍電路。
三.外圍電路
1. +5V轉(zhuǎn)3.3V穩(wěn)壓電路
穩(wěn)壓電路的作用是將輸入的+5V電源降壓到+3.3V,給單片機(jī)最小系統(tǒng)電路供電。
2. 狀態(tài)指示燈
最小系統(tǒng)板上有兩個(gè)LED燈,D1為+3.3V電源指示燈,如果板卡上電正常,D1燈常亮。如果D1不亮,則可能板卡電源異常。D2燈為程序狀態(tài)指示燈,可供軟件調(diào)試或者程序運(yùn)行指示用。
3. SWD燒錄接口
SWD接口為單片機(jī)的程序燒錄、軟件調(diào)試接口,使用ST-Link、或者JLink可通過SWD接口進(jìn)行程序燒錄或調(diào)試。
4. USB電源接口
USB電源接口采用了Micro USB接口,最小系統(tǒng)板可通過USB接口連接至電腦上或者+5V電源適配器上,實(shí)現(xiàn)板卡的供電。但有點(diǎn)需要注意的是,雖然USB接口連接至單片機(jī)的USB引腳上,但單片機(jī)USB功能需要程序帶有USB驅(qū)動(dòng),否則單片機(jī)的USB引腳只是為普通IO,無法與電腦的USB進(jìn)行數(shù)據(jù)交互。其中電阻R9、R11為限流電阻,R10為上拉電阻。
四.實(shí)物圖及對(duì)應(yīng)電路