key.h~

来自「按键是比较复杂。可以用状态机表示。 每10mS执行一次键盘扫描任务 0、无」· H~ 代码 · 共 34 行

H~
34
字号
#ifndef _KEY_LXF_H_#define	_KEY_LXF_H_#include <avr/io.h>/* ******************************************************************************* * keycode格式:   D7 D6 D5 D4 D3 D2 D1 D0 *                M1 M0 K5 K4 K3 K2 K1 K0 *  M1:M0 表示按键类型, 01 普通  10 长按键  11 连发按键 *  K5:K0 按键编号 总共可以支持2^6 - 1 = 63个按键 * *******************************************************************************/#define KTYPE_NO        0x00#define KTYPE_NORMAL    (1<<6)#define KTYPE_LONG      (2<<6)#define KTYPE_LIANFA    (3<<6)#define KTYPE_MASK	0xC0#define KCODE_MASK	0x3f/* 改为你所接的IO口,使用的是底4位,如果有不同的接法,需要修改key_read函数 */#define KEY_PIN     PINC#define	KEY_PORT    PORTC#define	KEY_DDR     DDRCextern void key_init(void);extern unsigned char key_scan(void);/* 获取按键类型 */#define GET_KTYPE(k)	((k)&KTYPE_MASK)/* 获取按键值 */#define GET_KCODE(k)	((k)&KCODE_MASK)#endif

⌨️ 快捷键说明

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