fctom1215
2020-02-14 7c5b25c8617807635e9f272ebe9e98304d07cf2f
lib/src/main/cpp/master/comm_if.cpp
@@ -36,7 +36,7 @@
#define ID_MS_MAP               0x8006
#define ID_SM_READ_CAR          0x0007
#define ID_MS_CAR               0x8007
#define ID_SM_READ_SENSOR_CFG   0x0008
#define ID_SM_MCU_BRIEF   0x0008
#define ID_MS_SENSOR_CFG        0x8008
#define ID_MS_START_EXAM        0x8009
#define ID_SM_EXAM_STATUS       0x0009
@@ -135,7 +135,7 @@
void MA_ReadSensor(void)
{
    SendMsgToMainProc(ID_SM_READ_SENSOR_CFG, NULL);
}
void MA_SendExamStatus(int start, int errorCode)
@@ -153,6 +153,31 @@
    writer.EndObject();
    SendMsgToMainProc(ID_SM_EXAM_STATUS, sb.GetString());
}
void MA_SendMcuBrief(const struct mcuBrief *brief)
{
    StringBuffer sb;
    Writer<StringBuffer> writer(sb);
    writer.StartObject();
    writer.Key("version");
    writer.String(brief->version);
    writer.Key("selftest");
    writer.Int(brief->selftest);
    writer.Key("gpio");
    writer.Int(brief->gpio);
    writer.Key("speed");
    writer.Int(brief->speed);
    writer.Key("engine");
    writer.Int(brief->engine);
    writer.Key("sn");
    writer.String(brief->sn);
    writer.EndObject();
    SendMsgToMainProc(ID_SM_MCU_BRIEF, sb.GetString());
}
void MA_SendGpsBrief(const struct gpsBrief *brief)
@@ -615,7 +640,7 @@
                if (a.IsArray() && a.Size() > 0) {
                    int n = a.Size();
                    int i = 0;
                    int (*sensor)[2] = (int (*)[2]) new int[n][2];
                    int (*sensor)[3] = (int (*)[3]) new int[n][3];
                    for (Value::ConstValueIterator itr = a.Begin(); itr != a.End(); ++itr) {
                        // a gpio mapping
@@ -627,6 +652,10 @@
                            const Value &s = (*itr)["func_id"];
                            sensor[i][1] = s.GetInt();
                        }
                        if (itr->HasMember("level")) {
                            const Value &s = (*itr)["level"];
                            sensor[i][2] = s.GetInt();
                        }
                        ++i;
                    }
                    SetSensorCfg(sensor, n);