mcu_hi3321_watch/tjd/driver/hr/hr_api.h
2025-05-26 20:15:20 +08:00

75 lines
1.6 KiB
C

/*----------------------------------------------------------------------------
* Copyright (c) TJD Technologies Co., Ltd. 2020. All rights reserved.
*
* Description: hr_api.h
*
* Author: liangjianfei
*
* Create: 2024-4-26
*--------------------------------------------------------------------------*/
#ifndef _HRSENSOR_API_H_
#define _HRSENSOR_API_H_
#include <stdint.h>
#include "errcode.h"
#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif
typedef enum {
NORMAL_MODE,
RIDE_MODE,
WALK_MODE,
JUMP_MODE,
ALLDAY_HR_MODE,
HIGH_POW_MODE,
HIKE_MODE
} hrs_sports_mode_t;
enum HR3695_MODE{
HR3695_HRS_MODE,
HR3695_SPO2_MODE,
HR3695_WEAR_MODE,
HR3695_HRV_MODE,
HR3695_HRSDAILY_MODE,
HR3695_LIVING_MODE,
HR3695_LAB_TEST_MODE,
HR3695_FT_LEAK_LIGHT_MODE,
HR3695_FT_GRAY_CARD_MODE,
HR3695_FT_INT_TEST_MODE,
HR3695_FT_SINGLE_CHECK_MODE,
HR3695_FT_LED_OFF_MODE,
HR3695_FT_WEAR_MODE,
HR3695_NULL_MODE,
HR3695_CLOSE,
HR3695_MODE_MAX
};
typedef struct{
errcode_t (*open)(void);
errcode_t (*close)(void);
#ifdef TJD_PCBA_0
void (*hrsensor_low_power)(void);
void (*hrsensor_normal_power)(void);
void (*hrsensor_processing_handle)(void); //40ms执行一次
#elif defined(TJD_PCBA_1)
void (*mode_set)(enum HR3695_MODE);
void (*sport_mode_set)( hrs_sports_mode_t mode);
#endif
}hrsensor_info;
#ifdef TJD_PCBA_0
void tjd_driver_hr_api_alg_init(void);
#endif
hrsensor_info *tjd_driver_hr_api_get_ops(void);
#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif
#endif