打印
[STM32F4]

stm32f407之基本定时器TIM6&TIM7(操作寄存器)

[复制链接]
1938|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
energy1|  楼主 | 2015-3-30 20:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
基本定时器TIM6&TIM7


      基本定时器TIM6和TIM7包括一个由可编程分频器驱动的16位自动重载计数器。它可以用作普通的定时器,也可以用来驱动DAC。这两个定时器是完全独立的,不共享任何资源。更多时候是与DAC平配合使用。
作为定时器的配置步骤:
1.      设置中断优先级分组(如果之前没有设置),这个最好一个程序里只在开头设置一次。
2.     使能相关时钟。
3.     设置分频。
4.     清空计数器的值。
5.     设置自动重装寄存器的值。
6.     是否允许中断。
7.     如果允许中断,设置中断优先级,使能中断。
8.     使能计数器。
程序:
[plain] view plaincopy


  • /************************************  
  •     标题:定时器TIM7的定时练习  
  •     软件平台:IAR for ARM6.21  
  •     硬件平台:stm32f4-discovery  
  •     主频:168M  
  •       
  •     author:小船  
  •     data:2012-02-06  
  • *************************************/  
  •   
  • #include <stm32f4xx.h>   
  • #include "MyDebugger.h"  
  •   
  • void main ()  
  • {     
  •   
  •   SCB->AIRCR = 0x05FA0000 | 0x400;  //中断优先级分组 抢占:响应=3:1  
  •    
  •   RCC->APB1ENR |= (1<<5); //打开TIM7时钟  
  •   TIM7->PSC = 8399; //对时钟84M进行8400分频,使得计数频率为10k  
  •   TIM7->ARR = 10000;  //定时一秒  
  •   TIM7->CNT = 0;  //清空计数器  
  •   TIM7->CR1 |= (1<<7); //自动重装载预装载使能  
  •   TIM7->DIER |= 1; //使能中断  
  •   NVIC->IP[55] = 0x80;  
  •   NVIC->ISER[1] |= (1<<(55-32));  
  •   TIM7->CR1 |= 1; //开始计时  
  •   MyDebugger_Init();  
  •   while(1)  
  •   {  
  •   };  
  • }  
  •   
  • void TIM7_IRQHandler(void)  
  • {  
  •   if(TIM7->SR)  
  •   {  
  •     MyDebugger_LEDs(blue, turn);  
  •     TIM7->SR &= ~(0x0001);   
  •   }  
  • }  


沙发
powerful1| | 2015-3-30 21:02 | 只看该作者
基本定时器TIM6和TIM7包括一个由可编程分频器驱动的16位自动重载计数器。它可以用作普通的定时器,也可以用来驱动DAC。这两个定时器是完全独立的,不共享任何资源。更多时候是与DAC平配合使用。

使用特权

评论回复
板凳
vigous1| | 2015-3-30 21:30 | 只看该作者
stm32f407之基本定时器TIM6&TIM7

使用特权

评论回复
地板
Vitality1| | 2015-3-30 21:34 | 只看该作者
更多时候是与DAC平配合使用

使用特权

评论回复
5
搞IT的| | 2015-3-30 21:38 | 只看该作者
感谢楼主,以后请多多指教。。

使用特权

评论回复
6
Vitality1| | 2015-3-30 21:45 | 只看该作者
这两个定时器是完全独立的,不共享任何资源

使用特权

评论回复
7
powerful1| | 2015-3-30 21:54 | 只看该作者

感谢楼主,以后请多多指教。。

使用特权

评论回复
8
zh113214| | 2015-3-30 22:05 | 只看该作者
TIM7->PSC = 8399; //对时钟84M进行8400分频,使得计数频率为10k  ??怎么做的啊

使用特权

评论回复
9
quray1985| | 2015-3-30 22:23 | 只看该作者
这两个定时器是相互独立的吗?有没有共享资源,能同时用吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

94

主题

422

帖子

10

粉丝