二、STM32介绍

想要详细了解芯片数据可以在之前下载的压缩包中找到,路径如下

STM32入门教程资料--->参考文档--->STM32F103x8B数据手册(中文)

ARM

  • ARM既指ARM公司,也指ARM处理器内核
  • ARM公司是全球领先的半导体知识产权(IP)提供商,全世界超过95%的智能手机和平板电脑都采用ARM架构
  • ARM公司设计ARM内核,半导体厂商完善内核周边电路并生产芯片

ARM内核型号

蓝色部分,例如ARM7、ARM9等等,都是最早的一批ARM系列的内核

后面经过发展推出了Cortex-A、Cortex-R、Cortex-M系列的型号

其中Cortex-R、Cortex-M主要用于单片机领域,Cortex-A则用于手机领域

image

STM32简介

  • STM32是ST公司基于ARM Cortex-M内核开发的32位微控制器
  • STM32常应用在嵌入式领域,如智能车、无人机、机器人、无线通信、物联网、工业控制、娱乐电子产品等
  • STM32功能强大、性能优异、片上资源丰富、功耗低,是一款经典的嵌入式微控制器

image

当前使用的芯片就是主流系列中的:STM32F1

拥有177的内核跑分和72MHz的Cortex-M3内核

STM32F103C8T6

  • 系列:主流系列STM32F1
  • 内核:ARM Cortex-M3
  • 主频:72MHz
  • RAM:20K(SRAM)
  • ROM:64K(Flash)
  • 供电:2.0~3.6V(标准3.3V)
  • 封装:LQFP48

芯片照片

image

片上资源/外设

英文叫:Peripheral

通过程序配置外设,来完成我们想要的功能

下表中就是STM32F1系列的外设资源

表中前两个是位于Cortex-M3内核里面的外设,其他都是内核外的外设

英文缩写 名称
(ARM)NVIC 嵌套向量中断控制器
(ARM)Sys Tick 系统滴答定时器
RCC 复位和时钟控制
GPIO 通用IO口
AFIO 复用IO口
EXTI 外部中断
TIM 定时器
ADC 模数转换器
DMA 直接内存访问
USART 同步/异步串口通信
I2C I2C通信
SPI SPI通信
CAN CAN通信
USB USB通信
RTC 实时时钟
CRC CRC校验
PWR 电源控制
BKP 备份寄存器
IWDG 独立看门狗
WWDG 窗口看门狗
DAC 数模转换器
SDIO SD卡接口
FSMC 可变静态存储控制器
USB OTG USB主机接口

注意:C8T6型号的芯片没有后面四个外设

芯片命名规则

产品系列 + 产品类型 + 产品子系列 + 引脚数目 + 闪存存储器容量 + 封装 + 温度范围

  • 产品系列

    STM32:基于ARM核心的32位微控制器

  • 产品类型

    F :通用快闪(FlashMemory)

    L:低电压(1.65~3.6V)

    F类型中F0xx和F1xx系列为2.0~3.6V;F2xx和F4xx系列为1.8~3.6V

    W:无线系统芯片,开发版

  • 产品子系列

    050:ARMCortex-M0内核

    051:ARMCortex-M0内核

    100:ARMCortex-M3内核,超值型

    101:ARMCortex-M3内核,基本型

    102:ARMCortex-M3内核,USB基本型

    103:ARMCortex-M3内核,增强型

    105:ARMCortex-M3内核,USB互联网型

    107:ARMCortex-M3内核,USB互联网型、以太网型

    108:ARMCortex-M3内核,IEEE802.15.4标准

    151:ARMCortex-M3内核,不带LCD

    152/162:ARMCortex-M3内核,带LCD

    205/207:ARMCortex-M3内核,不加密模块(备注:150DMIPS,高达1MB闪存/128+4KBRAM,USBOTGHS/FS,以太网,17个TIM,3个ADC,15个通信外设接口和摄像头)

    215/217:ARMCortex-M3内核,加密模块(备注:150DMIPS,高达1MB闪存/128+4KBRAM,USBOTGHS/FS,以太网,17个TIM,3个ADC,15个通信外设接口和摄像头)

    405/407:ARMCortex-M4内核,不加密模块(备注:MCU+FPU,210DMIPS,高达1MB闪存/192+4KBRAM,USBOTGHS/FS,以太网,17个TIM,3个ADC,15个通信外设接口和摄像头)

    415/417:ARMCortex-M4内核,加密模块(备注:MCU+FPU,210DMIPS,高达1MB闪存/192+4KBRAM,USBOTGHS/FS,以太网,17个TIM,3个ADC,15个通信外设接口和摄像头)

  • 引脚数目

    F:20脚

    G:28脚

    K:32脚

    T:36脚

    H:40脚

    C:48脚

    U:63脚

    R:64脚

    O:90脚

    V:100脚

    Q:132脚

    Z:144脚

    I :176脚

  • 闪存存储器容量

    4:16KB

    6:32KB

    8:64KB

    B:128KB

    C:256KB

    D:384KB

    E:512KB

    F:768KB

    G:1MKB

  • 封装

    T:LQFP
    H:BGA
    U:VFQFPN
    Y:WLCSP/WLCSP64

  • 温度范围

    6:-40℃-85℃

    7:-40℃-105℃

系统结构

大致可以分成四个部分:内核部分、存储部分、外设部分、DMA部分

image

内核部分

image

相当于这个系统的CPU

Cortex-M3引出来三条总线

  • ICode:指令总线

  • DCode:数据总线

  • System:系统总线

ICode和DCode主要用来连接Flash闪存的,Flash里面存储着我们编写的代码

ICode加载程序指令,Dcode加载数据

System总线连接RAM、FSMC,加载程序产生的变量等等

存储部分

image

存放编写的程序代码

外设部分

image

AHB系统总线:用于挂载重要外设的,例如复位和时钟控制、SDIO

APB2(先进外设总线):连接外设中稍微重要的部分,例如GPIO、TIM1、ADC、SPI1、USART1等等

APB1(先进外设总线):连接不是那么重要的外设,例如USART2、DAC、USB、I2C等等

性能排序

AHB>APB2>APB1

因为AHB和APB的总线协议、总线速度、数据传送格式的差异,所以需要加上两个桥接来完成数据的转换和缓存

DMA部分

image

大量数据搬运的活,交给Cortex-M3来做就太浪费内核的资源了,干扰内核的正常工作

于是当出现数据需要搬运时,外设就会通过请求线发送DMA请求,DMA收到请求后就会获取总线的控制权,访问并运转数据,整个过程不需要内核的参与,省下了内核的时间

引脚定义

黑点左边为1号引脚,逆时针依次排序

表中标红色电源相关的引脚,标蓝色最小系统相关的引脚,标绿色IO口、功能口引脚

  • 类型

    S:电源

    I:输入

    O:输出

    I/O:输入输出

  • I/O口电平:有FT的表示可以容忍5V电压,没有FT表示只能容忍3.3V电压

注意:优先使用引脚名称加粗的IO口,没有加粗的IO口可能需要进行配置才可使用,或者兼具其他功能,使用的时候需要留意一下

image

启动配置

image

通过跳线帽来进行启动配置

image

最小系统电路

image

posted @ 2024-01-03 20:19  7七柒  阅读(23)  评论(0编辑  收藏  举报