from ....Internal.Core import Core
from ....Internal.CommandsGroup import CommandsGroup
from ....Internal import Conversions
from .... import repcap
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class BpositionCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("bposition", core, parent)
[docs]
def set(self, sync_bit_pos: int, bus=repcap.Bus.Default) -> None:
"""
``BUS<*>:SWIRe:BPOSition`` \n
Snippet: ``driver.bus.swire.bposition.set(sync_bit_pos = 1, bus = repcap.Bus.Default)`` \n
Sets the bit position, the align position for the manual synchronisation mode. This can be useful when parity errors
exist in the signal, and parity check is the main indicator for the decoder to do packet alignment.
:param sync_bit_pos: 0 to 10
:param bus: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Bus')
"""
param = Conversions.decimal_value_to_str(sync_bit_pos)
bus_cmd_val = self._cmd_group.get_repcap_cmd_value(bus, repcap.Bus)
self._core.io.write(f'BUS{bus_cmd_val}:SWIRe:BPOSition {param}')
[docs]
def get(self, bus=repcap.Bus.Default) -> int:
"""
``BUS<*>:SWIRe:BPOSition`` \n
Snippet: ``value: int = driver.bus.swire.bposition.get(bus = repcap.Bus.Default)`` \n
Sets the bit position, the align position for the manual synchronisation mode. This can be useful when parity errors
exist in the signal, and parity check is the main indicator for the decoder to do packet alignment.
:param bus: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Bus')
:return: sync_bit_pos: 0 to 10
"""
bus_cmd_val = self._cmd_group.get_repcap_cmd_value(bus, repcap.Bus)
response = self._core.io.query_str(f'BUS{bus_cmd_val}:SWIRe:BPOSition?')
return Conversions.str_to_int(response)