標題:
STM32開發(fā)板開發(fā)過程|3GPIO部分設計
[打印本頁]
作者:
51黑uu
時間:
2016-5-1 06:04
標題:
STM32開發(fā)板開發(fā)過程|3GPIO部分設計
從今天開始,就開始著手設計一款STM32單片機開發(fā)板,我每天會把開發(fā)的過程跟大家分享出來,盡量做到細致,讓初學者對單片機開發(fā)有個入門的印象,同時也和大家一起探討、分享STM32單片機的學習經(jīng)驗,和大家一起成長為單片機高手。
歷史回顧:
STM32開發(fā)板開發(fā)過程|1芯片選型
STM32開發(fā)板開發(fā)過程|2最小系統(tǒng)設計
1. STM32F103C8T6-GPIO引腳介紹
C8T6為LQFP48的封裝,共有48個引腳,這些引腳當中不全部是GPIO,除了電源引腳、晶振引腳等功能引腳外,有37個GPIO,分別如下:
PA0-PA15:共16個;
PB0-PB15:共16個;
PC13-PC15:共3個;
PD0-PD1:共2個;
這37個GPIO引腳是復用的,什么意思呢?就是可以當做普通IO來用也可以當做其他功能來用比如說UART,在使用的時候只需要設置寄存器就好了。至于寄存器怎么設置,這個到編程的時候我會告訴大家。
2.LED燈電路
單片機的GPIO口控制LED燈的亮滅有兩種方式:
輸出高電平:即所謂的拉電流方式;
輸出低電平:即所謂的灌電流方式;
至于什么是單片機的拉電流和灌電流,請點擊這里查看。
本設計采用灌電流的方式,如果你看了關于拉電流和灌電流的那篇文章就應該知道單片機的灌電流往往要比拉電流大。
由于引腳都是復用的所以通過跳線來選擇連通或者斷開。以這種方式單片機輸出低電平就可以將LED點亮了。
3.按鍵檢測電路
按鍵檢測電路如下:
如果大家對之前的文章還有印象的話,那就應該知道按鍵部分我一般都加入上拉電阻,這里為什么沒有加呢?因為STM32單片機的GPIO內(nèi)部有上拉電阻,可以通過寄存器來選擇是不是要使用內(nèi)部上拉,這里選擇內(nèi)部上拉所以外部就不用加了。溫習:單片機的上拉和下拉請點這里。
4. 蜂鳴器控制電路
蜂鳴器分為有源蜂鳴器和無源蜂鳴器,其區(qū)別就是有源蜂鳴器只要給電就響,而無源蜂鳴器則要通過不用的頻率來驅動。溫習:蜂鳴器的分類請點這里。
這里使用的是有源蜂鳴器,通過三極管來驅動,電路如下:
5. 數(shù)碼管顯示電路
數(shù)碼管顯示是單片機學習過程中必須要經(jīng)歷的,我剛開始想把這一塊不要的,最終還是決定留了下來。數(shù)碼管驅動部分采用的74HC595驅動芯片,這個芯片相當于74HC373+74HC164,具有移位和鎖存功能,電路設計如下:
溫習:74HC595驅動數(shù)碼管請點這里。
6. BOOT啟動模式電路設計
STM32單片機具有BOOT0和BOOT1引腳,這兩個引腳通過連接高電平和低電平可以使單片機進入不同的自舉模式,總共有三種自舉模式:
至于每種自舉模式是什么意思,以后在程序下載的時候會講到。電路設計如下:
為了方便大家溫習相關知識,我在文章都做了超鏈接,大家可以點擊查看。
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1