• 大小: 21KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-06-08
  • 语言: 其他
  • 标签: ATmega16  秒表  

资源简介

基于ATmega16单片机,利用单片机的定时器实现秒表功能。通过按键实现开始计时和复位功能。有PROTEUS7.5的原理图。

资源截图

代码片段和文件信息

#include 
#include 
#define  uchar unsigned char
#define  uint  unsigned int
uchar const SEG7[10]={0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f};
uchar const ACT[8]={0xfe0xfd0xfb0xf70xef0xdf0xbf0x7f};
uchar num1=0num2=0flag;
//=========================
void delay_ms(uint k)//延时函数
{  uint ij;
   for(i=0;i   {
     for(j=0;j<1140;j++);
   }
}
//======================
void show(uint juint k)//数码管显示函数
{   
    PORTB=0xff;
PORTA=SEG7[j];
PORTB=ACT[k];
delay_ms(1);
}
//=======================
void show_mark(uint juint k)//数码管显示小数点函数
{
    PORTB=0xff;
    PORTA=SEG7[j]|0x80;
PORTB=ACT[k];
delay_ms(1);
}
//=========================
void port_init()//端口初始化函数
{
    PORTA = 0x00;//段选
    DDRA  = 0xFF;
    PORTB = 0xFF;//位选
    DDRB  = 0xFF;
DDRD=0x00;//开始和停止按键
PORTD=0xff;
}
//========================  
void main()

    uint ijk;
    port_init();
TCCR1B=0X03;//64分频
TCNT1H=0Xcf;//100ms定时初值
TCNT1L=0X2c;
TIMSK|=BIT(2);

MCUCR=0x0a;
GICR=0xc0;

SREG|=BIT(7);

while(1)
{

show(num1/101);      
show(num1%100);
show_mark(num2%102);
show(num2/103);
}
}
#pragma interrupt_handler miao:9//定时器1中断,计数
void miao()
{
    uint i=0;
    TCNT1H=0Xcf;//重装100ms定时初值
TCNT1L=0X2c;
if(flag==1)
{
   do{

   }while((++i)<10);
   num1++;
       if(num1>59){num1=0;num2++;}
   if(num2>59){num2=0;}
    }
}
#pragma interrupt_handler int1_isr:3//INT1中断,开始计数
void int1_isr(void)
{
   flag=1;
}

#pragma interrupt_handler int0_isr:2//INT0中断,停止,回到0
void int0_isr(void)
{
  flag=0;
  num1=0;num2=0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     129806  2010-08-24 20:31  基于ATmega16单片机的定时器中断秒表\定时器显示时钟实验.DSN

     文件       1730  2010-08-24 20:30  基于ATmega16单片机的定时器中断秒表\定时器显示秒表实验.c

     目录          0  2010-09-02 17:51  基于ATmega16单片机的定时器中断秒表

----------- ---------  ---------- -----  ----

               131536                    3


评论

共有 条评论