【车载开发系列】系统时钟与定时器

【车载开发系列】系统时钟与定时器

【车载开发系列】系统时钟与定时器

一. 系统时钟的概念

系统时钟是定时器的时间基准,决定定时器精度、最大频率与功耗;定时器通过时钟源选择+多级分频,从系统时钟树中获取计数时钟。

系统时钟(System Clock)是整个芯片运行的"心脏",直接决定CPU、外设(ADC、CAN、UART、Timer等)的运行速度。

二. 时钟体系

RH850 时钟体系一般分为三层:

  1. 振荡源(Oscillator)
  2. PLL倍频(锁相环)
  3. 时钟分配(给CPU/外设)

1)什么是PLL

PLL = Phase Locked Loop锁相环的意思,你可以把它理解成芯片里的"时钟倍频器"。PLL就是把低频精准时钟,成倍变高的硬件电路

2)PLL的作用

把低速外部晶振(如 8MHz)倍频到几百MHz,作为CPU主时钟源。PLL没锁定前不能用作系统时钟,否则芯片跑飞。

只有倍频之后,才能输出给 CLK_SYS(系统时钟)。

3)PLL补充

CPU速度、UART波特率、CAN时序、ADC采样时钟全都依赖PLL

INTC、ADC 都是"外设",PLL是它们的动力源头

三. 关键时钟名词

  • CLK_SYS:系统基时钟,所有时钟的"根"
  • CLK_CPU:CPU 内核运行时钟(最高频)
  • CLK_PERI:外设总线时钟(CAN、UART、ADC、Timer 都用它)
  • CLK_LSB:低速时钟(给 ADC、WDT 等)
  • MSTPCR:模块停止控制寄存器(外设时钟开关)

四. 系统时钟树

时钟源 → PLL → SYSCLK(CPU) → 总线时钟(PCLK) → 外设时钟域 → 定时器(TAUJ/TAUB/TAUD)

  • 时钟源:主晶振(8--24MHz)、内部高速(8MHz)、内部低速(240kHz)、副晶振(32.768kHz)、PLL
  • PLL:倍频到80/240MHz(常见),生成CPLL/PPLL,供给CPU与外设
  • SYSCLK:CPU主频(如240MHz)
  • PCLK:外设总线时钟(如80MHz),是定时器主要时钟源
  • 外设时钟域:IAWO(常开,低功耗唤醒)、ISO(可关,省电)

五. TAU与系统时钟的关系

系统时钟(SYSCLK)是TAU的源头,TAU只是对PCLK进一步分频计数

​如果系统时钟不稳或者配置有错误,那么必然TAU也不会准确。

CLK_SYS(系统时钟)→ 分频 → CLK_PERI → TAU预分频 → TAU计数时钟。系统时钟一变,TAU定时时间就全变

  1. 先配好系统时钟 + PLL,确认 CLK_SYS、CLK_PERI 频率
  2. 打开 TAU 时钟(MSTPCR 对应位清 0)
  3. 根据真实时钟频率计算 TAU 预分频和重载值
相关推荐
嵌入式阿蔡8 小时前
HAL库 vs LL库 vs 寄存器:到底用哪个?
c语言·stm32·单片机·嵌入式硬件·嵌入式实时数据库
天空'之城9 小时前
单片机基础核心知识点汇总(三)
单片机·嵌入式硬件
嵌入式阿蔡10 小时前
CAN总线入门:从协议帧到STM32实战
c语言·stm32·单片机·嵌入式硬件·嵌入式实时数据库
离凌寒11 小时前
一、对stm32mp157配置freertos后,任务挂掉无法启动问题总结
stm32·单片机·嵌入式硬件
消失的旧时光-194313 小时前
7-fix补充篇:机器人为什么需要多级控制仲裁?Cloud、Linux 与 MCU 分别管什么
linux·单片机·机器人·仲裁机制·安全保护机制
Hello_Damon_Nikola13 小时前
CH573从入门到精通
c语言·开发语言·单片机·嵌入式硬件
oshan201213 小时前
华大小华HC32F460单片机在线烧录
单片机·嵌入式硬件
LCG元14 小时前
STM32 USB HID 自定义免驱设备开发:从报告描述符到上位机 64 字节收发实战
stm32·单片机·嵌入式硬件
Hello_Damon_Nikola14 小时前
HT2813从入门到精通
单片机·嵌入式硬件·物联网
天空'之城15 小时前
单片机基础核心知识点汇总(二)
单片机·嵌入式硬件