2024年5月16日发(作者:钱思松)
西北民族大学
1、定时器IC/OC功能选择寄存器TIOS
IOS[7..0]IC/OC功能选择通道
0 相应通道选择为输入捕捉(IC)
1 相应通道选择为输出比较(OC)
2、定时器比较强制寄存器 CFORC
FOC[7..0]设置该寄存器某个FOCn位为1将导致在相应通道上立即产生一个输出比较动作,在
初始化输出通道时候非常有用。
【说明】这个状态和正常状态下输出比较发生后,标志位未被置位后的情况相同。
3、输出比较7屏蔽寄存器 OC7M
OC7M[7..0]OC7(即通道7的输出比较)具有特殊地位,它匹配时可以直接改变PT7个输出引脚的
状态,并覆盖各个引脚原来的匹配动作结果,寄存器 OC7M决定哪些通道将处于
OC7的管理之下。OC7M中的各位与 PORTT口寄存器的各位一一对应。当通过
TIOS将某个通道设定为输出比较时,将 OC7M中的相应位置 1,对应的引脚就是输
出状态,与 DDR中的对应位的状态无关,但 OC7Mn并不改变 DDR相应位的状
态。
【说明】OC7M具有更高的优先级,它优于通过 TCTL1和 TCTL2寄存器中的 OMn和 OLn
设定的引脚动作,若 OC7M中某个位置 1,就会阻止相应引脚上由 OM和 OL设定的动作。
电子设计工作室
1
西北民族大学
4、输出比较7数据寄存器 OC7D
OC7D[7..0]OC7M对于其他 OC输出引脚的管理限于将某个二进制值送到对应引脚,这个值保
存在寄存器 OC7D中的对应位中。当 OC7匹配成功后,若某个 OC7Mn=1, 则内部
逻辑将 OC7Dn送到对应引脚。OC7D中的各位与 PORTT口寄存器的各位一一对
应。当通道 7比较成功时,如果 OC7M中的某个位为 1,OC7D中的对应位将被输
出到 PORTT的对应引脚。
【总结】通道7的输出比较(OC7)具有特殊的位置,在OC7Mn和OC7Dn两个寄存器设置以后,
OC7成功输出后将会引起一系列的动作。比如:OC7M0=1,则通道0处在OC7的管理
下,在OC7成功后,系统会将OC7D0的逻辑数据(仅限0或者1)反应在PT0端口上。另
外,在OC7Mn置位后,相应的引脚就被设置为输出引脚,与DDRTn无关了,OC7Mn
并不改变 DDR相应位的状态。
5、定时器核心计数寄存器 TCNT
TCNT[15..0]XS128 Timer模块的核心是一个16位自由运行计数器(TCNT),所有输入捕捉和输
出比较功能的计时信息都来源于TCNT,当定时器系统启用时,通过设置TSCR1的
TEN位,计数器从$0000开始,每经过一个模块时钟加1,直到加到$FFFF,然后自动
溢出为$0000并继续计数.16位自由记数器的当前值保存在两个8位寄存器中,高
的存在TCNTH,低的存在TCNTL中.综合这两个寄存器就形成TCNT.定义TCNT的
话,要定义为word型。
【说明】这里的模块时钟指的是,经过分频后的ECT模块所用的时钟,分频系数在TSCR2的低
三位。TCNT是一个递增的计数器,有很多人一直把它当做是递减的计数器。总之,TCNT就是
对ECT时钟进行计数的。
电子设计工作室
2
2024年5月16日发(作者:钱思松)
西北民族大学
1、定时器IC/OC功能选择寄存器TIOS
IOS[7..0]IC/OC功能选择通道
0 相应通道选择为输入捕捉(IC)
1 相应通道选择为输出比较(OC)
2、定时器比较强制寄存器 CFORC
FOC[7..0]设置该寄存器某个FOCn位为1将导致在相应通道上立即产生一个输出比较动作,在
初始化输出通道时候非常有用。
【说明】这个状态和正常状态下输出比较发生后,标志位未被置位后的情况相同。
3、输出比较7屏蔽寄存器 OC7M
OC7M[7..0]OC7(即通道7的输出比较)具有特殊地位,它匹配时可以直接改变PT7个输出引脚的
状态,并覆盖各个引脚原来的匹配动作结果,寄存器 OC7M决定哪些通道将处于
OC7的管理之下。OC7M中的各位与 PORTT口寄存器的各位一一对应。当通过
TIOS将某个通道设定为输出比较时,将 OC7M中的相应位置 1,对应的引脚就是输
出状态,与 DDR中的对应位的状态无关,但 OC7Mn并不改变 DDR相应位的状
态。
【说明】OC7M具有更高的优先级,它优于通过 TCTL1和 TCTL2寄存器中的 OMn和 OLn
设定的引脚动作,若 OC7M中某个位置 1,就会阻止相应引脚上由 OM和 OL设定的动作。
电子设计工作室
1
西北民族大学
4、输出比较7数据寄存器 OC7D
OC7D[7..0]OC7M对于其他 OC输出引脚的管理限于将某个二进制值送到对应引脚,这个值保
存在寄存器 OC7D中的对应位中。当 OC7匹配成功后,若某个 OC7Mn=1, 则内部
逻辑将 OC7Dn送到对应引脚。OC7D中的各位与 PORTT口寄存器的各位一一对
应。当通道 7比较成功时,如果 OC7M中的某个位为 1,OC7D中的对应位将被输
出到 PORTT的对应引脚。
【总结】通道7的输出比较(OC7)具有特殊的位置,在OC7Mn和OC7Dn两个寄存器设置以后,
OC7成功输出后将会引起一系列的动作。比如:OC7M0=1,则通道0处在OC7的管理
下,在OC7成功后,系统会将OC7D0的逻辑数据(仅限0或者1)反应在PT0端口上。另
外,在OC7Mn置位后,相应的引脚就被设置为输出引脚,与DDRTn无关了,OC7Mn
并不改变 DDR相应位的状态。
5、定时器核心计数寄存器 TCNT
TCNT[15..0]XS128 Timer模块的核心是一个16位自由运行计数器(TCNT),所有输入捕捉和输
出比较功能的计时信息都来源于TCNT,当定时器系统启用时,通过设置TSCR1的
TEN位,计数器从$0000开始,每经过一个模块时钟加1,直到加到$FFFF,然后自动
溢出为$0000并继续计数.16位自由记数器的当前值保存在两个8位寄存器中,高
的存在TCNTH,低的存在TCNTL中.综合这两个寄存器就形成TCNT.定义TCNT的
话,要定义为word型。
【说明】这里的模块时钟指的是,经过分频后的ECT模块所用的时钟,分频系数在TSCR2的低
三位。TCNT是一个递增的计数器,有很多人一直把它当做是递减的计数器。总之,TCNT就是
对ECT时钟进行计数的。
电子设计工作室
2