由於學習工作的需要自己定制stm32系統板,以下將關鍵的注意事項進行解釋,歡迎交流。(以stm32f103為例)
1.VBAT引腳
在主流的設計中,VBAT與0歐的電阻串聯,接至3.3V。
2.OSC32_IN 與 OSC32_OUT
32.768k的rtc時鍾用於精確定時,待機喚醒時鍾。根據您的需要判斷是否添加。如果您不需要待機狀態的定時功能的話,可以不用外接晶振。
3.XTAL_IN 與 XTAL_OUT 。
外部時鍾晶振不是必須要接8M,官方數據寫的是4-16MHz,然后經過pll倍頻后給其它外設提供時鍾信號。
比如說系統最大主頻就是由它倍頻得到的。
4.BOOT0 與 BOOT1 配置啟動方式。
BOOT1=x BOOT0=0 從用戶閃存啟動,這是正常的工作模式。
BOOT1=0 BOOT0=1 從系統存儲器啟動,這種模式啟動的程序功能由廠家設置。
BOOT1=1 BOOT0=1 從內置SRAM啟動,這種模式可以用於調試。
實際設計中,BOOT0設計為可以調節的方式。
BOOT1設計為0。
(我不理解的是,為什么要經過10k電阻接地呢?歡迎交流,有文章說是為了改善emc)
5. SWD下載方式:
SWD下載方式只需要NRST(復位),TCLK(時鍾),TMS(信號),GND四個引腳。個人習慣了這種下載方式。再簡單一點的話,NRST也是可以省掉的,下載完程序可以手動復位。
6. NRST系統復位
復位的方式有很多種,這里就不一一敘述了。
7.供電。
VDDA,VDD1,VDD2,VDD3 該供電3V3的就供電3V3
VSSA,VSS1,VSS2,VSS3 該接地的就接地。
同時,VDD 與 VSS 之間需要濾波。