from .....Internal.Core import Core
from .....Internal.CommandsGroup import CommandsGroup
from .....Internal import Conversions
from ..... import enums
from ..... import repcap
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class StateCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("state", core, parent)
# noinspection PyTypeChecker
[docs]
def get(self, bus=repcap.Bus.Default, word=repcap.Word.Default) -> enums.BusMdioWordState:
"""
``BUS<*>:MDIO:WORD<*>:STATe`` \n
Snippet: ``value: enums.BusMdioWordState = driver.bus.mdio.word.state.get(bus = repcap.Bus.Default, word = repcap.Word.Default)`` \n
Returns the state of the frame in the present acquisition of the selected serial bus.
:param bus: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Bus')
:param word: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Word')
:return: state: OK | UNSYN | UNSYncronized | OPCO | TA_ERROR | INComplete | SHORT | SHORt \n
- OK: No error detected
- UNSYN = UNSYncronized: UNSYncronized happens when bits are found, but they are not correlated with any synchronization sequence. We don't know what these bits are, but they are there. These bits receive a flag, but they are not decoded.
- OPCO: OPcode Error
- TA_ERROR: Tirnaround time error
- INComplete: Incomplete Frame
- SHORT = SHORt: Length Error
"""
bus_cmd_val = self._cmd_group.get_repcap_cmd_value(bus, repcap.Bus)
word_cmd_val = self._cmd_group.get_repcap_cmd_value(word, repcap.Word)
response = self._core.io.query_str(f'BUS{bus_cmd_val}:MDIO:WORD{word_cmd_val}:STATe?')
return Conversions.str_to_scalar_enum(response, enums.BusMdioWordState)