一、了解STM32
從字面意思來看:

STM32.png
二、STM32與ARM的關系
ARM是英國的芯片設計公司,其最成功的莫過于32位嵌入式CPU核——ARM系列,最常用的是ARM7和ARM9。
ARM公司主要提供IP(Intellectual Property core知識產(chǎn)權的核心)核,就是CPU的內核結構,只包括最核心的部分,并不是完整的處理器。

STM32.png
三、STM32分類及命名
(一)STM32分類

STM32分類.png
(二)STM32命名規(guī)則

STM32命名規(guī)則.png
例如:

舉例.png
四、STM32的使用
STM32能做的東西很多。
- USART:ESP8266 WIFI模塊、GSM模塊、藍牙模塊、GPS模塊、指紋識別模塊等。
- IIC:EEPROM、MPU6050陀螺儀、0.96寸OLED屏、電容屏等。
- SPI:串行FLASH、以太網(wǎng)W5500、VS1003/1053音頻模塊、SPI接口的OLED屏、電阻屏等。
- AD/DA:光敏傳感器模塊、煙霧傳感器模塊、可燃氣體傳感器模塊、簡易示波器等。
- 其他的一些接口。
五、STM32F103ZET6芯片

STM32F103ZET6.png
(一)內核
32位,高性能ARM Cortex-M3處理器。
時鐘:高達72M,實際還可以超頻一點。單周期乘法和硬件除法。
(二)IO口
STM32F103ZET6:144引腳,112個IO,大部分IO口都耐5V(擬通道除外),支持調試:SWD和JTAG,SWD只要2根數(shù)據(jù)線。
(三)存儲器容量
512K FLASH,64K SRAM
(四)時鐘,復位和電源管理
- 2.0~3.6V電源和IO電壓
- 上電復位,掉電復位和可編程的電壓監(jiān)控
- 強大的時鐘系統(tǒng)
- 4~16M的外部高速晶振
- 內部8MHz的高速RC振蕩器
- 內部40KHz低速RC振蕩器,看門狗時鐘
- 內部鎖相環(huán)(PLL,倍頻),一般系統(tǒng)時鐘都是外部或者內部高速時鐘經(jīng)過PLL倍頻后得到
- 外部低速32.768K的晶振,主要做RTC時鐘源
(五)低功耗
- 睡眠,停止和待機三種低功耗模式
- 可用電池為RTC和備份寄存器供電
(六)AD
- 3個12位AD(多達21個外部測量通道)
- 轉換范圍:0-3.6V(參考電源電壓)
- 內部通道可以用于內部溫度測量
- 內置參考電壓
(七)DA
2個12位DA
(八)DMA
12個DMA通道(7通道DMA1,5通道DMA2),支持外設:
定時器,ADC,DAC,SDIO,I2S,SPI,I2C,和USART
(九)定時器
多達11個定時器
- 4個通用定時器
- 2個基本定時器
- 2個高級定時器
- 1個系統(tǒng)定時器
- 2個看門狗定時器
(十)通信接口
多達13個通信接口
- 2個I2C接口
- 5個串口
- 3個SPI接口
- 1個CAN2.0
- 1個USB FS
- 1個SDIO
六、學習使用的開發(fā)板

PZ6806L.png
七、STM32芯片架構

STM32F103.png
八、STM32芯片系統(tǒng)結構

STM32芯片系統(tǒng)結構.png
九、STM32學習
(一)基本外設
GPIO輸入輸出,外部中斷,定時器,串口。
(二)基本外設接口
SPI、IIC、WDG、FSMC、ADC/DAC、SDIO等。
(三)高級功能
UCOS、FATFS、EMWIN等。
(四)C語言要加強
C 語言是嵌入式開發(fā)的基礎中的基礎。
- 入門及鞏固C語言基礎:譚浩強的《C程序設計 第四版》
- C語言提高:《C與指針》、《C指針編程之道》等
- 遇到問題可訪問官方論壇:
ST官方論壇:www.stmcu.org