打印
[AVR单片机]

可是定时器1启动不了,不知道哪里出问题了,能给个初始化程序么

[复制链接]
1345|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liuhuonihao|  楼主 | 2014-9-4 10:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
//T1溢出中断服务程序
#pragma interrupt_handler timer1_ovf_isr:9
void timer1_ovf_isr(void)
{  
   PORTA=~PORTA;//A口翻转
    TCNT1L=0xF3;//重装初值
    TCNT1H=0xFC;
}

//main函数
void main(void)
{
  DDRA=0xff;
  PORTA=0xff;
  TCCR1A=0;
  TCCR1B=0x05;
  TCNT1L=0xF3;
  TCNT1H=0xFC;
  TIMSK =(1<<TOIE1) ; //定时器中断使能
  SEI();   //开全局中断
  while(1);
}  

相关帖子

沙发
qq4988| | 2014-9-4 11:19 | 只看该作者
/********************************************************************
* 名称 : void Timer0_Init(void)
* 功能 : 定时器0初始化程序   TIME0用于计数功能
* 输入 : 无
* 输出 : 无
***********************************************************************/
void Timer0_Init(void)
{
  TCCR0  =  0;//关闭定时器
  TCNT0  = 4;//255-250,定时1MS ,计数20下,则为20ms,为一个周期
  TIMSK  |= BIT(TOIE0) ;//中断允许  
  TIFR   |= BIT(TOV0) ;//写1清零          
  TCCR0  |= BIT(CS00) | BIT(CS01);//16MHz,64分频
}
/********************************************************************
* 名称 : void  T0_START(void)
* 功能 : 定时器0开启
* 输入 : 无
* 输出 : 无
***********************************************************************/
void  T0_START(void)
{
        TCCR0  |= BIT(CS00) | BIT(CS01);//16MHz,64分频
}
/********************************************************************
* 名称 : void  T0_STOP(void)
* 功能 : 定时器0关闭
* 输入 : 无
* 输出 : 无
***********************************************************************/
void  T0_STOP(void)
{
        TCCR0 = 0;//16MHz
}

使用特权

评论回复
板凳
leesff| | 2014-9-4 22:35 | 只看该作者
编译的时候 没出问题?

使用特权

评论回复
地板
SD10A| | 2014-9-6 11:00 | 只看该作者
void main(void)
{
  DDRA=0xff;
  PORTA=0xff;
CLI();//先屏蔽全局中断
  TCCR1A=0;
  TCCR1B=0x05;
TCNT1H=0xFC;
  TCNT1L=0xF3;
//先写高位

  TIMSK =(1<<TOIE1) ; //定时器中断使能
  SEI();   //开全局中断
  while(1);
}  

你先试验下,我电脑没编译器

使用特权

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

本版积分规则

13

主题

31

帖子

0

粉丝