feat(DLPilot): 电源自检补全 FPDO 挡位判定; 功率检测实现

This commit is contained in:
2026-09-18 00:58:42 +08:00
parent 8e6107b490
commit 9585fae947
4 changed files with 141 additions and 63 deletions
+4 -2
View File
@@ -196,8 +196,8 @@ class DLPC485:
回调在后台线程触发, GUI 侧需自行投递回主线程(见 hdmi_gui 的轮询队列)。
"""
def __init__(self, on_event, on_status):
self.on_event, self.on_status = on_event, on_status
def __init__(self, on_event, on_status, on_frame=None):
self.on_event, self.on_status, self.on_frame = on_event, on_status, on_frame
self.q = queue.Queue()
self._target = None # 想态 (port, baud, bytesize, parity, stopbits)
self._open_key = None # 当前已打开串口的参数元组
@@ -314,6 +314,8 @@ class DLPC485:
data = self.ser.read(256)
if data:
for fr in self.parser.feed(data):
if self.on_frame is not None:
self.on_frame(fr) # 结构化帧(二进制载荷场景用)
self.on_event(f'← {describe(fr)} '
f'[{fr.raw.hex(" ").upper()}]')
except OSError: