WXK
2024-01-31 cb037453c59b56bea6dba09c4211d5180571b41f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/*******************************************************************************
 * File Name         : Lock.h
 * Description       :
 * Created on        : 2018Äê8ÔÂ8ÈÕ
 * Author            : ¶Å¼ü
 *******************************************************************************/
#ifndef _LOCK_H_
#define _LOCK_H_
 
/*******************************************************************************
 *                              Include Files                                  *
 *******************************************************************************/
#include "HIDO_TypeDef.h"
 
/*******************************************************************************
 *                                  Macro                                      *
 *******************************************************************************/
 
#define LOCK_MIN_ID                                     1
#define LOCK_MAX_ID                                     3
 
/*******************************************************************************
 *                             Type Definition                                 *
 *******************************************************************************/
 
typedef enum
{
    LOCK_CTRL_PIN_0,
    LOCK_CTRL_PIN_1,
 
    LOCK_CTRL_PIN_LAST
} E_LockCtrlPin;
 
typedef enum
{
    LOCK_STATE_PIN_0,
    LOCK_STATE_PIN_1,
 
    LOCK_STATE_PIN_LAST
}E_LockStatePin;                
 
typedef enum
{
    LOCK_PIN_LOCK_STATE_LOW,
    LOCK_PIN_LOCK_STATE_HIGH,
} E_LockPinLockState;
 
typedef enum
{
    LOCK_STATE_LOCK,
    LOCK_STATE_UNLOCK,
} E_LockState;
 
/*******************************************************************************
 *                             Global Function      È«¾Öº¯Êý                   *
 *******************************************************************************/
HIDO_INT32 Lock_Closed(HIDO_UINT32 _u32ID);
HIDO_INT32 Lock_Open(HIDO_UINT32 _u32ID);
HIDO_VOID Lock_CtrlPinRegister(E_LockCtrlPin _ePin, HIDO_VOID* _pGPIOx, HIDO_UINT16 _u16GPIOPin, E_LockPinLockState _eLockState);
HIDO_VOID Lock_StatePinRegister(E_LockStatePin _ePin, HIDO_VOID* _pGPIOx, HIDO_UINT16 _u16GPIOPin, E_LockPinLockState _eLockState);
HIDO_INT32 Lock_Init(void);
 
#endif /* _LOCK_H_ */