STM32简介
- STM32是ST公司基于ARM Cortex-M内核开发的32位微控制器
内核相当于整个芯片的CPU,类似于我们现在的电脑厂商一样,拿着inter和amd的CPU,自己完善外围电路,就可以推出自己的电脑,STM32也是一样,ST公司拿着ARM设计的内核,完善外围电路,整个封装起来,就成了STM32
当然其他的厂商也可以拿着ARM设计的内核来推出自己的芯片,这类芯片就叫做基于ARM内核的芯片 - STM32常应用在嵌入式领域,如智能车、无人机、机器人、无线通信、物联网、工业控制、娱乐电子产品等
- STM32功能强大、性能优异、片上资源丰富、功耗低,是一款经典的嵌入式微控制器
STM32家族图
目前STM32一共四个系列,分别是:高性能系列、主流系列、超低功耗系列和无线系列
CoreMark就是内核跑分,跑分越高,性能越好

ARM简介
- ARM既指ARM公司,也指ARM处理器内核
- ARM公司是全球领先的半导体知识产权(IP)提供商,全世界超过95%的智能手机和平板电脑都采用ARM架构
知识产权提供商的意思就是,ARM公司只设计内核,而不生产内核,内核实际上还是各大半导体公司连同芯片一起制作出来的。ARM给各大厂商授权他的设计,然后再收取授权费作为盈利方式 - ARM公司设计ARM内核,半导体厂商完善内核周边电路并生产芯片
ARM公司的内核型号
主要可以分为:Cortex-A、Cortex-R、Cortex-M【ARM7、9、11是ARM之前的老版本内核,也可以叫做经典版内核】
- Cortex-A:高端应用领域【手机等】,苹果的手机芯片等等
- Cortex-R:嵌入式领域,面向实时性很高的场合(Real time)
- Cortex-M:嵌入式领域,主要应用于单片机领域

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

片上资源 / 外设介绍
| 英文缩写 | 名称 | 作用 |
|---|---|---|
NVIC |
嵌套向量中断控制器 | 内核外设,内核内用于管理中断、配置中断优先级等 |
SysTick |
系统滴答定时器 | 内核外设,内核内的定时器,主要用于给操作系统提供定时服务 |
| RCC | 复位和时钟控制 | 对系统时钟进行设置,使能各模块时钟等 |
| GPIO | 通用IO口 | 最基础的IO口 |
| AFIO | 复用IO口 | 完成复用功能端口的重定义、中断端口配置 |
| EXTI | 外部中断 | 用于配置外部中断 |
| TIM | 定时器 | 完成定时等系列工作 |
| ADC | 模数转换器 | 读取外部电压值 |
| DMA | 直接内存访问 | 帮助CPU完成数据搬运工作 |
| USART | 同步/异步串口通信 | 异步/同步串口 |
| I2C | I2C通信 | 硬件I2C外设 |
| SPI | SPI通信 | 硬件SPI外设 |
| CAN | CAN通信 | CAN总线外设 |
| USB | USB通信 | USB外设 |
| RTC | 实时时钟 | 实时时钟,年月日时分秒 |
| CRC | CRC校验 | 数据校验方式,判断是否正确 |
| PWR | 电源控制 | 睡眠、低功耗 |
| BKP | 备份寄存器 | 系统掉电可以用备用电池保存数据 |
| IWDG | 独立看门狗 | 看门狗外设 |
| WWDG | 窗口看门狗 | 看门狗外设 |
| DAC | 数模转换器 | IO口直接输出模拟电压 |
| SDIO | SD卡接口 | SD外设 |
| FSMC | 可变静态存储控制器 | 拓展内存 |
| USB OTG | USB主机接口 | 作为主机读取其他USB设备 |
这里的外设,指的是F1系列所有的外设,但是不同的封装/型号,部分外设是没有的,如何判断呢?
可以在我们的STM32F103x8B数据手册(中文)中,查阅器件一览得到,这里面查得到的,就是我们这个芯片有的外设,没有出现的话,就是没有
