| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- #include "hal_key.h"
- #include "mod_key.h"
- #include "sys_timer.h"
- #include "sys_log.h"
- #include "button.h"
- #include "hal_key.h"
- #define CHECK_KEY_TIMER_TICK 50
- Button_t Button1;
- static uint8_t g_s_press_flag;
- key_long_press_callback_fp g_s_key_press_callback;
- // static void Btn1_Press_Callback(void)
- // {
- // DLOG_I("Btn1_Press_Callback");
- // }
- static void Btn1_Long_Callback(void* params)
- {
- if(g_s_press_flag == 0)
- {
- g_s_press_flag = 1;
- g_s_key_press_callback();
- }
- }
- static void Btn1_Longfree_Callback(void* params)
- {
- g_s_press_flag = 0;
- }
- static void check_key_status_timer_callback(void)
- {
- Button_Process(); //��Ҫ���ڵ��ð�����������
- }
- void MOD_KeyInit(key_long_press_callback_fp fp)
- {
- g_s_key_press_callback = fp;
- HAL_KeyInit();
- Button_Create("Button1", &Button1, HAL_KeyGetStatus, KEY_PRESS_STATUS); //���Ϊ��ȡ������ƽ�ӿ�,��������ʱ��ƽ״̬
- // Button_Attach(&Button1, BUTTON_DOWM, Btn1_Press_Callback); //����
- Button_Attach(&Button1, BUTTON_LONG, Btn1_Long_Callback); //����
- Button_Attach(&Button1, BUTTON_LONG_FREE, Btn1_Longfree_Callback); //�����ͷ�
- Get_Button_Event(&Button1);
- HAL_TimerRegister(check_key_status_timer_callback, CHECK_KEY_TIMER_TICK);
- }
|