天天看點

STM32入門 - 晶片簡介

部落客福利:100G+電子設計學習資源包!

​​http://mp.weixin.qq.com/mp/homepage?__biz=MzU3OTczMzk5Mg==&hid=7&sn=ad5d5d0f15df84f4a92ebf72f88d4ee8&scene=18#wechat_redirect​​ --------------------------------------------------------------------------------------------------------------------------

本文首先介紹了STM32與單片機、​​嵌入式​​、ARM的關系,然後引出了STM32系列微處理器的種類,最後簡單介紹了STM32F103晶片的一些功能特點。

STM32與單片機

單片機(Microcontrollers)是一種內建電路晶片,是采用超大規模內建電路技術把具有資料處理能力的中央處理器CPU、随機存儲器RAM、隻讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模拟多路轉換器、A/D轉換器等電路)內建到一塊矽片上構成的一個小而完善的微型計算機系統。由于8位單片機由于内部構造簡單,體積小,成本低廉,在一些較簡單的控制器中應用很廣。常見的8位單片機主要有:Intel的51系列,Atmel的AVR系統,Microchip公司的PIC系列,TI的MSP430系列等。而STM32是一種功能比較強大的32位的單片機。它和8位單片機最大的不同是,它不僅可以使用寄存器進行程式設計,還可以使用官方提供的庫檔案進行程式設計,這樣不僅程式設計友善,而且更容易移植。

STM32與嵌入式

嵌入式是以應用為中心,以計算機技術為基礎,軟硬體可裁剪,适應應用系統對功能、可靠性、成本、體積、功耗等嚴格要求的專用計算機系統。主要分為DSP,微控制器MCU,微處理器,SOC四種。一個完整的嵌入式系統,從開發過程分為4層:硬體層、驅動層、​​作業系統​​層和應用層。而STM32是MCU的一種,故也屬于嵌入式技術。

STM32與ARM

ARM可以說是一個公司的名稱,一類微處理的通稱,也代表一種技術。其實ARM是一個做晶片标準的公司,它負責晶片核心的​​架構​​設計,而把具體的實作,授權給像TI,ST等半導體公司。例如任何一個Cortex-M3晶片,他們的核心結構都是一樣的,不同的是他們的存儲器容量,片上外設,IO 以及其他子產品的差別。ARM公司為了能讓不同的晶片公司生産的Cortex-M3晶片能在軟體上基本相容,和晶片生産商共同提出了一套标準CMSIS标準(Cortex  Microcontroller  Software Interface  Standard),翻譯過來是ARM Cortex™ 微控制器軟體接口标準”,也就是其庫函數。

STM32入門 - 晶片簡介

STM32系列32位Flash微控制器基于ARM Cortex™-M處理器,旨在為MCU使用者提供新的開發自由度。它包括一系列32位産品,集高性能、實時功能、數字信号處理、低功耗與低電壓操作等特性于一身,同時還保持了內建度高和易于開發的特點。主要的産品型号有:

STM32入門 - 晶片簡介

STM32F1系列主流MCU

STM32 F1系列主流MCU滿足了工業、醫療和消費類市場的各種應用需求。憑借該産品系列,意法半導體在全球ARM Cortex-M 微控制器領域處于領先地位,同時樹立了嵌入式應用的裡程碑。該系列利用一流的外設和低功耗、低壓操作實作了高性能,同時還以可接受的價格、利用簡單的架構和簡便易用的工具實作了高內建度。

該系列包含五個産品線,它們的引腳、外設和軟體均相容。

•  超值型STM32F100- 24 MHz CPU,具有電機控制和CEC功能

•  基本型STM32F101- 36 MHz CPU,具有高達1MB的Flash

•  STM32F102 – 48 MHz CPU具備USB FS

•  增強型STM32F103- 72 MHz CPU,具有高達1MB的Flash、電機控制、USB和CAN

•  互聯型STM32F105/107- 72 MHz CPU,具有以太網MAC、CAN和USB 2.0 OTG

 目前主要的産品型号有:

STM32入門 - 晶片簡介

 STM32F103

STM32F103器件采用Cortex-M3核心,CPU最高速度達72 MHz。該産品系列具有16KB~ 1MB Flash、多種控制外設、USB全速接口和CAN。具體的産品型号及對應的Flash大小、封裝類型以及引腳數,如下圖所示

STM32入門 - 晶片簡介

STM32F103ZE功能特點

本系列将采用STM32F103ZE晶片進行實驗,其具備的功能特點有:

  • 核心:ARM32位Cortex-M3 CPU,最高工作頻率72MHz,1.25DMIPSMHz。單周期乘法和硬體除法。
  • 存儲器:片上內建512KB的Flash存儲器。6-64KB的SRAM存儲器。
  • 時鐘、複位和電源管理:2.0-3.6V的電源供電和IO接口的驅動電壓。POR、PDR和可程式設計的電壓探測器(PVD)。4-16MHz的晶振。内嵌出廠前調校的8MHz RC振蕩電路。内部40 kHz的RC振蕩電路。用于CPU時鐘的PLL。帶校準用于RTC的32kHz的晶振。
  • 低功耗:3種低功耗模式:休眠,停止,待機模式。為RTC和備份寄存器供電的VBAT。
  • 調試模式:串行調試(SWD)和JTAG接口。
  • DMA:12通道DMA控制器。
  • 支援的外設:定時器,ADC,DAC,SPI,IIC和UART。 
  • 2個12位的us級的AD轉換器(16通道):AD測量範圍:0-3.6 V。雙采樣和保持能力。片上內建一個溫度傳感器。
  • 2通道12位DA轉換器:STM32F103xC,STM32F103xD,STM32F103xE獨有。
  • 最多高達112個的快速IO端口:根據型号的不同,有26,37,51,80,和112的IO端口,所有的端口都可以映射到16個外部中斷向量。除了模拟輸入,所有的都可以接受5V以内的輸入。
  • 最多多達11個定時器:4個16位定時器,每個定時器有4個ICOCPWM或者脈沖計數器。2個16位的6通道進階控制定時器:最多6個通道可用于PWM輸出。
  • 2個看門狗定時器(獨立看門狗和視窗看門狗)。
  • 定時器:24位倒計數器。2個16位基本定時器用于驅動DAC。
  • 最多多達13個通信接口:2個IIC接口(SMBusPMBus)。5個USART接口(ISO7816接口,LIN,IrDA相容,調試控制)。3個SPI接口(18 Mbits),兩個和IIS複用。CAN接口(2.0B)。USB 2.0全速接口。SDIO接口。