5.stm32 江协科技笔记1

stm32 F1 :

arm m3架构 RAM : 20K (SRAM) ROM : 64K (Flash) 主频:72MHz

stm32:

上电后 外设是没有时钟的 使用外设前必须先使能时钟

时钟频率:指驱动 MCU 内部电路同步工作的基准时钟信号的振荡频率,单位通常是 Hz(赫兹)

一个 72MHz 的 MCU 时钟,意味着每秒产生 7200 万次 时钟周期。 1Hz = 每秒1个周期

一条简单指令(如寄存器赋值)可能需要 1~2 个时钟周期 完成,复杂指令(如乘法、除法)可能需要更多周期

MCU有一套时钟树 clock tree 不同模块用不同频率的时钟

MCU 的主时钟通常来自外部晶振 8MHz、16MHz, 或内部rc振荡器

主时钟通过 PLL 倍频、分频器分频后,分配给不同模块 CPU 核心时钟 AHBAPB 外设专用时钟

时钟源

├── HSI(内部高速RC,16MHz)

├── HSE(外部晶振,8MHz)

└── PLL(锁相环,可倍频至200MHz)

**SYSCLK(系统时钟 / 主时钟)**

┌───────┴────────┐

AHB 总线 APB1/APB2 总线

(CPU, RAM) (UART, SPI, Timer...)

定时器:集成在MCU芯片内,但独立于CPU核心,接收来自主频(或经过分频后的)时钟脉冲,然后对这些脉冲进行计数。

设置预分频器:告诉定时器"每收到N个主频脉冲,你才计1个数"。这样降到一个适合计时的速度。

设置重装载值:告诉定时器"请你从0开始数,数到M就告诉我一声(产生中断或事件)"。这个"M"就是你要定时的时间长度。

捕获外部信号:测量脉冲宽度。

输出PWM波形:驱动电机、控制LED亮度。

MCU架构:内核(Core):负责执行代码、运算。 小容量 RAM/ROM

外设(Peripheral):围绕内核,提供特定功能的模块。如:

通信外设:UART, SPI, I2C

模拟外设:ADC, DAC

定时/计数外设:Timer, RTC(时间记录, Watchdog

控制外设:GPIO, PWM

外设介绍:

命名规则:

系统结构:

48个引脚:

RTC详细介绍:

你可以把它理解为单片机内部的一个独立的、自带电池的"手表"。它的核心作用是在系统断电或休眠时,依然能保持对真实时间(年、月、日、时、分、秒)的追踪, 它通常拥有独立的电源引脚(VBAT),可以连接一颗纽扣电池(如 CR2032)。

  • 时钟源: 最常用的是外部的 32.768kHz 晶振。你可能会好奇为什么选这个数字?因为 32768=21532768=215 ,经过 15 次二分频后,刚好能得到精确的 1Hz(每秒一次)脉冲信号,非常适合用来计时。
  • 计数器: RTC 内部有一个 32 位的计数器。如果以 1970 年 1 月 1 日为起点(Unix 时间戳),它可以连续计时约 136 年,完全够用。
  • 分频器: 将高频的时钟源分频为 1Hz 的秒信号

最小系统电路:

相关推荐
项目題供诗12 小时前
51单片机入门(八)
单片机·嵌入式硬件·51单片机
羽获飞12 小时前
从零开始学嵌入式之STM32——9.STM32的时钟系统
stm32·单片机·嵌入式硬件
飞睿科技13 小时前
乐鑫智能开关方案解析:基于ESP32-C系列的低功耗、高集成设计
嵌入式硬件·物联网·esp32·智能家居·乐鑫科技
来自晴朗的明天14 小时前
13、NMOS 电源防反接电路
单片机·嵌入式硬件·硬件工程
17(无规则自律)15 小时前
深入浅出 Linux 内核模块,写一个内核版的 Hello World
linux·arm开发·嵌入式硬件
芯岭技术15 小时前
PY32MD310单片机:高性能、低功耗的32位电机控制微控制器
单片机·嵌入式硬件
wotaifuzao16 小时前
STM32 + FreeRTOS 的订阅通知组件架构
stm32·嵌入式硬件·架构·freertos·事件驱动·嵌入式架构
小龙报16 小时前
【51单片机】深度解析 51 串口 UART:原理、配置、收发实现与工程化应用全总结
c语言·开发语言·c++·stm32·单片机·嵌入式硬件·51单片机
Lester_11011 天前
STM32 高级定时器PWM互补输出模式--如果没有死区,突然关闭PWM有产生瞬间导通的可能吗
stm32·单片机·嵌入式硬件·嵌入式软件
小李独爱秋1 天前
“bootmgr is compressed”错误:根源、笔记本与台式机差异化解决方案深度指南
运维·stm32·单片机·嵌入式硬件·文件系统·电脑故障