From 9d718d9d41544efb3a0d67c48cb682dcb06395df Mon Sep 17 00:00:00 2001 From: JIe Date: Tue, 24 Sep 2024 17:26:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=88=86=E9=85=8D=E7=9A=84?= =?UTF-8?q?=E5=86=85=E5=AD=98=E4=B8=8D=E5=A4=9F=E6=B7=BB=E5=8A=A0\0?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +++ CMakeLists.txt | 15 +++++++++++++++ demo.exe | Bin 170557 -> 173490 bytes include/serial.h | 4 ++-- main.cc | 2 +- 5 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 .gitignore create mode 100644 CMakeLists.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..32bbd5e --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.idea/* +.vscode/* +build/* diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..66e0588 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,15 @@ +cmake_minimum_required(VERSION 3.26) + +set(PROJECT_N demo) +project(${PROJECT_N} VERSION 1.0) + +set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD_REQUIRED ON) + +include_directories(${CMAKE_SOURCE_DIR}/include) + + +add_executable(${PROJECT_N} + ${CMAKE_SOURCE_DIR}/third/serialib.cpp + main.cc +) \ No newline at end of file diff --git a/demo.exe b/demo.exe index 5aaf0300733c30482b8c0f2de34a82aa2ce788db..dc7ab8229973b53caa031a17982c629c3b9cf5b5 100644 GIT binary patch delta 30784 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 0){ @@ -128,7 +128,7 @@ public: while(std::chrono::system_clock::now() < endTime){ std::this_thread::sleep_for(10ms); auto availableSize = ser.available(); - auto buffer = new char[availableSize]; + auto buffer = new char[availableSize+1]; auto size = ser.readBytes(buffer, availableSize, timeout); auto str = std::string(buffer); delete[] buffer; diff --git a/main.cc b/main.cc index 5df52a7..d01a202 100644 --- a/main.cc +++ b/main.cc @@ -17,7 +17,7 @@ int main(int argc, char** const argv){ auto startTime = std::chrono::system_clock::now(); // auto res = serial.GetAtUntil("AT+CFUN=1","OK", 200); // std::cout<(endTime-startTime).count();