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

📄 keyboardservice.c

📁 实现51单片机的日历功能 用T2定时器作为基本时钟中断
💻 C
字号:
#include <regx52.h>
#include "KeyBoardService.h"

unsigned char modal;
char left=3;
void AddTime()
{
	switch(left)
	{
		case 0:
		{
			display[0]++;
			if(display[0] > 2)	display[left] = 0;
			break;
		}
	    case 1:
		{
			display[1]++;
			if(display[1] > 3)	display[1] = 0;
			break;
		}
		case 2:
		{
			display[2]++;
			if(display[2] > 5)	display[2] = 0;
			break;
		}
		case 3:
		{
			display[3]++;
			if(display[3] > 9) display[3] = 0;
			break;
		}
	}
}


void KeyBoardService()
{
	if(press_flag == 2)
	{
		press_flag = 0;
		if(key_value == S3)
		{	
			modal++;			//modal 0为正常工作 1为设定时钟
			if(modal > 1) 
			{
				modal = 0;
				left = 3;
				min = 10*display[2] + display[3];
				hour = 10*display[0] + display[1];
			}
		}
		if(modal == 1)
		{
			EX0=0;
			switch(key_value)		//S3修改工作方式	S4时间修改位左移	S5时间位数据加1
			{
				case S4:	
					{
						left--;
						if(left < 0) left = 3;
					};break;
				case S5:	AddTime();break;
				default:	break;
			}
		}
		else if(modal == 0)	EX0=1;
	}
}

⌨️ 快捷键说明

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