From 0a294597182ab76418d56616541bfe6399ea5c33 Mon Sep 17 00:00:00 2001 From: "XI.CHEN" Date: Thu, 21 Nov 2024 16:24:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E5=92=8C=E6=8E=A7?= =?UTF-8?q?=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/cpp/native-lib.cpp | 71 ++++++++++++++++++++++++++++----- 1 file changed, 61 insertions(+), 10 deletions(-) diff --git a/app/src/main/cpp/native-lib.cpp b/app/src/main/cpp/native-lib.cpp index 70755e9..7dcb3da 100644 --- a/app/src/main/cpp/native-lib.cpp +++ b/app/src/main/cpp/native-lib.cpp @@ -233,6 +233,42 @@ static void set485ReadMode() { static void set12VEnable(bool z) { setInt(CMD_SET_12V_EN_STATE, z ? 1 : 0); } + +static void setCam3V3Enable(bool enabled) +{ + setInt(CMD_SET_CAM_3V3_EN_STATE, enabled ? 1 : 0); +} + +static void InitPLZ() +{ + SENSOR_PARAM sensorParam[MAX_SERIAL_DEV_NUM]; + + memset(sensorParam, 0, sizeof(sensorParam)); +#if 0 //云台 + sensorParam[0].SensorsType = PELCO_D_PROTOCOL; + sensorParam[0].baudrate = 9600; + sensorParam[0].databit = 8; + sensorParam[0].stopbit = 1; + sensorParam[0].parity = 'n'; + sensorParam[0].IsNoInsta = 1; + sensorParam[0].devaddr = 1; + memset(sensorParam[0].pathname, 0, sizeof(sensorParam[0].pathname)); + sprintf(sensorParam[0].pathname, "/dev/ttyS0"); +#else //球基 + sensorParam[3].SensorsType = PELCO_D_PROTOCOL; + sensorParam[3].baudrate = 38400; + sensorParam[3].databit = 8; + sensorParam[3].stopbit = 1; + sensorParam[3].parity = 0; + sensorParam[3].IsNoInsta = 1; + //devparam[3].PowerPort = 15; + sensorParam[3].CameraChannel = 1; + sensorParam[3].devaddr = 0; + memset(sensorParam[3].pathname, 0, sizeof(sensorParam[3].pathname)); + sprintf(sensorParam[3].pathname, "/dev/ttyS1"); +#endif + Gm_InitSerialComm(sensorParam, "/sdcard/photo/"); +} #if 0 static void setCam3V3Enable(bool enabled) { @@ -753,7 +789,15 @@ extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_turnOn( JNIEnv* env, jobject /*this*/) { - + setRS485Enable(true); + set12VEnable(true); + setCam3V3Enable(true); + setInt(CMD_SET_485_ENABLE, 1); + setInt(CMD_SET_3V3_PWR_ENABLE, 1); + setInt(CMD_SET_PTZ_PWR_ENABLE, 1); + setInt(CMD_SET_PIC1_POWER, 1); + setInt(CMD_SET_485_en4, 1); + InitPLZ(); } @@ -761,49 +805,56 @@ extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_turnOff( JNIEnv* env, jobject /*this*/) { - + setRS485Enable(false); + set12VEnable(false); + setCam3V3Enable(false); + setInt(CMD_SET_485_ENABLE, 0); + setInt(CMD_SET_3V3_PWR_ENABLE, 0); + setInt(CMD_SET_PTZ_PWR_ENABLE, 0); + setInt(CMD_SET_PIC1_POWER, 0); + setInt(CMD_SET_485_en4, 0); } extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_turnLeft( JNIEnv* env, jobject /*this*/) { - + CameraPhotoCmd(0, 1, MOVE_LEFT, 0, 0); } extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_turnRight( JNIEnv* env, jobject /*this*/) { - + CameraPhotoCmd(0, 1, MOVE_RIGHT, 0, 0); } extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_turnUp( JNIEnv* env, jobject /*this*/) { - + CameraPhotoCmd(0, 1, MOVE_UP, 0, 0); } extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_turnDown( JNIEnv* env, jobject /*this*/) { - + CameraPhotoCmd(0, 1, MOVE_DOWN, 0, 0); } extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_zoomIn( JNIEnv* env, jobject /*this*/) { - + CameraPhotoCmd(0, 1, ZOOM_TELE, 0, 0); } extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_zoomOut( JNIEnv* env, jobject /*this*/) { - + CameraPhotoCmd(0, 1, ZOOM_WIDE, 0, 0); } extern "C" JNIEXPORT void JNICALL @@ -817,14 +868,14 @@ extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_setPreset( JNIEnv* env, jobject /*this*/, jint preset) { - + CameraPhotoCmd(0, 1, SAVE_PRESETNO, 0, preset); } extern "C" JNIEXPORT void JNICALL Java_com_xinyingpower_testcomm_MainActivity_gotoPreset( JNIEnv* env, jobject /*this*/, jint preset) { - + CameraPhotoCmd(0, 1, MOVE_PRESETNO, 0, preset); } extern "C" JNIEXPORT void JNICALL