02 AVR定时器的探索
2017-03-15 09:03
134 查看
首先先说一下AVR8位的通用定时器寄存器T/C0:
有一句不太理解的话:所有中断都可以通过 (定时器中断屏蔽寄存器)TIMSK单独进行屏蔽。
解释:TIMSK寄存器是一个定时器/计数器中断屏蔽寄存器,就是说TIMSK可以去单独屏蔽一些中断。
适用于内部的定义: BOTTOM 计数器达到0x00时即达到BOTTOM MAX:计数器计数达到最大值时达到MAX
时钟源的配置:可以选择内部时钟配置或者外部时钟配置。
计数器的操作:对于计数器来说,计数器计数始终增加,当计数器值超过0xff时,从ox00开始重新计数。当TCNT0计数器置为0时,溢出标志位TOV0置位。
TOV0可以通国定时器溢出中断清零。
/*下面正式进入定时器的探究学习*/
定时器的操作:首先肯定是需要设定初值,然后给定时器设置的一般步骤是(1)配置TIMSK寄存器-溢出中断使能哪一个定时器;(2)配置TCCRX寄存器,设定时钟源信号分频率;(3)配置TCNTX寄存器,设定初值。
那么在中断函数中的使用最主要的一点是将中断向量地址映射到正确的地方上,一般来说定时器的中断向量地址必须在TIFR寄存器中配置0位-TVOX溢出标志位来判断是否进入定时器中断,但是在AVR中,直接在中断函数名中映射中断溢出向量也可以达到这个目的:
interrupt [TIM2_OVF] void timer2_ovf_isr(void) //其中的TIM2_OVF便是定时器2的溢出标志位
定时器中断进入后,一般需要重置定时的初值 TCNTX,然后编写代码函数。
所以总结一下。定时器的操作:
定时器的初始化:
(1)配置TIMSK 中断溢出使能
(2)配置TCCRX 定时器使能
(3)配置TCNTX 定时器初始化的配置
定时器中断的设置:
(1)函数名的配置--必须和定时器的中断变量映射一致
(2)进入函数后最好先初始化定时器TCNTX的初值
有一句不太理解的话:所有中断都可以通过 (定时器中断屏蔽寄存器)TIMSK单独进行屏蔽。
解释:TIMSK寄存器是一个定时器/计数器中断屏蔽寄存器,就是说TIMSK可以去单独屏蔽一些中断。
适用于内部的定义: BOTTOM 计数器达到0x00时即达到BOTTOM MAX:计数器计数达到最大值时达到MAX
时钟源的配置:可以选择内部时钟配置或者外部时钟配置。
计数器的操作:对于计数器来说,计数器计数始终增加,当计数器值超过0xff时,从ox00开始重新计数。当TCNT0计数器置为0时,溢出标志位TOV0置位。
TOV0可以通国定时器溢出中断清零。
/*下面正式进入定时器的探究学习*/
定时器的操作:首先肯定是需要设定初值,然后给定时器设置的一般步骤是(1)配置TIMSK寄存器-溢出中断使能哪一个定时器;(2)配置TCCRX寄存器,设定时钟源信号分频率;(3)配置TCNTX寄存器,设定初值。
那么在中断函数中的使用最主要的一点是将中断向量地址映射到正确的地方上,一般来说定时器的中断向量地址必须在TIFR寄存器中配置0位-TVOX溢出标志位来判断是否进入定时器中断,但是在AVR中,直接在中断函数名中映射中断溢出向量也可以达到这个目的:
interrupt [TIM2_OVF] void timer2_ovf_isr(void) //其中的TIM2_OVF便是定时器2的溢出标志位
定时器中断进入后,一般需要重置定时的初值 TCNTX,然后编写代码函数。
所以总结一下。定时器的操作:
定时器的初始化:
(1)配置TIMSK 中断溢出使能
(2)配置TCCRX 定时器使能
(3)配置TCNTX 定时器初始化的配置
定时器中断的设置:
(1)函数名的配置--必须和定时器的中断变量映射一致
(2)进入函数后最好先初始化定时器TCNTX的初值
相关文章推荐
- AVR之最简单外部中断、定时器0、定时器1程序
- 【Java多线程与并发库】02 传统定时器技术
- 打打基础,回头看看avr单片机的定时器、中断和PWM(转)
- 1. avr定时器/计数器0 --TC0 --CTC模式输出PWM (比较匹配发生时清除计数器模式(即CTC模式))
- 2. avr定时器/计数器0 --TC0 --快速PWM输出 (比较输出--快速PWM模式)
- 3 Javascript:探索客户端-定时器
- Cocos2dx-3.1.1 探索之旅02----> 浅析cpp-empty-test运行流程
- avr -- at90can128芯片 定时器/计数器3
- AVR中定时器的使用
- IAR For AVR 定时器溢出中断 (使用小结)
- 探索ORACLE_之表空间02_管理
- ZedBoard-自定义PWM外设及TTC定时器API探索
- 4. avr 定时器/计数器1 --TC1 --CTC模式输出PWM (比较匹配发生时清除计数器模式(即CTC模式))
- AVR定时器的要点介绍
- 5. avr定时器/计数器1 --TC1 --快速PWM输出 (比较输出--快速PWM模式)
- 02_张孝祥_Java多线程_传统定时器Timer
- VS中Qt的探索02
- AVR——使用定时器必须弄清的几个概念
- apue 02 管道 定时器
- 探索Oracle 11gR2 DataGuard_02配置