JZsdk_Hal.h
2.5 KB
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
/**
********************************************************************
* @file JZsdk_Hal.h
* JZsdk_Hal.c 的头文件
* @version V0.1.0
* @date
* @brief This is the JZsdk_Hal.h file
*
* @attention
*
*
*********************************************************************
/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
#ifndef JZSDK_HAL_H
#define JZSDK_HAL_H
/* Includes ------------------------------------------------------------------*/
#ifdef __cplusplus
extern "C" {
#endif
/* Exported constants --------------------------------------------------------*/
/* 常亮定义*/
#define JZ_MAX_SUB_ID_NUM 10
typedef enum E_HAL_PORT_TYPE
{
PORT_TYPE_PSDK = 0,
PORT_TYPE_UART = 1,
PORT_TYPE_USB = 2,
PORT_TYPE_NET = 3,
PORT_TYPE_TRANS_DATA = 4,
}E_HAL_PORT_TYPE;
typedef enum E_HAL_CONNECT_TYPE
{
PORT_CONNECT_TYPE_AS_SUB = 0, //作为副设备
PORT_CONNECT_TYPE_AS_MAIN = 1, //作为主设备
}E_HAL_CONNECT_TYPE;
/******************
*
* hal使用状态
*
* ********/
typedef struct s_JZ_SerialPortHalRegInfo
{
int BitRate; //波特率
E_HAL_CONNECT_TYPE ConnectType; //连接类型
}s_JZ_SerialPortHalRegInfo;
/******************
*
* hal使用状态
*
*
*
* ********/
typedef struct s_JZsdk_HalStatus
{
int UseFlag; //hal使用标志位 //初始化时开关关闭
int PortType; //hal的端口类型
int ConnectType;//主副设备类型
//作为主设备专有
int SubId[JZ_MAX_SUB_ID_NUM]; //副设备ID
int SubNum; //副设备数量
//作为副设备专有
int HeartBeatStatusSend; //对主设备发送心跳帧的发送开关
int ConnectStatus; //连接状态,接收过连接帧后打开
}s_JZsdk_HalStatus;
typedef struct s_JZsdk_Hal_Info
{
s_JZsdk_HalStatus HalPort[0x50]; //记录hal使用的端口状态
int HaveUsePort[0x50]; //记录已经使用的端口
int HaveUsePortNum; //记录已经使用的端口数量
}s_JZsdk_Hal_Info;
/* Exported types ------------------------------------------------------------*/
/* Exported functions --------------------------------------------------------*/
int JZsdk_HalPort_UseFlag(int PortName);
T_JZsdkReturnCode JZsdk_HalPort_SetUseFlag(int PortName,int UseFlag);
T_JZsdkReturnCode JZsdk_HalPort_Init(int PortName, void *Value);
T_JZsdkReturnCode JZsdk_HalPort_ReInit(int PortName, void *Value);
T_JZsdkReturnCode JZsdk_Hal_Init();
s_JZsdk_Hal_Info *JZsdk_Hal_GetHalInfo();
#ifdef __cplusplus
}
#endif
#endif