当前位置: 首页 > news >正文

STM32F103C8T6芯片介绍(上) - LI,Yi

1. STM32F1系列型号的命名规则

image-20250727190032290

2. STM32F1系列的所有外设

并不是所有型号都拥有全部的外设

【片上资源/外设(Peripheral)】

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

NVIC和SysTick是位于Cortex-M3内核中的外设;其余的外设都位于内核之外

  1. NVIC:内核中用于管理中断的设备。如配置中断优先级

  2. SysTick:内核中的定时器。主要用来给操作系统提供定时服务

    如果项目中上了系统,如FreeRTOS等,就需要SysTick提供定时来实现任务切换的功能;如果没有操作系统,可以用该定时器来实现Delay函数的功能

  3. RCC:对系统的时钟进行配置;使能各模块的时钟

    在STM32中,外设在上电的情况下默认是没有时钟的。如果没有时钟,操作外设是无效的,外设不会工作;因此在操作外设前必须先使能时钟

    这种设计的目的是降低功耗

  4. AFIO:完成复用功能端口的重定义;中断端口的配置

  5. EXIT:配置后,当引脚有电平变化时,就可以触发中断,使CPU处理对应任务

  6. TIM:STM32中最常用、功能最多的外设

    【3种类型】

    高级定时器:最复杂

    通用定时器:最常用。可以完成定时中断、生成PWM波形等任务

    基本定时器

  7. ADC:12位的模数转换器。可以直接读取IO口的模拟电压值

  8. DAC:数模转换器。可以在IO口直接输出模拟电压

  9. DMA:帮助CPU完成搬运大量数据这样的繁杂任务

  10. USART:同步/异步串口(两者都支持)

    UART:异步串口

  11. I2C、SPI:2种常用的通信协议。STM32内置了它们的控制器,可以用硬件来输出时序波形;用通用IO口来模拟时序波形

  12. CAN:一般用于汽车领域的通信协议

  13. USB:可以用来做模拟鼠标、模拟U盘等设备

  14. RTC:在STM32内部完成年月日、时分秒的计时功能;可以接外部备用电池,即使掉电也能正常运行

  15. CRC:一种数据的校验方式,用于判断数据的正确性

  16. PWR:可以让芯片进入睡眠模式等状态,来达到省电的目的

  17. BKP:当系统掉电时,仍可由备用电池保持数据

  18. IWDG、WWDG:当单片机因为电磁干扰死机或者程序设计不合理出现死循环时,看门狗可以及时复位芯片,保证系统的稳定

  19. SDIO:可以用来读取SD卡

  20. FSMC:可以用于扩展内存,或配置成其他总线协议,用于某些硬件的操作

  21. USB OTG:用OTG功能,可以让STM32作为USB主机去读取其它USB设备

3. STM32F1系列的系统构架

image-20250727200108103

3.1 总线

(1) ICode、DCode总线

:主要用来连接Flash闪存

  1. ICode指令总线:加载程序指令
  2. DCode数据总线:加载数据。如常量和调试数据等

(2) System总线

:连接SRAM、FSMC

(3) AHB(先进高性能总线)系统总线

:挂载主要的(最基本的、性能比较高的)外设。如复位和时钟控制、SDIO

(4) APB(先进外设总线)

:用于连接一般的外设

由于AHB和APB的总线协议、总线速度、数据传送格式的差异,二者之间需要加两个桥接,来完成数据的转换和缓存

AHB的整体性能比APB高一些;APB2的性能又比APB1的性能高一些;APB2一般与AHB同频率,都是72MHz,APB1一般是36MHz

在使用的时候,个人一般感受不到APB2和APB1的性能差异。只需要知道某个外设是挂载到那个总线上的就可以了

  1. APB2:连接外设中稍重要的部分。如GPIO端口、一些外设的1号外设等

    TIM8和TIM1一样,也是高级定时器,所以也是重要的外设

  2. APB1:连接次要一点的外设

(4) DMA总线

:将DMA连接到总线矩阵上

3.2 外设

  1. Flash闪存:存储程序

  2. SRAM:存储程序运行时的变量数据

  3. DMA:完成诸如数据搬运等简单且需重复的工作。可以拥有和CPU一样的总线控制权,用于访问外设

    当需要DMA搬运数据时,外设就会通过请求线发送DMA请求;然后DMA就会获得总线控制权,访问并转运数据。整个过程不需要CPU的参与,节省了CPU的资源

4. STM32F103C8T6芯片

4.1 简介

  1. 系列:主流系列-STM32F1

  2. 内核:ARM Cortex-M3

  3. 主频:72MHz

  4. RAM:20K(SRAM)

    这里的RAM是运行内存,实际的存储介质是SRAM

  5. ROM:64K(Flash)

    ROM是程序存储器,实际的存储介质是Flash闪存

  6. 供电:2.0~3.6V(标准3.3V)

    51单片机是5V供电;USB输出的电压也是5V

    5V不在该芯片的供电范围内,不能直接给STM32供电

    如果使用的就是5V电压,需要再加一块稳压芯片,把电压降到3.3V,再给STM32供电

  7. 封装:LQFP48(48个引脚)

image-20250727175407251

4.2 外设

image-20250727185414665

http://www.kefakeji.com/news/787/

相关文章:

  • Lambda表达式你真的懂了嘛
  • DooTask 部署教程(windows)
  • KTT
  • AWS证书管理器现支持导出公钥证书 - 增强混合环境TLS管理能力
  • Go 源码编译流程
  • OI集训 Day11
  • 实操使用 go pprof 对生产环境进行性能分析(问题定位及代码优化)
  • 7 月 27 日 模拟赛总结 - sb
  • 推挽输出和开漏输出
  • 深入 JavaScript 运行原理
  • Combinatorics 第二弹
  • DAY23
  • ES 多租户隔离技术
  • P2601 [ZJOI2009] 对称的正方形
  • 7/25
  • JAVA注解处理
  • day4
  • 30天总结-第二十七天
  • AWS WAF全新控制台体验:简化安全配置与实时威胁监控
  • [题解]GDOI2014
  • 从代码堆砌到工程思维:读《构建之法》的蜕变思考
  • 初遇框架
  • 2025/7/27 模拟赛总结
  • 扣子Coze智能体万字教程:从入门到精通,一文掌握AI工作流搭建
  • STM32简介 - LI,Yi
  • 数学相关学习笔记
  • 第二天
  • 【图论】总结 10:无向图的必经边与必经点
  • 准备去北京
  • 英国拟立法限制iOS与Android垄断地位,强制开放移动生态