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 的秒信号

最小系统电路:

相关推荐
Mr-pn-junction9 小时前
clk_gate
单片机·嵌入式硬件·fpga开发
尼喃14 小时前
662K和65Z5三脚稳压芯片PW6566,附引脚定义与典型电路图
嵌入式硬件
李永奉17 小时前
杰理可视化SDK开发-【BUG】配置“TWS两边同时按消息使能”功能后,按键单击功能无效失灵
开发语言·单片机·嵌入式硬件·物联网·bug
执迷不悟82318 小时前
51单片机--中断/定时/PWM
单片机·嵌入式硬件·51单片机
A小调的码农20 小时前
OPENOCD+MSYS+VSCODE:从“灯不亮“到“终于亮了“
ide·vscode·stm32·单片机·编辑器
AI的探索之旅20 小时前
让 Claude Code 直接操刀画原理图和 PCB:VSCode 插件接外部 API 全流程
linux·ide·vscode·嵌入式硬件·编辑器
Dlrb121120 小时前
单片机通信协议---串口及串口通信
单片机·嵌入式硬件·串口·uart·modbus·波特率·主机从机
嵌入式-老费21 小时前
esp32开发与应用(用好ttl转485模块)
stm32·单片机·嵌入式硬件
謓泽1 天前
【6.30】芯片 Bring-up 三步核心|从短路检查到 SPI 排障全拆解!
单片机·嵌入式硬件
2CM_Embed1 天前
Quartus II 工程编译与 FPGA 下载流程记录
嵌入式硬件·fpga开发