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

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

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

一. 系统时钟的概念

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

系统时钟(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 预分频和重载值
相关推荐
三佛科技-187366133979 小时前
FT32F103C8AT7兼容GD32F103C8T632 位通用微控制器MCU,替代性分析
单片机·嵌入式硬件
iCxhust10 小时前
8086汇编 word ptr
汇编·单片机·嵌入式硬件·微机原理·8088单板机
嵌入式ZYXC10 小时前
第3篇:《面试题:I2C为什么要加上拉电阻?阻值怎么选?》
stm32·单片机·嵌入式硬件·面试·职场和发展
leo__52010 小时前
C# 虚拟键盘(软键盘)实现
单片机·c#·计算机外设
你疯了抱抱我11 小时前
【STM32】使用 STM32CubeMX 生成项目,LED测试;上位机:STM32F411CEU6
stm32·单片机·嵌入式硬件
今天的你比昨天进步了?13 小时前
单片机程序,keil可以正常编译,VScode编译报错处理
vscode·单片机·嵌入式硬件
嵌入式小站13 小时前
STM32 零基础可移植教程 24:SPI Flash 读数据,先从指定地址读几个字节
chrome·stm32·嵌入式硬件
崇山峻岭之间14 小时前
单片机汉字显示实验
单片机·嵌入式硬件
guygg8814 小时前
基于C# + Halcon的通用ROI绘制工具
stm32·单片机·c#