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

【STM32】对stm32F103VET6指南者原理图详解(超详细)

目录

    • 一、原理图基本概念
    • 二、STM32F103VET6 的主要特性
    • 二、MCU模块
    • 三、电源模块
    • 四、时钟模块
    • 五、复位模块
      • NRST
    • 六、GPIO模块
      • LED
    • 七、调试模块
      • JTAG
    • 八、外设模块
      • UART
      • SPI
      • I2C
      • ADC
    • 九、其它模块
      • BOOT

一、原理图基本概念

原理图/电路图通常由硬件工程师使用Altium Designer/ KiCad / 力创EDA等绘制

软件开发工程师 不需要掌握太深的硬件知识,但理解一些基础的硬件概念和常见的硬件操作是非常有帮助的

  • 了解 STM32 的工作电压、供电要求,以及如何进行电源供给。理解 电源噪声、稳压 的基本概念。
  • 了解 STM32 的时钟时钟系统工作原理, 以及如何对系统时钟/外部晶振/PLL的初始化和配置
  • 了解引脚的配置(输入、输出、模拟、PWM 等),以及如何通过软件控制和配置 STM32 引脚的工作模式。
  • 了解常见外设的基本原理和工作逻辑, 包括UART/I2C/SPI/ADC/DAC/PWM
  • 能看懂常见传感器的开发手册, 了解电路板与传感器接线方式和通信方式
  1. 原理图仅展示硬件的逻辑关系, 不涉及具体的元器件封装/放置位置等信息, 这些信息是从原理图生成的电路图决定的

  2. 原理图中的MCU通常引脚顺序与芯片引脚实际顺序不一致, 是为了方便查阅

  3. MCU引脚有引脚号/引脚名/网络符号三个属性

    • 引脚号是引脚的编号, 通常是芯片某个角上有一个特殊符号如凹下或突起的圆形, 或者丝印的一个白色三角符号为起始地址, 逆时针从1开始编号.
    • 引脚名是芯片厂商定义的名字, 通常使用芯片最基础功能命名, 如PB5, BOOT1等名字
    • 网络符号是硬件设计人员额外定义的名字, 根据实际使用的功能命名, 比如将PB5接到rgb灯的红色二极管上, 通常会使用RGB_R, red_pin, led_red之类的名字, 方便记忆

二、STM32F103VET6 的主要特性

ST的32位微控制器产品线
在这里插入图片描述
ST的32位微控制器命名规则
在这里插入图片描述

内核:ARM Cortex-M3,最高主频 72 MHz。

Flash:512 KB。

SRAM:64 KB。

GPIO:最多 80 个 GPIO 引脚,分为多个端口(如 GPIOA、GPIOB 等)。

外设:支持多种外设,包括 UART、SPI、I2C、ADC、定时器等。

封装:LQFP100(100 引脚封装)。

二、MCU模块

在这里插入图片描述
只有一句话总结MUC
整个开发板都是围绕 MUC(微控制器单元)设计的。MUC 是开发板的核心,其他组件(如外设、电源、时钟、调试接口等)都是为支持 MUC 的功能和性能而配置的。

三、电源模块

在这里插入图片描述

四、时钟模块

在这里插入图片描述
外部晶振:通常连接 8 MHz 晶振(HSE)和 32.768 kHz 晶振(LSE)。

五、复位模块

NRST

在这里插入图片描述
NRST:复位引脚,通常连接一个复位电路(如 RC 电路或复位芯片)。

六、GPIO模块

LED

在这里插入图片描述

七、调试模块

SWD:Serial Wire Debug 接口,通常包括 SWDIO 和 SWCLK 两个引脚。

JTAG:可选调试接口,包括 TCK、TDI、TDO、TMS 和 TRST 引脚。

JTAG

在这里插入图片描述

八、外设模块

UART:用于串口通信,例如 UART1_TX(PA9)和 UART1_RX(PA10)。

SPI:用于高速通信,例如 SPI1_SCK(PA5)、SPI1_MISO(PA6)、SPI1_MOSI(PA7)。

I2C:用于低速通信,例如 I2C1_SCL(PB6)、I2C1_SDA(PB7)。

ADC:用于模拟信号采集,例如 ADC1_IN0(PA0)。

定时器:用于 PWM 输出或计时,例如 TIM2_CH1(PA0)。

UART

在这里插入图片描述

SPI

在这里插入图片描述
在这里插入图片描述

I2C

在这里插入图片描述

ADC

在这里插入图片描述

九、其它模块

BOOT 引脚:用于选择启动模式(如从 Flash 启动或从系统存储器启动)。

BOOT

在这里插入图片描述


http://www.kler.cn/a/610449.html

相关文章:

  • 【归一化总结】BatchNorm(BN)、InstanceNorm(IN)、LayerNorm(LN) 和 GroupNorm(GN)
  • c++:封装红黑树实现map与set
  • 基于 mxgraph 实现流程图
  • Android 12系统源码_系统启动(二)Zygote进程
  • 如何优化 docker 镜像体积?
  • 掌握Linux项目自动化构建:从零入门make与Makefile
  • 34.[前端开发-JavaScript基础]Day11-王者轮播图-书籍购物车-BOM对象-JSON
  • AI 算力计算方式
  • Logback使用和常用配置
  • 李飞飞、吴佳俊团队新作:FlowMo如何以零卷积、零对抗损失实现ImageNet重构新巅峰
  • 基于Kubernetes部署Prometheus监控平台
  • 贪心算法(12))(java)坏了的计算器
  • 基于BERT的序列到序列(Seq2Seq)模型,生成文本摘要或标题
  • 系统分析师常考题目《论面向对象分析方法及其应用》
  • 类和对象cpp
  • 基于springboot+vue的北部湾地区助农平台
  • 深入解析 JVM 内存区域及核心概念
  • python中的面对对象
  • 鸿蒙开发:openCustomDialog关闭指定Dialog
  • docker中间件部署