From 79ea75f669055b1544e2aee9b4ebc395772a72d5 Mon Sep 17 00:00:00 2001 From: helei Date: Sat, 15 Aug 2026 00:45:12 +0800 Subject: [PATCH] =?UTF-8?q?V1.5:=20=E8=AE=A1=E5=88=92=E5=86=85=E5=A4=8D?= =?UTF-8?q?=E4=BD=8D=E5=89=8D=E4=BF=9D=E5=AD=98=E7=B4=AF=E8=AE=A1=E7=94=B5?= =?UTF-8?q?=E9=87=8F(reset=5Flog=5Fmark=E5=86=85=E8=B0=83hlw8032=5Fsave)?= =?UTF-8?q?=EF=BC=8C=E5=A4=8D=E4=BD=8D=E4=B8=8D=E5=86=8D=E4=B8=A2=E7=94=B5?= =?UTF-8?q?=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- V1.5/STM32F103_App1/HardWare/SYSINIT/reset_log.c | 2 ++ V1.5/STM32F103_App1/README.md | 2 +- V1.5/鐗堟湰璇存槑.md | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/V1.5/STM32F103_App1/HardWare/SYSINIT/reset_log.c b/V1.5/STM32F103_App1/HardWare/SYSINIT/reset_log.c index e29d822..31a70c2 100644 --- a/V1.5/STM32F103_App1/HardWare/SYSINIT/reset_log.c +++ b/V1.5/STM32F103_App1/HardWare/SYSINIT/reset_log.c @@ -14,6 +14,7 @@ #include "log.h" #include "main.h" #include "app_loop.h" +#include "hlw8032.h" #include "../W25Q64/w25q64.h" #include "string.h" @@ -123,6 +124,7 @@ static void append_record(uint8_t reason, uint32_t uptime_sec) /* 主动复位前标记细分原因(共享 RAM,热复位后 APP 开机读取) */ void reset_log_mark(uint8_t reason) { + hlw8032_save(); /* 计划内复位前把累计电量落 EEPROM(无变化时空操作) */ BOOT_SHARE->pending_reason = reason; boot_share_store(); } diff --git a/V1.5/STM32F103_App1/README.md b/V1.5/STM32F103_App1/README.md index 813af89..897b1ed 100644 --- a/V1.5/STM32F103_App1/README.md +++ b/V1.5/STM32F103_App1/README.md @@ -113,7 +113,7 @@ - **閫氫俊**锛4800bps 8E1锛團1 涓婃寜 9 浣嶅抚闀 + 鍋舵牎楠岄厤缃級锛岃姱鐗囨瘡 50ms 涓诲姩涓婃姤 24 瀛楄妭甯э紝鍙敹涓嶅彂锛涘抚鍚屾 = 棣栧瓧鑺 0x55/0xAA/0xFx + 绗簩瀛楄妭 0x5A + 鏍¢獙鍜岋紙[2]~[22] 鐩稿姞浣 8 浣嶏級 - **鐢甸噺绠楁硶**锛堟墜鍐屽叕寮忥級锛歚kWh = 鎬昏剦鍐 脳 鍔熺巼鍙傛暟瀵勫瓨鍣 脳 鐢靛帇绯绘暟 脳 鐢垫祦绯绘暟 / (10^9脳3600)`锛汸F 瀵勫瓨鍣 16 浣嶆孩鍑虹敱鏁版嵁鏇存柊瀵勫瓨鍣 bit7 缈昏浆璁℃暟锛坄鎬昏剦鍐 = k脳65536 + PF`锛夛紝50ms 涓甯т笉鍙兘婕忕炕杞紱鑺墖鏂數閲嶅惎锛堣鏁板煎掗锛夎嚜鍔ㄩ噸鏂板熀鍑 - **绯绘暟瀹**锛歚main.h` 鐨 `HLW_U_COEF`锛=100K/49.9/1000=2.004锛夈乣HLW_I_COEF`锛=1/(0.002脳1000)=0.5锛夆斺旀敼鐢甸樆/浜掓劅鍣ㄥ彧鍔ㄨ繖涓や釜瀹 -- **鎸佷箙鍖**锛氱疮璁¤剦鍐叉暟锛坲int64锛夊瓨 EEPROM 鍋忕Щ 164~171锛涙瘡鏀掔害 0.1kWh 鍐欎竴娆★紙闄愬埗鎿﹀啓锛夛紝鏂數棰勮锛堟硶鎷夌數瀹圭画鑸唴锛夌珛鍗冲啓涓娆★紝鎺夌數鎹熷け <0.1kWh +- **鎸佷箙鍖**锛氱疮璁¤剦鍐叉暟锛坲int64锛夊瓨 EEPROM 鍋忕Щ 164~171锛涙瘡鏀掔害 0.1kWh 鍐欎竴娆★紙闄愬埗鎿﹀啓锛夛紝鎵鏈夎鍒掑唴澶嶄綅锛坄reset_log_mark` 瑕嗙洊鐨勫浣嶇偣锛夊浣嶅墠鍐欎竴娆★紝鏂數棰勮锛堟硶鎷夌數瀹圭画鑸唴锛夊啀鍐欎竴娆♀斺旈櫎绐佺劧姝绘満澶栧熀鏈笉涓㈢數閲 - **涓婃姤**锛歁QTT 灏辩华涓旇姱鐗囧湪绾匡紙1s 鍐呮湁鏈夋晥甯э級鏃讹紝姣忓垎閽熼殢杩愯蹇冭烦涓婃姤涓娆 `{"energy":%.2f}`锛涙湭鑱旂綉/鑺墖涓嶅湪绾夸笉涓婃姤 - **璋冭瘯鏃ュ織**锛氳姱鐗囧湪绾挎椂姣忓垎閽熸棩蹇楀悓鏃舵墦鍗扮數鍘/鐢垫祦/鍔熺巼锛坄杩愯鏃堕棿: ... 鐢佃兘: x.xxkWh 鐢靛帇: xxx.xV 鐢垫祦: x.xxA 鍔熺巼: xxxx.xW`锛 diff --git a/V1.5/鐗堟湰璇存槑.md b/V1.5/鐗堟湰璇存槑.md index 54945c7..8d85454 100644 --- a/V1.5/鐗堟湰璇存槑.md +++ b/V1.5/鐗堟湰璇存槑.md @@ -102,6 +102,8 @@ PF 16 浣嶆孩鍑洪潬鏁版嵁鏇存柊瀵勫瓨鍣 bit7 缈昏浆璁℃暟锛50ms 涓甯т笉浼氭紡锛夛紱鑺墖鏂數閲嶅惎鑷姩閲嶆柊鍩哄噯 - 绯绘暟瀹 `HLW_U_COEF`(2.004)/`HLW_I_COEF`(0.5) 鍦 main.h锛屽搴 ZMPT107-1(100K/49.9R)+CT 1000:1(2R) - 鑺墖鍦ㄧ嚎鏃舵瘡鍒嗛挓鏃ュ織鎵撳嵃鐢靛帇/鐢垫祦/鍔熺巼/鐢佃兘锛堣皟璇曟牎鍑嗙敤锛 +- 淇锛氳鍒掑唴澶嶄綅锛堝績璺宠秴鏃/琚涪/OTA/鍛戒护澶嶄綅绛 reset_log_mark 瑕嗙洊鐐癸級鍓嶆湭淇濆瓨鐢甸噺 鈫 + reset_log_mark 閲岀粺涓璋 hlw8032_save()锛屽浣嶄笉鍐嶄涪鏈惤鐩樼殑鐢甸噺 - 淇锛歅D2 娴┖鍣0/鐪熷疄甯т娇 online 涓虹湡鍚庯紝姣忓垎閽熺數鑳芥棩蹇楀湪 sys_task(1KB 鏍) 閲屾牸寮忓寲 4 涓诞鐐规暟 瀵艰嚧鏍堟孩鍑哄崱姝荤湅闂ㄧ嫍澶嶄綅 鈫 sys_task 鏍堝姞鍒 2KB锛涘抚鍚屾鍔"杩炵画 3 甯т笖闂撮殧 20~150ms"闃插櫔澹板亣鍚屾 - 绱鑴夊啿(uint64)鎸佷箙鍖 EEPROM 鍋忕Щ 164锛氭瘡鏀掔害 0.1kWh 鍐欎竴娆 + 鏂數棰勮鏃剁珛鍗冲啓锛堟硶鎷夌數瀹圭画鑸唴锛