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

📄 key.c

📁 TECHWELL 之tw2835 四画面合一之驱动代码,CCIR656输出,KEIL C51 平台编译,
💻 C
字号:
#include	"hdr.h"
//#include	"key0.h"

//==================================================================================
//						Key definition & variable description
//==================================================================================
U8 bdata	key0_flg = 0x0;
sbit	b_key0_past = key0_flg^0;
sbit	b_key0_rlse = key0_flg^1;
sbit	b_key0_pshd = key0_flg^2;
sbit	b_key0_pshng = key0_flg^3;
sbit	b_key0_dwn = key0_flg^4;
sbit	b_key0_clk = key0_flg^5;
sbit	b_key0_pshng_clk = key0_flg^6;

sbit	b_key0_tmp = key0_flg^7;

U8	key0_cnt = 0;

//U8 bdata	key1_flg = 0x0;
//sbit	b_key1_past = key1_flg^0;
//sbit	b_key1_rlse = key1_flg^1;
//sbit	b_key1_pshd = key1_flg^2;
//sbit	b_key1_pshng = key1_flg^3;
//sbit	b_key1_dwn = key1_flg^4;
//sbit	b_key1_clk = key1_flg^5;
//sbit	b_key1_pshng_clk = key1_flg^6;
//
//sbit	b_key1_tmp = key1_flg^7;
//
//U8	key1_cnt = 0;


//==================================================================================
//						Key function description
//==================================================================================
void	SetKey0(void)
{
	if(P3_0 != b_key0_past){
		b_key0_past = P3_0;
		
		if(b_key0_past == 1){									// detecting low to high(button up) transition.
			b_key0_rlse = 1;
			if(b_key0_pshd == 1)	b_key0_clk = 1;
			b_key0_pshd = 0;
			b_key0_pshng = 0;
		}
		else{															// detecting high to low(button down) transition.
			if((b_key0_pshd == 0)&&(b_key0_pshng == 0)){
				b_key0_pshd = 1;
				b_key0_rlse = 0;
				b_key0_dwn = 1;

//				if((b_key0_pshd == 0)||(b_key0_pshng == 1))
					key0_cnt = KEY_CNT_CHTR;				//... default
			}
		}
	}
	else{
		if(b_key0_pshd == 1){
			if(key0_cnt > 0)	key0_cnt--;
			else{
				if(b_key0_pshng == 0){
					b_key0_pshng = 1;								// pushing button checking
				}
				else	b_key0_pshng_clk = 1;		// continuous button checking
				
				key0_cnt = KEY_CNT_CHTR>>2;				//... default
			}
		}
	}
}
//==================================================================================
//void	SetKey1(void)
//{
//	if(P3_1 != b_key1_past){
//		b_key1_past = P3_1;
//		
//		if(b_key1_past == 1){									// detecting low to high(button up) transition.
//			b_key1_rlse = 1;
//			if(b_key1_pshd == 1)	b_key1_clk = 1;
//			b_key1_pshd = 0;
//			b_key1_pshng = 0;
//		}
//		else{															// detecting high to low(button down) transition.
//			if((b_key1_pshd == 0)&&(b_key1_pshng == 0)){
//				b_key1_pshd = 1;
//				b_key1_rlse = 0;
//				b_key1_dwn = 1;
//
////				if((b_key1_pshd == 0)||(b_key1_pshng == 1))
//					key1_cnt = KEY_CNT_CHTR;				//... default
//			}
//		}
//	}
//	else{
//		if(b_key1_pshd == 1){
//			if(key1_cnt > 0)	key1_cnt--;
//			else{
//				if(b_key1_pshng == 0){
//					b_key1_pshng = 1;								// pushing button checking
//				}
//				else	b_key1_pshng_clk = 1;		// continuous button checking
//				
//				key1_cnt = KEY_CNT_CHTR>>2;				//... default
//			}
//		}
//	}
//}
//==================================================================================


⌨️ 快捷键说明

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