热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

AVR之最简单外部中断、定时器0、定时器1程序

AVR之最简单外部中断、定时器0、定时器1程序2010-08-3011:39:15标签:avr休闲定时器
 AVR之最简单外部中断、定时器0、定时器1程序
2010-08-30 11:39:15
标签: avr  休闲  定时器  外部中断  职场
原创作品,允许转载,转载时请务必以超链接形式标明文章  原始出处 、作者信息和本声明。否则将追究法律责任。 http://maoge.blog.51cto.com/2068224/385102
程序太简单啦,就不说啦,自己看吧
ATMEGA16用ICCAVR编译器
1、外部中断
#include 
#include  
unsigned  char temp=0x80; 
void main() 
{     
    DDRA=0xff; 
    GICR|=0x40; //使能外部INT0 
    MCUCR|=0x01; //INT0下降沿触发 
    SEI(); //总中断 
     while(1); 

#pragma interrupt_handler int0_isr:iv_INT0 
void int0_isr( void

    PORTA=temp; 
    temp=temp>>7|temp<<1; 

 
2、定时器0--普通模式
#include 
#include  
unsigned  char count; 
void main() 

     //TCCR0=0; 
  TCNT0=12; 
   //OCR0=244; 
  TCCR0=0x05; 
  TIMSK=0x01; 
  SEI(); 
  DDRA=0xff; 
  PORTA=0; 
   while(1); 

#pragma interrupt_handler Timer0:iv_TIMER0_OVF 
void Timer0() 

     TCNT0=12; 
     count++; 
     if(count==2) 
    { 
      PORTA=~PORTA; 
    count=0; 
    } 
}
3、定时器0--匹配模式
#include 
#include  
void main() 

     //TCCR0=0; 
  TCNT0=12; //设置计数初值,计数244后清零申请中断 
  OCR0=244; //从0计数到244,匹配申请中断 
  TCCR0=0x0d; //CTC模式,1024预分频 
  TIMSK=0x02; //使能输出比较匹配中断 
  SEI(); 
  DDRA=0xff; 
  PORTA=0; 
   while(1); 

#pragma interrupt_handler Timer0:iv_TIMER0_COMP 
void Timer0() 

     count++; 
     if(count==2) 
    { 
      PORTA=~PORTA; 
    count=0; 
    } 
}
4、定时器1
#include 
#include 
void main() 

    TCCR1A=0; //WGM11、10清零 
  TCCR1B=0; 
  TCNT1H=0x0b; 
  TCNT1L=0xdb; 
  TCCR1B=2; //WGM13、12清零,为普通模式,时钟选择CS02~00:8预分频 
    TIMSK=0x04; 
  SEI(); 
  DDRA=0xff; 
  PORTA=0; 
   while(1); 

#pragma interrupt_handler timer1:iv_TIMER1_OVF 
void timer1() 

     TCNT1H=0x0b; 
    TCNT1L=0xdb; 
    PORTA=~PORTA; 

本文出自 “依旧安静” 博客,请务必保留此出处http://maoge.blog.51cto.com/2068224/385102


推荐阅读
author-avatar
手机用户2502853355
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有