JZ_H150A.c
3.3 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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#include "JZsdkLib.h"
#include "BaseConfig.h"
#include <pthread.h>
#include "JZsdk_Hal.h"
#include "Megaphone/Megaphone.h"
#include "AudioDeal/AudioDeal.h"
#include "JZsdk_haldata_deal/JZsdk_data_transmisson.h"
#include "WarnLight/WarnLight.h"
#include "IRCUT/ircut.h"
#include "Hal_Send/HalSend.h"
/******************
*
*
* 引脚初始化
*
* *****************/
T_JZsdkReturnCode JZ_H150A_Ircut_Init()
{
//引脚初始化
IrcutInfo ircut_info;
ircut_info.type = JZ_IRC_TYPE_LINUX_V3S;
//ircut_info.type = JZ_IRC_TYPE_LINUX_V3S_2;
ircut_info.Amplifiter_Pin.Enable = JZ_FLAGCODE_ON;
ircut_info.Amplifiter_Pin.Port = JZ_IRC_PORT_PG;
ircut_info.Amplifiter_Pin.index = 5;
ircut_info.Amplifiter_Pin.Group = 0;
ircut_info.Amplifiter_Pin.mode = JZ_IRC_PIN_MODE_OUT;
Ircut_Init(ircut_info);
}
/********************
*
*
* 基础参数设置
*
*
* ****************/
static T_JZsdkReturnCode BaseParamSet(void)
{
//设置警灯颜色
//设置警灯模式
//设置喊话器音量
return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}
/****************************
*
* H150 初始化
*
* mode psdk为psdk模式 uart为串口模式
*
* ****************************/
T_JZsdkReturnCode JZ_H150A_init(int mode)
{
//引脚初始化
JZ_H150A_Ircut_Init();
if (mode == APP_ATTENTION)
{
return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}
if (mode == APP_UART)
{
//串口设备1初始化
T_JZsdk_UartInfo UartInfo = {
.Base.PortId = UART_DEV_1,
.DevicePath = UART_DEV1_NUM,
.Baudrate = UART_DEV1_BITRATE,
.Base.HalStatus.ConnectType = PORT_CONNECT_TYPE_AS_SUB,
};
//去检查有没有额外输入串口号
const char* devicepath = JZsdk_ParamterParsing_GetUart1Device();
if (devicepath != NULL)
{
memcpy(UartInfo.DevicePath, devicepath, sizeof(UartInfo.DevicePath));
}
JZsdk_HalUartInit(&UartInfo);
}
if (mode == APP_PSDK)
{
//外接传输模块,用于与飞机的数据通信
JZsdk_data_transmisson_Receive_Init();
}
//4g设备初始化
T_JZsdk_UartInfo Uart4GInfo = {
.Base.PortId = UART_4G,
.DevicePath = COMM_4G_UART_NUM,
.Baudrate = COMM_4G_UART_BITRATE,
.Base.HalStatus.ConnectType = PORT_CONNECT_TYPE_AS_SUB,
};
JZsdk_HalUartInit(&Uart4GInfo);
//音频库初始化
AudioDeal_Init();
//喊话器初始化
Megaphone_Init();
//设置h150a滤波模式
AudioDeal_SetFilterMode(2);
//警灯初始化
T_JzWarnLightInfo WarnLightInfo = {
.Attribute.Color1 = E_JZ_WARNLIGHT_COLOR_RED,
.Attribute.Color2 = E_JZ_WARNLIGHT_COLOR_BLUE,
.Attribute.mode = JZ_FLAGCODE_OFF,
.Attribute.status = JZ_FLAGCODE_OFF,
.ControlMode = JZ_MODULE_CONTROL_WAY_INDEPENDENT,
.Device = UART_4G,
.FrameSequence = 0x00,
.mode_version = 1,
};
WarnLight_Init(WarnLightInfo);
//基础参数设置
BaseParamSet();
JZSDK_LOG_INFO("H150A Init Success");
return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}