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

📄 adc_key.h

📁 avr adc control source and adc key input source
💻 H
字号:
#ifndef __ADC_KEY_H
#define __ADC_KEY_H
//------------------------------------------------------------------------------
#include "lcd.h"
#include "types.h"
#include "delay.h"
#include "Constants.h"
#include "uart.h"


//------------------------------------------------------------------------------

#define	ENABLE					0x01
#define	DISABLE					0x00
#define	ON						0x01
#define	OFF						0x00

#define CLR					0

#define ADC_NUM3		0x03
/*************************************************/
/*
#define PD_MHZ_KEY     	92
#define PD_KHZ_KEY     	169
#define PD_ATT_KEY      235
#define UP_KEY       		292

#define THRE_UP_KEY       	365
#define PWD_UP_KEY       		436
#define PD_GAIN_UP_KEY  		486
#define NS_GAIN_UP_KEY    	535

#define NS_MHZ_KEY     	612
#define NS_KHZ_KEY     	679
#define NS_ATT_KEY      745
#define DOWN_KEY       	798

#define THRE_DOWN_KEY  			849
#define PWD_DOWN_KEY    		893
#define PD_GAIN_DOWN_KEY    918
#define NS_GAIN_DOWN_KEY    995
*/
/***********************************************/
#define KEY_MAX_VALUE				10

#define ATT_UP_KEYMAX     	92+KEY_MAX_VALUE
#define ATT_DOWN_KEYMAX     170+KEY_MAX_VALUE
#define KHZ_UP_KEYMAX       235+KEY_MAX_VALUE
#define KHZ_DOWN_KEYMAX     292+KEY_MAX_VALUE

#define PD_MHZ_KEYMAX     	92+KEY_MAX_VALUE
#define PD_KHZ_KEYMAX      	170+KEY_MAX_VALUE
#define PD_ATT_KEYMAX       235+KEY_MAX_VALUE
#define UP_KEYMAX        		292+KEY_MAX_VALUE

#define THRE_UP_KEYMAX      365+KEY_MAX_VALUE
#define PWD_UP_KEYMAX       436+KEY_MAX_VALUE
#define PD_GAIN_UP_KEYMAX   486+KEY_MAX_VALUE
#define NS_GAIN_UP_KEYMAX   535+KEY_MAX_VALUE

#define NS_MHZ_KEYMAX      	612+KEY_MAX_VALUE
#define NS_KHZ_KEYMAX      	679+KEY_MAX_VALUE
#define NS_ATT_KEYMAX       745+KEY_MAX_VALUE
#define DOWN_KEYMAX        	798+KEY_MAX_VALUE

#define THRE_DOWN_KEYMAX   	849+KEY_MAX_VALUE
#define PWD_DOWN_KEYMAX     893+KEY_MAX_VALUE
#define PD_GAIN_DOWN_KEYMAX 918+KEY_MAX_VALUE
#define NS_GAIN_DOWN_KEYMAX 995+KEY_MAX_VALUE

/////////////////////////////////////////////////////////////////////////////
// KEY Attribute
#define SLIDE_FIXED_TYPE		0x01	// Slide Fixed input Key [ Hold Key ]
#define	SHORT_PUSH_TYPE			0x02	// One push	
#define	LONG_PUSH_TYPE			0x04	// Push and Hold
#define	REPEAT_PUSH_TYPE		0x08	// Call Repeat Key action // by a fixed duration 
//#define	ACCEL_REPEAT_PUSH	0x10	// Call Repeat Key action by a flexable duration 


// KEY Analysis Result Type
#define	NO_PUSH					0x00
#define FIRST_PUSH				0x01
#define ALWAYS_PUSH				0x02
#define SHORT_PUSH				0x03
#define LONG_PUSH				0x04
#define	PUSH_AND_HOLD			0x05


#define KEY_NO_INPUT			0xFF

#define REPEAT_TIME_SLOW		5 //5		// 100mS (??.. maybe it's not exact)
#define REPEAT_TIME_FAST		2		// 40mS
#define HOLD_TIME_SLOW			50	//100		// 2S
#define HOLD_TIME_FAST			10	//20		// 400mS



void adc_init(u08 channel);
void Adc_Start( u08 channel );
void Adc_Stop( u08 channel );
unsigned short Adc_Data( unsigned char mux );

//void KEY_InitKeyAttribute(void);
void KEY_SetKeyEnable(u08 OnOff);
unsigned char KEY_CheckKeyStatus(void);
unsigned char KEY_GetKeyNum(void);
unsigned char KEY_GetKeyType(void);
void KEY_CheckADInput(void);
void KEY_CheckValidKey(void);
void KEY_CheckNewADInput(void);
void KEY_InitNewKeyAttribute(void);
//------------------------------------------------------------------------------
#endif

⌨️ 快捷键说明

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