STM32等基于 ARM Cortex內核的微控制器,憑借豐富的片上資源與簡單易用的標準外設庫,逐步成為消費與工業(yè)領域中的主流產(chǎn)品。
我們所說的STM32F103C8T6是屬于市場上用得比較廣泛的一種型號,意法提供的標準外設庫對 STM32片上資源進行了封裝,標準庫和HALL庫相比,標準外設庫比較接近于傳統(tǒng)的寄存器操作,國產(chǎn)GD32微控制器在很多方面都可以移植替代。
STM32F103C8T6是一款基于 ARM 32位 Cortex?-M3內核,電壓使用范圍是2.0V ~ 3.6V,工作頻率最高可以達到72MHz,內部采用64K或128K字節(jié) Flash程序存儲器,以及高達20K字節(jié)的 SRAM數(shù)據(jù)存儲器;內置 CRC循環(huán)冗余校驗以及 96位編碼( 24位的十六進制數(shù))的芯片唯一序列號。
它的主系統(tǒng)由 4個控制單元(DCode總線D-bus、系統(tǒng)總線S-bus、通用DMA1、通用DMA2)以及 4個受控單元(內部SRAM、內部Flash、FSMC、AHB到 APB的橋AHB2APBx)組成,它們通過一個多級的 AHB總線相互進行連接。
ICode總線:連接 M3內核指令總線與 Flash的指令接口,主要作用是進行指令預取。
DCode總線:連接 M3內核 DCode總線與 Flash的數(shù)據(jù)接口,主要作用是完成調試訪問和常量加載。
System總線:連接 M3內核系統(tǒng)總線與總線矩陣 Bus Matrix,用于協(xié)調內核與 DMA之間的通信。
DMA總線:連接 DMA的 AHB主接口與總線矩陣 Bus Matrix,用于協(xié)調 DCode和 DMA對 SRAM、Flash以及其它外設的訪問。
Bus Matrix總線矩陣:利用輪換算法管理內核系統(tǒng)總線與 DMA主總線之間訪問的仲裁,由 4個控制單元(DCode、系統(tǒng)總線、DMA1和 DMA2總線)以及 4個受控單元(FLITF、SRAM、FSMC、AHB2APB橋)組成。
時鐘系統(tǒng)
由于 STM32外設資源眾多,工作的時鐘頻率各不相同,所以采用了多達 5個時鐘源:片上經(jīng)過出廠調校的8MHz RC振蕩器系統(tǒng)時鐘HSI,以及帶校準的40kHz RC振蕩器作為實時時鐘LSI,也可以采用外置4 ~ 16MHz晶體振蕩器作為系統(tǒng)時鐘HSE,以及帶校準功能的32kHz RTC振蕩器作為實時時鐘LSE;最后還內置了用于對 CPU時鐘進行倍頻的的PLL鎖相環(huán)。
GPIO
STM32F103C8T6采用 LQFP48方式封裝,一共擁有 37個 I/O引腳,被分為PA(15個)、PB(15個)、PC(3個)、PD(2個)、PE(0個)五個組,所有 I/O接口可以映像到 16個外部中斷,并且大部份端口都可以可以兼容5V信號。每個 I/O端口可以接受或輸出8mA電流,灌電流則可達到20mA。除了模擬輸入功能的引腳之外,所有 GPIO都擁有大電流通過能力。根據(jù)我們的需要可以對 GPIO進行鎖定,主要是防止意外擦寫 GPIO相關的寄存器。位于APB2上的 GPIO引腳,其脈沖轉換速度可達18MHz。
STM32F103C8T6擁有 7個定時器,其中 1個用于電機控制的 16位 PWM高級控制定時器、3個 16位通用定時器、2個看門狗定時器(包含獨立型的和窗口型)、1個 24位自減型系統(tǒng)嘀嗒定時器。
STM32F103C8T6擁有 2個 I2C接口、3個 USART接口、2個 SPI接口、1個 CAN接口、1個 USB 2.0全速接口。
DMA(直接內存存取,Direct Memory Access)用來提供在外設與存儲器或者存儲器與存儲器之間的高速數(shù)據(jù)傳輸,傳輸過程無需經(jīng)過 CPU進行干預,數(shù)據(jù)直接通過 DMA快速進行操作,從而節(jié)省大量 CPU資源。
STM32F103C8T6的優(yōu)點:
1.資料教程豐富,在網(wǎng)上一搜,一堆答案。
2.穩(wěn)定且性價比高
早期的時候STM32性價比還是很高的,現(xiàn)在價格似乎也慢慢回落了。STM32的話性能很穩(wěn)定,不會有奇奇怪怪問題。
3.可移植性做得很好
最強大的就是他們的庫,很多芯片基本都是大同小異,比如使用STM32F030的切換到STM32F103也很輕松,代碼風格和定義非常相似。這樣有助于產(chǎn)品快速更新迭代。
4.量大
有一個現(xiàn)象就是,如果芯片漲價,那漲得最猛的肯定是量最大的那顆,STM32F103C8T6就是典型的例子。
市場占有率大,這樣的話產(chǎn)品不會有芯片交期的困擾。
但是特別量大的情況下,很多公司會選擇用***。
5.生態(tài)完善
ST的產(chǎn)品生態(tài)和開發(fā)生態(tài)都已經(jīng)相對完善了。
官網(wǎng)提供了很多行業(yè)應用的方案選型,估計很多人忽略了。
如果你在做一款產(chǎn)品,確定用STM32,但是不知道哪個型號合適,可以到他們官網(wǎng)的應用找找。
其它單片機外設資料、Flash、RAM就沒啥說的了,現(xiàn)在基本都是大同小異。
本期先分享到這里,如果還有哪些不足,我們可以一起探討,喜歡點個贊哈!
審核編輯黃宇
-
處理器
+關注
關注
68文章
19896瀏覽量
235292 -
dma
+關注
關注
3文章
576瀏覽量
103271 -
控制器
+關注
關注
0文章
28瀏覽量
3274
發(fā)布評論請先 登錄
STM32F103C8T6無法選擇外部晶振怎么解決?
基于STM32F103C8T6控制多路VL53L0X激光測距傳感器
STM32F103x8 STM32F103xB單片機數(shù)據(jù)手冊
STM32F103C8T6開發(fā)板最小系統(tǒng)原理圖
stm32f103c8t6編碼器模式在keil的debug調試時遇到的問題求解
STM32F103C8T6 PA2無PWM輸出怎么解決?
MH32F103A單片機 低價替代STM32,硬件完美兼容 主頻可達216M

基于單片機中藥存放環(huán)境監(jiān)測系統(tǒng)的實現(xiàn)

基于STM32F103C8T6 ADXL345 加速度傳感器的計步器設計指南和代碼
STM32單片機+MPU6050設計一個電子水平儀

第19.2章-星曈科技 openmv H7 plus openmv視覺循跡功能-完成視覺識別指定區(qū)域 OpenMV視覺模塊循跡 STM32F103C8T6視覺巡線
19.4-STM32接收數(shù)據(jù)-狀態(tài)顯示在屏幕 openMV尋跡與小車控制 Openmv+STM32F103C8T6視覺巡線小車

評論