新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > LPC2103之timer0 ang timer1

LPC2103之timer0 ang timer1

作者: 时间:2016-11-29 来源:网络 收藏


//匹配控制寄存器
#define T1MCR(*((volatile unsigned short *) 0xE0008014))
匹配控制寄存器用于控制当一个匹配寄存器和定时计数器相匹配时将执行什么操作。
信号描述复位值
0MR0I写1时,当MR0与TC匹配将产生中断;写0关闭此功能。0
1MR0R写1时,当MR0与TC匹配将会复位;写0关闭此功能。0
2MR0S写1时,当MR0与TC匹配将使PC和TC计数停止并且TCR[0]拉低(0);写0关闭此功能。0
3MR1I写1时,当MR1与TC匹配将产生中断;写0关闭此功能。0
4MR1R写1时,当MR1与TC匹配将会复位;写0关闭此功能。0
5MR1S写1时,当MR1与TC匹配将使PC和TC计数停止并且TCR[0]拉低(0);写0关闭此功能。0
6MR2I写1时,当MR2与TC匹配将产生中断;写0关闭此功能。0
7MR2R写1时,当MR2与TC匹配将会复位;写0关闭此功能。0
8MR2S写1时,当MR2与TC匹配将使PC和TC计数停止并且TCR[0]拉低(0);写0关闭此功能。0
9MR3I写1时,当MR3与TC匹配将产生中断;写0关闭此功能。0
10MR3R写1时,当MR3与TC匹配将会复位;写0关闭此功能。0
11MR3S写1时,当MR3与TC匹配将使PC和TC计数停止并且TCR[0]拉低(0);写0关闭此功能。0
15:12保留

//匹配寄存器
//匹配寄存器0
#define T1MR0(*((volatile unsigned long *) 0xE0008018))
//匹配寄存器1
#define T1MR1(*((volatile unsigned long *) 0xE000801C))
//匹配寄存器2
#define T1MR2(*((volatile unsigned long *) 0xE0008020))
//匹配寄存器3
#define T1MR3(*((volatile unsigned long *) 0xE0008024))
匹配寄存器的值将不断的和定时计数器(TC)的值进行比较。当二者相等时,相应行为将被自动触发。该行为可能产生一个中断、复位定时计数器、或者停止定时器。该行为由MCR寄存器的设置决定。

//捕获控制寄存器
#define T1CCR(*((volatile unsigned short *) 0xE0008028))
捕获控制寄存器用于控制四个捕获寄存器之一是否在捕获事件发生时加载定时计数器值,以及该捕获事件是否产生中断。
信号描述复位值
0CAP0RE写1时,捕获CAPn.0的上升沿,当上升沿到来时将导致CR0加载TC值。0
1CAP0FE写1时,捕获CAPn.0的下降沿,当下降沿到来时将导致CR0加载TC值。0
2CAP0I写1时,CAPn.0事件中断,CAPn.0事件将产生中断。0
3CAP1RE写1时,捕获CAPn.1的上升沿,当上升沿到来时将导致CR1加载TC值。0
4CAP1FE写1时,捕获CAPn.1的下降沿,当下降沿到来时将导致CR1加载TC值。0
5CAP1I写1时,CAPn.1事件中断,CAPn.1事件将产生中断。0
6CAP2RE写1时,捕获CAPn.2的上升沿,当上升沿到来时将导致CR2加载TC值。0
7CAP2FE写1时,捕获CAPn.2的下降沿,当下降沿到来时将导致CR2加载TC值。0
8CAP2I写1时,CAPn.2事件中断,CAPn.2事件将产生中断。0
9CAP3RE写1时,捕获CAPn.3的上升沿,当上升沿到来时将导致CR3加载TC值。0
10CAP3FE写1时,捕获CAPn.3的下降沿,当下降沿到来时将导致CR3加载TC值。0
11CAP3I写1时,CAPn.3事件中断,CAPn.3事件将产生中断。0
15:12保留NA


//捕获寄存器
//捕获寄存器0
#define T1CR0(*((volatile unsigned long *) 0xE000802C))
//捕获寄存器1
#define T1CR1(*((volatile unsigned long *) 0xE0008030))
//捕获寄存器2
#define T1CR2(*((volatile unsigned long *) 0xE0008034))
//捕获寄存器3
#define T1CR3(*((volatile unsigned long *) 0xE0008038))
每个捕获寄存器都和器件管脚相关联,当指定事件发生在外部管脚上时捕获寄存器也许要加载定时计数器值。捕获控制寄存器的设置决定是否捕获功能被使能,并且触发事件到底是在关联管脚的上升沿、下降沿或者双沿(包括上升沿和下降沿)。

//外部匹配寄存器
#define T1EMR(*((volatile unsigned short *) 0xE000803C))
外部匹配寄存器控制外部匹配管脚MAT(0-3),并可以读出其状态。
信号描述复位值
0EM0外部匹配0。该位反映了输出MAT0.0/MAT1.0的状态。当TC和MR0匹配时,该定时器输出可以为高、为低、或者不变。EMR[5:4]控制输出功能。0
1EM1外部匹配1。该位反映了输出MAT0.1/MAT1.1的状态。当TC和MR1匹配时,该定时器输出可以为高、为低、或者不变。EMR[7:6]控制输出功能。0
2EM2外部匹配2。该位反映了输出MAT0.2/MAT1.2的状态。当TC和MR2匹配时,该定时器输出可以为高、为低、或者不变。EMR[9:8]控制输出功能。0
3EM3外部匹配3。该位反映了输出MAT0.3/MAT1.3的状态。当TC和MR3匹配时,该定时器输出可以为高、为低、或者不变。EMR[11:10]控制输出功能。0
5:4EMC0外部匹配控制000
7:6EMC1外部匹配控制100
9:8EMC2外部匹配控制200
11:10EMC3外部匹配控制300
15:12保留NA
外部匹配控制
00——什么都不做
01——清除相应的外部匹配位/输出0
10——置位相应的外部匹配位/输出1
11——Toggle the corresponding External Match bit/output

//计数控制寄存器
#define T1CTCR(*((volatile unsigned long *) 0xE0008070))
该寄存器用于用于选择定时器或者计数器模式,计数模式下也用于选择计数时的管脚和边沿。
在计数器模式下,CAP输入(由CTCR寄存器的bit3:2选择)在每个PCLK时钟的上升沿被采样。在比较CAP的两个连续采样值后,产生以下四个事件中的一个:所选择CAP输入的上升沿、下降沿、沿变化、不变化。只有识别出了与CTCR寄存器的bit1:0所选择的事件相一致时,定时计数器寄存器将会增1。
实际上外部提供的时钟运行计数器有其局限性。PCLK两个连续的上升沿仅能用于识别一个CAP选择输入的变化沿,CAP输入频率不能够超过PCLK时钟的一半。所以,在同一个CAP输入的高或低电平至少必须保持1/PCLK时间以上。
信号描述复位值
1:0Counter/Timer mode00——定时器模式,每个PCLK的上升沿到来后PC值加1,或者复位PC同时TC加1;
01——计数器模式,由bit3:2选择的CAP的上升沿到来后TC值加1;
10——计数器模式,由bit3:2选择的CAP的下降沿到来后TC值加1;
11——计数器模式,由bit3:2选择的CAP的沿变化后TC值加1;
00
3:2Count input select00——CAP1.0 for Timer1
01——CAP1.1 for Timer1
10——CAP1.2 for Timer1
11——CAP1.3 for Timer1
00
7:4保留NA

// PWM控制寄存器
#define PWM1CON(*((volatile unsigned long *) 0xE0008074))
信号描述复位值
0PWM enable1——MATn.0的PWM模式使能
0——MATn.0由EM0控制
0
1PWM enable1——MATn.1的PWM模式使能
0——MATn.1由EM0控制
0
2PWM enable1——MATn.2的PWM模式使能
0——MATn.2由EM0控制
0
3PWM enable1——MATn.3的PWM模式使能
0——MATn.3由EM0控制
0
32:4保留NA


上一页 1 2 下一页

关键词: LPC2103timer0timer

评论


技术专区

关闭