1
0
mirror of https://github.com/jonathanhogg/scopething synced 2025-07-14 11:12:09 +01:00

Compare commits

...

3 Commits

2 changed files with 11 additions and 11 deletions

View File

@ -236,15 +236,7 @@ class Scope(vm.VirtualMachine):
if trigger_level is None: if trigger_level is None:
trigger_level = (high + low) / 2 trigger_level = (high + low) / 2
analog_trigger_level = (trigger_level - analog_params.offset) / analog_params.scale if not raw else trigger_level analog_trigger_level = (trigger_level - analog_params.offset) / analog_params.scale if not raw else trigger_level
if trigger in {'A', 'B'}: if isinstance(trigger, dict):
if trigger == 'A':
spock_option |= vm.SpockOption.TriggerSourceA
trigger_logic = 0x80
elif trigger == 'B':
spock_option |= vm.SpockOption.TriggerSourceB
trigger_logic = 0x40
trigger_mask = 0xff ^ trigger_logic
elif isinstance(trigger, dict):
trigger_logic = 0 trigger_logic = 0
trigger_mask = 0xff trigger_mask = 0xff
for channel, value in trigger.items(): for channel, value in trigger.items():
@ -259,6 +251,14 @@ class Scope(vm.VirtualMachine):
trigger_mask &= ~mask trigger_mask &= ~mask
if value: if value:
trigger_logic |= mask trigger_logic |= mask
elif trigger in {'A', 'B'}:
if trigger == 'A':
spock_option |= vm.SpockOption.TriggerSourceA
trigger_logic = 0x80
elif trigger == 'B':
spock_option |= vm.SpockOption.TriggerSourceB
trigger_logic = 0x40
trigger_mask = 0xff ^ trigger_logic
else: else:
raise ValueError("Unrecognised trigger value") raise ValueError("Unrecognised trigger value")
trigger_type = trigger_type.lower() trigger_type = trigger_type.lower()

View File

@ -24,7 +24,7 @@ class SerialStream:
@classmethod @classmethod
def devices_matching(cls, vid=None, pid=None, serial_number=None): def devices_matching(cls, vid=None, pid=None, serial_number=None):
for port in comports(): for port in comports():
if (vid is None or vid == port.vid) and (pid is None or pid == port.pid) and (serial is None or serial_number == port.serial_number): if (vid is None or vid == port.vid) and (pid is None or pid == port.pid) and (serial_number is None or serial_number == port.serial_number):
yield port.device yield port.device
@classmethod @classmethod