寄存器描述
0x000 GPT_CTL
默认值:0x00000000 |
通用计数器控制(General Purpose Timer Control) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:29 |
- |
- |
- |
28 |
R |
0x0 |
TRG_LEVEL 输入触发引脚电平
|
27:24 |
- |
- |
- |
23:20 |
R/W |
0x0 |
TRG_DB1_DIV 第二级去抖采样除频除频系数为 2^DIV |
19:16 |
R/W |
0x0 |
TRG_DB1_POINT 第二级去抖采样点数配置为 0 则关闭本级去抖 |
15:12 |
R/W |
0x0 |
TRG_DB0_POINT 第一级去抖采样点数配置为 0 则关闭本级去抖 |
11:10 |
- |
- |
- |
9:8 |
R/W |
0x0 |
TRG_MODE 触发模式
注: 每次触发 CNTR_VAL 同时被清为 0,即当
TRG_MODE ≠ 0 时再来触发,会重新计数。 |
7:5 |
- |
- |
- |
4 |
R/W |
0x0 |
RUN_MODE 运行模式
|
3:2 |
R/W |
0x0 |
DBG_HALT_SEL 调试暂停触发条件
|
1 |
R/W |
0x0 |
DBG_HALT_BYPASS 调试暂停关闭
|
0 |
R/W |
0x0 |
GPT_EN 使能控制
本使能字段仅控制计数器是否正常工作,其操作不会复位本模块的其它配置。 |
0x004 GPT_CLK
默认值:0x00000000 |
通用计数器时钟(General Purpose Timer Clock) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:19 |
- |
- |
- |
18:0 |
R/W |
0x0 |
GPT_CLK_DIV 通用计数器时钟除频系数 配置为 n 则为 n+1。例如,当最大输入时钟为 200M 时,配置为 199,则输出计数频率为 1M。 |
0x008 IRQ_EN
默认值:0x00000000 |
中断使能(Interrupt Request Enable) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:30 |
- |
- |
- |
29 |
R/W |
0x0 |
OUT3_CMPB_IRQ_EN
输出引脚
3
达到比较值
B
中断使能
|
28 |
R/W |
0x0 |
OUT3_CMPA_IRQ_EN
输出引脚
3
达到比较值
A
中断使能
|
27:26 |
- |
- |
- |
25 |
R/W |
0x0 |
OUT2_CMPB_IRQ_EN
输出引脚
2
达到比较值
B
中断使能
|
24 |
R/W |
0x0 |
OUT2_CMPA_IRQ_EN
输出引脚
2
达到比较值
A
中断使能
|
23:22 |
- |
- |
- |
21 |
R/W |
0x0 |
OUT1_CMPB_IRQ_EN
输出引脚
0
达到比较值
B
中断使能
|
20 |
R/W |
0x0 |
OUT1_CMPA_IRQ_EN
输出引脚
1
达到比较值
A
中断使能
|
19:18 |
- |
- |
- |
17 |
R/W |
0 |
OUT0_CMPB_IRQ_EN
输出引脚
0
达到比较值
B
中断使能
|
16 |
R/W |
0x0 |
OUT0_CMPA_IRQ_EN
输出引脚
0
达到比较值
A
中断使能
|
1 |
R/W |
0x0 |
TRG_IN_IRQ_EN
输入引脚满足触发条件中断使能
|
0 |
R/W |
0x0 |
CNTR_MAX_IRQ_EN
计数器达到最大计数值中断使能
|
0x00C IRQ_STA
默认值:0x00000000 |
中断状态(Interrupt Request Status) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:30 |
- |
- |
- |
29 |
R/W1C |
0x0 |
OUT3_CMPB_IRQ_STA 输出引脚
3
达到比较值
B
中断状态
|
28 |
R/W1C |
0x0 |
OUT3_CMPA_IRQ_STA 输出引脚
3
达到比较值
A
中断状态
|
27:26 |
- |
- |
- |
25 |
R/W1C |
0x0 |
OUT2_CMPB_IRQ_STA 输出引脚
2
达到比较值
B
中断状态
|
24 |
R/W1C |
0x0 |
OUT2_CMPA_IRQ_STA 输出引脚
2
达到比较值
A
中断状态
|
23:22 |
- |
- |
- |
21 |
R/W1C |
0x0 |
OUT1_CMPB_IRQ_STA 输出引脚
0
达到比较值
B
中断状态
|
20 |
R/W1C |
0x0 |
OUT1_CMPA_IRQ_STA 输出引脚
1
达到比较值
A
中断状态
|
19:18 |
- |
- |
- |
17 |
R/W1C |
0x0 |
OUT0_CMPB_IRQ_STA 输出引脚
0
达到比较值
B
中断状态
|
16 |
R/W1C |
0x0 |
OUT0_CMPA_IRQ_STA 输出引脚
0
达到比较值
A
中断状态
|
15:2 |
- |
- |
- |
1 |
R/W1C |
0x0 |
TRG_IN_IRQ_STA 输入引脚满足触发条件中断状态
|
0 |
R/W1C |
0x0 |
CNTR_MAX_IRQ_STA 计数器达到最大计数值中断状态
|
0x010 CNTR_VAL
默认值:0x00000000 |
计数器值 (Counter Value) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:0 |
R/W |
0x00000000 |
CNTR_VAL 计数器值。读该寄存器返回当前计数器的值,写该寄存器更新当前计数器的值。 |
0x014 CNTR_MAX
默认值:0x00000000 |
计数器最大值 (Counter Max) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:0 |
R/W |
0x00000000 |
CNTR_MAX 计数器最大值 当 CNTR_VAL 计数值达到 CNTR_MAX,CNTR_VAL 自动清零。 |
0x01C CNTR_CLR
默认值:0x0 |
计数器清零(Counter Clear) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:1 |
- |
- |
- |
0 |
W1C |
0x0 |
CNTR_CLR 计数器清零
不论 GPT 处于何状态,该位写 1,计数器 CNTR_VAL 都会被清零。 |
0x040+N*0x10 (N=0~3) OUTn_CMPA
默认值:0x00000000 |
输出 N 比较 A 寄存器 (Output N Compare A Register) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:0 |
R/W |
0x00000000 |
CMP_VAL 比较值 |
0x044+N*0x10 (N=0~3) OUTn_CMPB
默认值:0x00000000 |
输出 N 比较 B 寄存器 (Output N Compare B Register) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:0 |
R/W |
0x00000000 |
CMP_VAL 比较值 |
0x04C+N*0x10 (N=0~3) OUTn_CFG
默认值:0x00000000 |
输出 N 配置寄存器 (Output N Configuration Register) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:29 |
- |
- |
- |
28 |
R |
0x0 |
OUTn_LEVEL 输出引脚
N
电平
|
27:14 |
- |
- |
- |
13:12 |
R/W |
0x0 |
OUTn_CMPB 计数值达到
CMPB
输出电平
|
11:9 |
- |
- |
- |
9:8 |
R/W |
0x0 |
OUTn_CMPA 计数值达到
CMPA
输出电平
|
7:5 |
- |
- |
- |
4 |
R/W |
0x0 |
OUTn_INIT 初始输出电平
|
3:1 |
- |
- |
- |
0x0 |
R/W |
0x0 |
OUTn_EN 输出使能
|
0x0FC GPT_VERSION
默认值:0x00000100 |
GPT 版本 |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:0 |
R/W |
0x00000100 | VERSION 模块版本,V1.0 |