pulse modulation added

This commit is contained in:
Ayzen
2026-09-01 18:09:03 +03:00
parent 4c6292d6aa
commit 62e0430668
9 changed files with 123 additions and 16 deletions
+10 -6
View File
@@ -127,13 +127,13 @@ class ControllerWorker(QObject):
)
)
@pyqtSlot(object)
def upload_ad9102_waveform(self, samples: object) -> None:
@pyqtSlot(object, int)
def upload_ad9102_waveform(self, samples: object, pat_period_us: int) -> None:
"""Upload a custom waveform to AD9102 SRAM."""
self._run_command(
lambda: (
self._ensure_connected(),
self._upload_ad9102_waveform_impl(samples),
self._upload_ad9102_waveform_impl(samples, pat_period_us),
)
)
@@ -298,10 +298,14 @@ class ControllerWorker(QObject):
self.log_message.emit("INFO", f"Profile saved to SD: {profile_name}")
self._emit_status()
def _upload_ad9102_waveform_impl(self, samples: object) -> None:
def _upload_ad9102_waveform_impl(self, samples: object, pat_period_us: int) -> None:
sample_list = list(samples)
self._controller.upload_ad9102_waveform(sample_list)
self.log_message.emit("INFO", f"AD9102 waveform uploaded ({len(sample_list)} samples)")
self._controller.upload_ad9102_waveform(sample_list, pat_period_us)
period_note = f", период {pat_period_us} мкс" if pat_period_us else ""
self.log_message.emit(
"INFO",
f"AD9102 waveform uploaded ({len(sample_list)} samples{period_note})",
)
self._emit_status()
def _cancel_ad9102_waveform_upload_impl(self) -> None: