From 24219a570494985a89211ffac8fd2a563fa2a8ee Mon Sep 17 00:00:00 2001 From: "XI.CHEN" Date: Mon, 12 Aug 2024 13:26:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BC=A0=E6=84=9F=E5=99=A8?= =?UTF-8?q?=E5=BC=80=E5=85=B3=E6=8E=A7=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/cpp/CMakeLists.txt | 5 ++- app/src/main/cpp/PhoneDevice.cpp | 67 ++++++++++++++++++++++++++++++++ app/src/main/cpp/PhoneDevice.h | 2 + 3 files changed, 72 insertions(+), 2 deletions(-) diff --git a/app/src/main/cpp/CMakeLists.txt b/app/src/main/cpp/CMakeLists.txt index f5a6a16a..5959290f 100644 --- a/app/src/main/cpp/CMakeLists.txt +++ b/app/src/main/cpp/CMakeLists.txt @@ -36,7 +36,7 @@ add_definitions(-DHAVE_STRING_H) # for memcpy in md5.c add_definitions(-DOUTPUT_CAMERA_DBG_INFO) add_definitions(-DALIGN_HB_TIMER_TO_PHOTO) -# add_definitions(-DUSING_N938) +add_definitions(-DUSING_N938) # include_directories(${OpenCV_DIR}/include) # add_library( lib_opencv SHARED IMPORTED ) @@ -276,7 +276,7 @@ add_library( # Sets the name of the library. SerialPort.cpp #WeatherComm.cpp SensorsProtocol.cpp - serialComm.cpp + SerialComm.cpp ncnn/yolov5ncnn.cpp @@ -322,6 +322,7 @@ add_library( # Sets the name of the library. ${TERM_CORE_ROOT}/Client/Terminal_NW.cpp ${TERM_CORE_ROOT}/Client/UpgradeReceiver.cpp ${TERM_CORE_ROOT}/Client/Database.cpp + ${TERM_CORE_ROOT}/Client/SimulatorDevice.cpp ) diff --git a/app/src/main/cpp/PhoneDevice.cpp b/app/src/main/cpp/PhoneDevice.cpp index b918767f..94a6d133 100644 --- a/app/src/main/cpp/PhoneDevice.cpp +++ b/app/src/main/cpp/PhoneDevice.cpp @@ -1869,4 +1869,71 @@ int CPhoneDevice::GetWData(IDevice::WEATHER_INFO *weatherInfo) return true; } +bool CPhoneDevice::OpenSensors() +{ + GpioControl::setInt(CMD_SET_CAM_3V3_EN_STATE, true ? 1 : 0); + GpioControl::setInt(CMD_SET_485_EN_STATE, true ? 1 : 0); + int igpio; + GpioControl::setInt(CMD_SET_WTH_POWER, 1); + GpioControl::setInt(CMD_SET_PULL_POWER, 1); + GpioControl::setInt(CMD_SET_ANGLE_POWER, 1); + GpioControl::setInt(CMD_SET_OTHER_POWER, 1); + GpioControl::setInt(CMD_SET_PIC1_POWER, 1); + + igpio = GpioControl::getInt(CMD_SET_WTH_POWER); + igpio = GpioControl::getInt(CMD_SET_PULL_POWER); + igpio = GpioControl::getInt(CMD_SET_ANGLE_POWER); + igpio = GpioControl::getInt(CMD_SET_OTHER_POWER); + igpio = GpioControl::getInt(CMD_SET_PIC1_POWER); + + GpioControl::setInt(CMD_SET_SPI_POWER, 1); + GpioControl::setInt(CMD_SET_485_en0, 1); + GpioControl::setInt(CMD_SET_485_en1, 1); + GpioControl::setInt(CMD_SET_485_en2, 1); + GpioControl::setInt(CMD_SET_485_en3, 1); + GpioControl::setInt(CMD_SET_485_en4, 1); + + igpio = GpioControl::getInt(CMD_SET_SPI_POWER); + igpio = GpioControl::getInt(CMD_SET_485_en0); + igpio = GpioControl::getInt(CMD_SET_485_en1); + igpio = GpioControl::getInt(CMD_SET_485_en2); + igpio = GpioControl::getInt(CMD_SET_485_en3); + igpio = GpioControl::getInt(CMD_SET_485_en4); + return 0; + +} +bool CPhoneDevice::CloseSensors() +{ + GpioControl::setInt(CMD_SET_12V_EN_STATE, false ? 1 : 0); + GpioControl::setInt(CMD_SET_CAM_3V3_EN_STATE, false ? 1 : 0); + GpioControl::setInt(CMD_SET_485_EN_STATE, false ? 1 : 0); + int igpio; + GpioControl::setInt(CMD_SET_WTH_POWER, 0); + GpioControl::setInt(CMD_SET_PULL_POWER, 0); + GpioControl::setInt(CMD_SET_ANGLE_POWER, 0); + GpioControl::setInt(CMD_SET_OTHER_POWER, 0); + GpioControl::setInt(CMD_SET_PIC1_POWER, 0); + + igpio = GpioControl::getInt(CMD_SET_WTH_POWER); + igpio = GpioControl::getInt(CMD_SET_PULL_POWER); + igpio = GpioControl::getInt(CMD_SET_ANGLE_POWER); + igpio = GpioControl::getInt(CMD_SET_OTHER_POWER); + igpio = GpioControl::getInt(CMD_SET_PIC1_POWER); + + GpioControl::setInt(CMD_SET_SPI_POWER, 0); + GpioControl::setInt(CMD_SET_485_en0, 0); + GpioControl::setInt(CMD_SET_485_en1, 0); + GpioControl::setInt(CMD_SET_485_en2, 0); + GpioControl::setInt(CMD_SET_485_en3, 0); + GpioControl::setInt(CMD_SET_485_en4, 0); + + //sleep(3); + igpio = GpioControl::getInt(CMD_SET_SPI_POWER); + igpio = GpioControl::getInt(CMD_SET_485_en0); + igpio = GpioControl::getInt(CMD_SET_485_en1); + igpio = GpioControl::getInt(CMD_SET_485_en2); + igpio = GpioControl::getInt(CMD_SET_485_en3); + igpio = GpioControl::getInt(CMD_SET_485_en4); + return 0; +} diff --git a/app/src/main/cpp/PhoneDevice.h b/app/src/main/cpp/PhoneDevice.h index 73696c69..0a338a68 100644 --- a/app/src/main/cpp/PhoneDevice.h +++ b/app/src/main/cpp/PhoneDevice.h @@ -200,6 +200,8 @@ public: virtual int GetWData(WEATHER_INFO *weatherInfo); virtual int GetIceData(ICE_INFO *iceInfo, ICE_TAIL *icetail, SENSOR_PARAM sensorParam); + virtual bool OpenSensors(); + virtual bool CloseSensors(); bool GetNextScheduleItem(uint32_t tsBasedZero, uint32_t scheduleTime, vector& items);