【 宣告:著作權,請勿用于商業用途, 聯系信箱:feixiaoxing @163.com】
在立創開源硬體平臺上面,stm32可以說是使用最多的mcu芯片,它的核心是arm core,一方面,工業上比較認可stm32,另外一方面,我們也不得不承認意法半導體在校園推廣mcu方面確實做的很好,當然,目前芯片普遍比較緊俏,之前便宜的幾塊錢的stm32,都要幾十甚至上百了,這已經是后話了,
stm32用的比較多的stm32f103、stm32f3、stm32f4這些,現在,除了上面說的這些,又出現了stm32f7系列,就我的認知來說,目前用的還不多,目前,stm32多用在工業上,電機、儀表、運動控制、采集方面,都有很多的應用場景,
此外,stm32還容易使用rtos,在一些實時要求比較高的地方,用它是非常方便的,很多時候,除了實時控制,還需要人機互動,所以這個時候,stm32旁邊還會搭配一個linux soc,這都是很正常的現象,當然,要是遇到影像處理方面的內容,或者并發要求比較多的場合,stm32配合fpga,也不是很稀奇的情況,當然,用了rtos也不代表stm32就是實時控制了,這個等有機會再說,
為了說明stm32的最小電路,可以找一個電路圖來學習下,比如這,https://oshwhub.com/gxt_0/STM32F103C8T6hu-xin-ban
1、整體觀察

圖片僅僅給出了2d圖,所以也不知道后來是不是真正的打樣出來了,整體的功能還是比較簡單的,就是一個核心板,把所有的功能都用排針引出來了,
2、主芯片

主芯片就是stm32f103c8t6,48個引腳,qfn封裝,比較簡潔,
3、時鐘

stm32f103的時鐘可以多說一說,它有兩個時鐘,一個是32.768k這個,主要用于定時;另外一個是8M這個,是執行指令需要用到的時鐘,
4、電壓
和stc不一樣,stm32芯片多采用3.3v,所以需要一個降壓芯片,常用的芯片有ams1117,一個電路中出現多種電壓是很常見的,比如在fpga或者soc中,可能同時有5v、3.3v、2.5v、1.8v、1.2v等等,
5、啟動方式

stm32支持多種啟動方式,也就是說stm32執行的第一條指令可能來自于不同的地方,比如說,可能來自于sram,可能來自于內部flash,可能來自于外部flash,這個都取決于BOOT0、BOOT1的配置,有的同學說,stm32第一條指令怎么可能來自于sram呢,其實只要jtag或者swd加載進去就可以,
6、除錯和程式燒入介面

這是stm32特有的debug和燒入介面,類似于jtag,外部連接stlink即可,軟體上搭配keil,就可以除錯或者燒入程式了,
7、其他和stc差不多的電路
7.1 復位電路

7.2 usb電路,一部分用來供電,一部分stm32作為pc的usb device,可以模擬u盤

7.3 led,一個是上電后點亮,一個需要程式編程才能解決

7.4 電原始碼波電路

7.5 連接介面

8、美中不足的地方
應該安排一個usb2uart的芯片,比如ch330n,主要可以方便進行除錯,使用stm32的時候最好發揮它的強項,也就是運動控制這塊,如果只是做一點簡單的采集、顯示、按鈕這些,還不如用stc51,另外在實時性方面,這也是mcu的強項,不是說大的soc做不到,而是不劃算,linux本身是個很大的軟體平臺,上面的軟體包很多,但也很消耗資源,所以就專門的運動控制這塊,尤其是電機控制這塊,可以考慮一下stm32,當然,如果買不到,國產的gd32也是不錯的選擇,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/321458.html
標籤:其他
