From 9e003b2ee7c43d11ba31baa5cc0bd4492c091f72 Mon Sep 17 00:00:00 2001 From: xin Date: Thu, 27 Nov 2025 18:50:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4v2.2.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ChangeLog.md | 4 ++++ deb_pack.sh | 3 ++- dpkg/control | 1 + dpkg/postinst | 4 ++-- dpkg/preinst | 7 ++++++ html/config/LocationCali.php | 3 ++- html/config/calibrate.php | 4 +++- install.sh | 1 + main.cpp | 17 +++++++++++-- .../project/Constant_Temperature_Config.json | 4 ++-- .../src/Temperature/TemperaTureWoker.cpp | 8 +++++-- root/start.sh | 24 ++++++++++++++++++- source/CaptureThread/MainDataGrabber.cpp | 5 ++++ source/CaptureThread/Scheduler.cpp | 5 ++-- 14 files changed, 76 insertions(+), 14 deletions(-) create mode 100644 dpkg/preinst diff --git a/ChangeLog.md b/ChangeLog.md index 0b5bfec..a1d0a14 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -2,3 +2,7 @@ #### v2.1.2 修改了温控模块 修改了calibrate时名称修改为.dat #### v2.1.3 将预热放置到timer开启前 +#### v2.1.4 更改来templog精简日志及推杆配置文件 写rtc1 +#### v2.1.5 采集完成后滴答滴答 +#### v2.1.7 开机滴答滴答 +#### v2.2.1 修改来shutter mode \ No newline at end of file diff --git a/deb_pack.sh b/deb_pack.sh index 6896626..003d732 100755 --- a/deb_pack.sh +++ b/deb_pack.sh @@ -7,7 +7,7 @@ # exit 1 #fi -VERSION=2.1.3 +VERSION=2.2.2 sh install.sh thispwd=$(pwd) @@ -36,6 +36,7 @@ echo "Version:${VERSION}" >> ./control echo "echo \"V${VERSION}\" > /home/data/version" >> ./postinst chmod +x ./post* chmod +x ./control +chmod +x ./preinst cd ../ #复制root文件 mkdir -p ./root diff --git a/dpkg/control b/dpkg/control index 33c716a..66b48c6 100644 --- a/dpkg/control +++ b/dpkg/control @@ -1,4 +1,5 @@ Package: TowerSif Architecture: armhf Maintainer: rlx, tc +Depends: systemd, tzdata Description: test diff --git a/dpkg/postinst b/dpkg/postinst index b33d627..9008a05 100644 --- a/dpkg/postinst +++ b/dpkg/postinst @@ -3,10 +3,10 @@ echo "install airbornesystem ok" sed -i '/\/root\/start/d' /etc/rc.local sed -i '/^exit 0/i/root/start.sh &' /etc/rc.local -sudo apt-get install -y timedatectl +#sudo apt-get install -y timedatectl timedatectl set-timezone Asia/Shanghai date -R -sudo hwclock -w -f /dev/rtc0 +sudo hwclock -w -f /dev/rtc1 #echo "/home/pi/AirbroneSystem/lib" > /etc/ld.so.conf.d/mylib.conf #echo "/home/pi/AirbroneSystem/libreh" > /etc/ld.so.conf.d/mylib1.conf ## 获取系统内存信息,并提取总内存大小 diff --git a/dpkg/preinst b/dpkg/preinst new file mode 100644 index 0000000..752997a --- /dev/null +++ b/dpkg/preinst @@ -0,0 +1,7 @@ +#!/bin/bash +set -e +# 删除可能引起冲突的文件 +if [ -f /home/data/ChangeLog.md ]; then + echo "Removing conflicting ChangeLog.md file..." + rm -f /home/data/ChangeLog.md +fi \ No newline at end of file diff --git a/html/config/LocationCali.php b/html/config/LocationCali.php index 4485c20..d96c7a5 100644 --- a/html/config/LocationCali.php +++ b/html/config/LocationCali.php @@ -13,7 +13,8 @@ set_time_limit(0); ob_end_clean();//清空(擦除)缓冲区并关闭输出缓冲 ob_implicit_flush(1);//将打开或关闭绝对(隐式)刷送。绝对(隐式)刷送将导致在每次输出调用后有一次刷送操作,以便不再需要对 flush() 的显式调用 system("sudo gpio mode 1 out"); -system("sudo gpio write 1 1"); +system("sudo gpio write 1 0"); +system("sudo gpio write 12 0"); system("sudo killall Mywathdog.sh"); system("sudo killall TowerOptoSifAndSpectral"); system("sudo pkill shutter_calibrate"); diff --git a/html/config/calibrate.php b/html/config/calibrate.php index cbeef77..c5ffd75 100644 --- a/html/config/calibrate.php +++ b/html/config/calibrate.php @@ -36,7 +36,9 @@ $numberofFS=0; system("sudo killall Mywathdog.sh"); system("sudo killall TowerOptoSifAndSpectral"); system("sudo pkill ocean_optics_calibration_console"); -system("sudo gpio write 1 1"); +system("sudo gpio write 1 0"); +system("sudo gpio write 12 0"); + $cmd=""; diff --git a/install.sh b/install.sh index aacd72a..65f261d 100644 --- a/install.sh +++ b/install.sh @@ -2,5 +2,6 @@ mkdir -p build cd build cmake ../ make -j4 +cp TowerOptoSifAndSpectral /home/pi/bin cd ../othersoft sh install.sh \ No newline at end of file diff --git a/main.cpp b/main.cpp index 038b673..e55f5f9 100644 --- a/main.cpp +++ b/main.cpp @@ -58,12 +58,25 @@ int main(int argc, char *argv[]) //////add support to dual channel int iRet0 = 0,iRet1 = 0,iRet2 = 0,iRet3 = 0; iRet0 = system("gpio mode 1 out"); + qDebug()<< "set gpio 1 out"<< endl; iRet1 = system("gpio mode 4 out"); + qDebug()<< "set gpio 4 out"<< endl; iRet2 = system("gpio mode 5 out"); - iRet3 = system("gpio write 1 1");//上电 + qDebug()<< "set gpio 5 out"<< endl; + iRet1 = system("gpio mode 20 out"); + qDebug()<< "set gpio 20 out"<< endl; + iRet2 = system("gpio mode 21 out"); + qDebug()<< "set gpio 21 out"<< endl; + iRet1 = system("gpio mode 22 out"); + qDebug()<< "set gpio 22 out"<< endl; + iRet2 = system("gpio mode 23 out"); + qDebug()<< "set gpio 23 out"<< endl; + iRet3 = system("gpio write 1 0");//上电 + iRet3 = system("gpio write 12 0");//上电 + system("gpio mode 13 out"); qDebug() << "gpio 1;4;5; ready"<<" Ret:"<< iRet0<< iRet1<< iRet2<< endl; - qDebug() << "gpio write 1 1......" <<" Ret:"<< iRet3<< endl; + qDebug() << "gpio write 1 0......" <<" Ret:"<< iRet3<< endl; // QString qstrCMD_A, qstrCMD_B, qstrCMD_Temp; // qstrCMD_Temp = QString::fromStdString("4"); diff --git a/othersoft/TemperatureControler/project/Constant_Temperature_Config.json b/othersoft/TemperatureControler/project/Constant_Temperature_Config.json index a568bd3..f3080be 100644 --- a/othersoft/TemperatureControler/project/Constant_Temperature_Config.json +++ b/othersoft/TemperatureControler/project/Constant_Temperature_Config.json @@ -19,8 +19,8 @@ "Pin": 19 }, "WINDOWS": { - "Pin_H": 10, - "Pin_L": 7, + "Pin_H": 7, + "Pin_L": 10, "WaitTime": 80 } }, diff --git a/othersoft/TemperatureControler/src/Temperature/TemperaTureWoker.cpp b/othersoft/TemperatureControler/src/Temperature/TemperaTureWoker.cpp index 9800856..1870f09 100644 --- a/othersoft/TemperatureControler/src/Temperature/TemperaTureWoker.cpp +++ b/othersoft/TemperatureControler/src/Temperature/TemperaTureWoker.cpp @@ -81,7 +81,7 @@ void TemperaTureWoker::OpenCom(QString portname, int baudrate) { ReadTempreature(); } - +int timesforrecode=0; void TemperaTureWoker::ReadTempreature() { if (m_isInit) { m_SerialPort->write("{\"command\":\"get_temp\"}"); @@ -108,7 +108,11 @@ void TemperaTureWoker::ReadTempreature() { return; } std::cout << data.toStdString()<< std::endl; - logout("TemperaSersor",data.toHex(),5); + if (timesforrecode%30==0) { + logout("TemperaSersor",data.toHex(),5); + } + timesforrecode++; + qDebug() << data; try { json::parse(data.toStdString()); diff --git a/root/start.sh b/root/start.sh index f78e95f..8abbaf0 100644 --- a/root/start.sh +++ b/root/start.sh @@ -1,12 +1,34 @@ +/sbin/hwclock -s -f /dev/rtc1 chmod +x /root/filebrew/filebrowser /root/filebrew/filebrowser -d /root/filebrew/filebrowser.db & chmod +x /root/frp_0.34.3_linux_arm/frpc chmod +x /root/ffwatch.sh /root/ffwatch.sh & -mount /dev/mmcblk1p1 /home/data/ +mount /dev/mmcblk1p1 /home/data/ -o nonempty chmod +x /root/Mywathdog.sh chmod +x /root/Mywathdogtemp.sh bash /root/Mywathdog.sh & bash /root/Mywathdogtemp.sh & /home/pi/bin/TemperatureControler > /root/templog.log & +gpio mode 13 out +gpio write 13 1 +sleep 1 +gpio write 13 0 +sleep 1 +gpio write 13 1 +sleep 1 +gpio write 13 0 +sleep 1 +gpio write 13 1 +sleep 1 +gpio write 13 0 +sleep 1 +gpio write 13 1 +sleep 1 +gpio write 13 0 +sleep 1 +gpio write 13 1 +sleep 1 +gpio write 13 0 +sleep 1 \ No newline at end of file diff --git a/source/CaptureThread/MainDataGrabber.cpp b/source/CaptureThread/MainDataGrabber.cpp index 1cc512d..0280967 100644 --- a/source/CaptureThread/MainDataGrabber.cpp +++ b/source/CaptureThread/MainDataGrabber.cpp @@ -586,6 +586,7 @@ int CMainDataGrabber::GrabOnceFinished() qDebug() << qstrCMD_A; qDebug() << qstrCMD_B; + Delay_MSec(500); } } else @@ -659,6 +660,10 @@ int CMainDataGrabber::GrabOnceFinished() } } + system("gpio write 13 1"); + Delay_MSec(200); + system("gpio write 13 0"); + m_iFlagIsCapturing = 0; // qDebug() << "-------------------------------------------busy" << QTime::currentTime().toString(); diff --git a/source/CaptureThread/Scheduler.cpp b/source/CaptureThread/Scheduler.cpp index ddfc68a..987e947 100644 --- a/source/CaptureThread/Scheduler.cpp +++ b/source/CaptureThread/Scheduler.cpp @@ -85,8 +85,9 @@ int Scheduler::OnTimeCounter() m_iFlagIsOnRestart = 1; } emit SignalZeroHoldCurrent(); - system("gpio write 1 0");//�豸�ϵ� - qDebug() << "gpio write 1 0......"<