yy1717
2023-03-31 4bd08f0355b6b2cf3c027202d5ad301b4e182953
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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
//
// Created by YY on 2020/1/7.
//
 
#ifndef MYAPPLICATION2_COMM_IF_H
#define MYAPPLICATION2_COMM_IF_H
 
#include <cstdint>
#include <vector>
#include "../driver_test.h"
 
struct mcuBrief {
    char version[70];
    int selftest;
//    int gpio;
//    int speed;
//    int engine;
    char sn[20];
};
 
struct canBrief {
    int gpio;
    int rpm;
    double speed;
    double voltage;
};
 
struct carSensorBrief {
    int odo;
    int trip;
    int tripTime;
    double cellVolt;
    double speed;
    int engine;
    int sas;
    int key;
    int gear;
    int aps;
    int door;
    int seatBelt;
    int clutch;
    int horn;
    int wiper;
    int handBreak;
    int mainBreak;
    int leftTurnLamp;
    int rightTurnLamp;
    int clearanceLamp;
    int dippedBeamLamp;
    int mainBeamLamp;
    int fogLamp;
    int assBreak;
    int surround1;
    int surround2;
    int surround3;
    int surround4;
};
 
struct cardBrief {
    int result;
    char card[32];
};
 
struct gpsBrief {
    char utc[32];
    int sat_num;
    int qf;
    double latitude;
    double longitude;
    double altitude;
    double speed;
    double trackTure;
};
 
struct rtkBrief {
    char utc[32];
    int qf;
    double coord_x;
    char coord_x_dir;
    double coord_y;
    char coord_y_dir;
    double heading;
    double pitch;
    double roll;
 
    int sat_num;
    double latitude;
    double longitude;
    double altitude;
    double speed;
    double trackTure;
    int rtcm_length;
};
 
struct carBrief {
    char utc[32];
    int qf;
    int map_id;
    int move;
    double speed;
    double heading;
    double pitch;
    double roll;
    double main_ant[2];
    int axial[2];
    int left_front_tire[2];
    int right_front_tire[2];
    int left_rear_tire[2];
    int right_rear_tire[2];
    std::vector<int> body;
    std::vector<std::vector<double>> point;
};
 
struct roadStatusBrief {
    int road_id;
    int status;
};
 
struct crossingStatusBrief {
    int road_id;
    int crossing_index;
    int status;
};
 
void MA_MainProcMsgEntry(int cmd, const char *value);
void MA_MainProcBinMsgEntry(int cmd, const uint8_t *value, int length);
 
void MA_Init(void);
void MA_NdkStart(void);
void MA_ReqRtkPlatformConfig(void);
void MA_RtkPlatformConnect(int conn, const char *ip, int port);
void MA_RtkPlatformRegister(int reg, const uint8_t *pwd, int length);
void MA_RtkPlatformLogin(int login);
void MA_ReadMap(void);
void MA_ReadCar(void);
void MA_ReadSensor(void);
void MA_SendExamStatus(int start, int errorCode);
void MA_SendCardBrief(const struct cardBrief *brief);
void MA_SendMcuBrief(const struct mcuBrief *brief);
void MA_SendCarSensorBrief(const struct carSensorBrief *brief);
void MA_SendGpsBrief(const struct gpsBrief *brief);
void MA_SendRtkBrief(const struct rtkBrief *brief);
void MA_SendCarPosition(const struct carBrief *brief);
void MA_SendExamWrong(vector<ExamFault> &ExamFaultList);
void MA_SendRtcmInd(int length);
void MA_SendDebugInfo(const char *str, ...);
void MA_EnterMap(int map_id, int type, int enter);
void MA_ExamLight(void);
 
void MA_SendDistance(double l, double r);
 
void MA_SendRoadStatus(const struct roadStatusBrief *brief);
void MA_SendCrossingStatus(const struct crossingStatusBrief *brief);
void MA_SendCanStatus(const struct canBrief *brief);
 
void MA_SendBlueStatus(const char *name, const char *addr, int status);
void MA_SendRtkStatus(const char *type, int status);
 
#endif //MYAPPLICATION2_COMM_IF_H