目录
一、定时器模块-TM
1-1、模块介绍
合泰定时器模块是包括多种
操作定时单元。
提供的操作有:定时
/事件计数器,捕捉输入,比较匹配输出,单脉冲输出以及 PWM 输出等功能。
每个定时器模块有两个独立中断。
该系列单片机包含了七个
TM,分为标准型STM / 周期型PTM。
stm(0-2)、ptm(0-3)

1-2、TM 操作
TM 操作的关键是:比较 TM 内独立运行的计数器的值与内部比较器的预置
计数器的值与比较器的预置值相同 ——> 比较匹配 ——>TM 中断信号产生
——>清零计数器并改变 TM 输出引脚的状态。
用户选择内部时钟或外部引脚来驱动内部
TM
计数器
1-3、TM 时钟源
驱动
TM
计数器的时钟源很多。通过设置
xTMn
控制寄存器的
xTnCK2~xTnCK0
位,选择所需的时钟源。其中“x
”代表“S”或“P”型 TM,“n”代表指定 TM 的序列号。
该时钟源来自系统时钟
f
SYS
或内部高速时钟
f
H
或
f
SUB
时钟源或
外部
xTCKn
引脚。
xTCKn
引脚时钟源用于允许外部信号作为
TM
时钟源或用
于事件计数。

1-4、TM 中断
标准型和周期型
TM
都有两个内部中断,分别是内部比较器
A
或比较器
P
,当
比较匹配发生时产生
TM
中断。当
TM
中断产生时,计数器清零并改变
TM
输
出引脚的状态
1-5、TM 外部引脚
无论哪种类型的 TM,都有两个 TM 输入引脚,分别为 xTCKn 和 xTPnI。
引脚
xTCKn
作为
TM 时钟源输入脚。
通过设置
xTMnC0 寄存器中的 xTnCK2~xTnCK0
位进行选择。外部时钟源可通过该引脚来驱动内部
TM。xTCKn
输入引脚可以选择上升沿或下降沿有效。
STCKn
和
PTCKn
引脚还可分别用作
STMn
和
PTMn
单脉冲输出模式的外部触发输入引脚。
另一种
xTM
输入引脚
STPnI
或
PTPnI
作为捕捉输入脚,其有效边沿有上升沿、
下 降 沿 和 双 沿, 可 分 别 通 过 设 置
STMnC1
和
PTMnC1
寄存器中的
STnIO1~STnIO0
和
PTnIO1~PTnIO0
位来选择有效边沿类型。除
PTPnI
引脚外,
PTCKn
也可用作
PTMn
捕捉输入模式的外部触发输入引脚。
每个 TM 各有一个输出引脚xTPn。
TM
输出引脚可通过相应的引脚共用功能选择位选择,详细内容在引脚共用功能章节有所描述。
TM
工作在比较匹配输出模式且比较匹配发生时,这些引脚会由
TM 控制切换到高电平或低电平或
翻转。
外部 xTPn 输出引脚也被 TM 用来产生 PWM 输出波形。
当 TM
输出引脚与其它功能共用时,
TM 输出功能需要通过寄存器先被设置。

1-6、编程注意事项
TM
计数寄存器和捕捉
/
比较寄存器
CCRA
、
CCRP
寄存器,含有低字节和高字节结构。高字节可直接访问,低字节则仅能通过一个内部
8-bit 的缓存器进行访问。
值得注意的是 8-bit 缓存器的存取数据及相关低字节的读写操作,仅在其相应的高字节读取操作执行时发生。

读写流程如下步骤所示:
● 写数据至
CCRA
或
CCRP(A比较器 / P比较器)
♦
步骤
1.
写数据至低字节寄存器 xTMnAL 或 PTMnRPL
– 注意,此时数据仅写入 8-bit
缓存器。
♦
步骤
2.
写数据至高字节寄存器 xTMnAH 或 PTMnRPH
– 注意,此时数据直接
写入高字节寄存器,同时锁存在
8-bit 缓存器中的数据写
入低字节寄存器。
● 从计数器寄存器和 CCRA 或
CCRP
中读取数据
♦ 步骤 1.
由高字节寄存器 xTMnDH、xTMnAH 或 PTMnRPH 读取数据
– 注意,此时高字节寄存器中的数据直接读取,同时由低字节寄存器读取的数
据锁存至 8-bit 缓存器中。
♦ 步骤 2.
由低字节寄存器 xTMnDL、xTMnAL 或 PTMnRPL 读取数据
– 注意,此时读取 8-bit
缓存器中的数据。
1-7、标准型TM操作
标准型
TM
核心是一个由用户选择的内部或外部时钟源驱动的
16-bit 向上计数器。
它还包括两个内部比较器即比较器
A 和比较器 P
。
这两个比较器将计数器
的值与
CCRP 和 CCRA
寄存器中的值进行比较。
CCRP
是
8
位宽度,与计数器
的高
8
位比较;而
CCRA
是
16
位的,与计数器的所有位比较。
通过应用程序改变
16-bit
计数器值的唯一方法是使
STnON 位发生上升沿跳变清除计数器。
此外,计数器溢出或比较匹配也会自动清除计数器。
上述条件发生时,通常情况会产生
STM
中断信号。
标准型
TM
可工作在不同的模式,可由包括来自输入脚的不同时钟源驱动,也可以控制输出脚。所有工作模式的设定都
是通过设置相关寄存器来实现的。

1-8、标准型TM寄存器介绍
一对只读寄存器用来存放 16位计数器的值。(
STMnDL ,
STMnDH)
一对读
/
写寄存器存放
16
位 CCRA 的值。(STMnAL,STMnAH)
STMnRP
寄存器存放
8
位
CCRP
的值。
剩下两个控制寄存器设置不同的操作和控制模式。(STMnC0,STMnC1)
寄存器具体用法看数据手册P117
1-9、STM寄存器和PTM区别
二、示例应用
填坑填坑,用的Holtek公司的HT66F2390 8bit芯片
https://download.youkuaiyun.com/download/weixin_52842407/90042194