optical/NxBase/buttons.h
2025-09-04 09:45:08 +08:00

38 lines
825 B
C

#ifndef __BUTTONS_H__
#define __BUTTONS_H__
#include "config.h"
//-------------------------------------------------------------------
typedef u8 (*ScanFunc)(void);
typedef int (*TaskFunc)(void);
typedef void (*DelayRun)(u32);
//-------------------------------------------------------------------
#define DIS_DOWN_TASK 0x01 // 屏蔽按钮按下事件响应
#define DIS_LDOWN_TASK 0x02 // 屏蔽按钮长按事件响应
#define DIS_CLICK_TASK 0x04 // 屏蔽按钮点击事件响应
void InitButtonCtrl(void);
int AddButtonToList(ScanFunc fp, u8 sta, TaskFunc ldtsk, TaskFunc ctsk, TaskFunc dtsk, TaskFunc dqtsk);
void ScanButtons(void);
void ButtonsTask(void);
void CleanButtonTask(void);
int WaitAllButtonUp(void);
void RegDelayFun(DelayRun delay);
//-------------------------------------------------------------------
#endif