⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timing.c

📁 使用AVR单片机实现的万年历功能,其中使用了ds1302和1602
💻 C
字号:
#include "timing.h"

interrupt [TIM0_COMP] void Timer0CompIsr(void)
{
	time2msIsOK = 1;	//中断中置2ms时间到
}
/*****************************************************
函数void TimingInit(void)为计时初始化函数
*****************************************************/
void TimingInit(void)
{
	TCCR0 = 0x0B;       //CTC模式,64分频,PB3为通用引脚(OC0不与其连接)
	OCR0 = 0x7C;        //OCR0置124
	TIMSK |= 0x02;      //允许TIM0比较匹配中断
	time10msCounter = 0;
	time500msCounter = 0;
	time2sCounter = 0;
	time20sCounter = 0;
}
/*****************************************************************
函数void FindTime(void)为查询2ms,10ms,500ms,2s,20s是否到的函数
*****************************************************************/
void FindTime(void)
{
	if (time2msIsOK)
	{
		time2msIsOK = 0;
        
		if(++time10msCounter == 5)
        {
			time10msIsOK = 1;
            time10msCounter = 0;                    
			
			if(++time500msCounter == 50)
            {
				time500msIsOK = 1;
				time500msCounter = 0;                                     
                
				if(++time2sCounter == 4)
				{
					time2sIsOK = 1;
					time2sCounter = 0;
					
					if(++time20sCounter == 10)
					{
						time20sIsOK = 1;
						time20sCounter = 0;
					}
                                                
				}
                                        
			}
                                
		}       
                        
	}  
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -