Source code for rsrtx.Implementations.Bus.Can.SamplePoint

from ....Internal.Core import Core
from ....Internal.CommandsGroup import CommandsGroup
from ....Internal import Conversions
from .... import repcap


# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class SamplePointCls:
	"""
	| Commands in total: 1
	| Subgroups: 0
	| Direct child commands: 1
	"""

	def __init__(self, core: Core, parent):
		self._core = core
		self._cmd_group = CommandsGroup("samplePoint", core, parent)

[docs] def set(self, sample_point: float, bus=repcap.Bus.Default) -> None: """ ``BUS<*>:CAN:SAMPlepoint`` \n Snippet: ``driver.bus.can.samplePoint.set(sample_point = 1.0, bus = repcap.Bus.Default)`` \n Sets the position of the sample point within the bit in percent of the nominal bit time. Alternatively, you can set the sample point with method ``RsRtx.bus.can.t1Segment.set()`` and method ``RsRtx.bus.can.t2Segment.set()`` . For CAN FD signals, method ``RsRtx.bus.can.samplePoint.set()`` defines the synchronization of the arbitration phase, and method ``RsRtx.bus.can.fdata.samplePoint.set()`` defines the synchronization of the data phase. :param sample_point: 12 to 96 if number of segments is 24. The range reduces if the signal has fewer segments. :param bus: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Bus') """ param = Conversions.decimal_value_to_str(sample_point) bus_cmd_val = self._cmd_group.get_repcap_cmd_value(bus, repcap.Bus) self._core.io.write(f'BUS{bus_cmd_val}:CAN:SAMPlepoint {param}')
[docs] def get(self, bus=repcap.Bus.Default) -> float: """ ``BUS<*>:CAN:SAMPlepoint`` \n Snippet: ``value: float = driver.bus.can.samplePoint.get(bus = repcap.Bus.Default)`` \n Sets the position of the sample point within the bit in percent of the nominal bit time. Alternatively, you can set the sample point with method ``RsRtx.bus.can.t1Segment.set()`` and method ``RsRtx.bus.can.t2Segment.set()`` . For CAN FD signals, method ``RsRtx.bus.can.samplePoint.set()`` defines the synchronization of the arbitration phase, and method ``RsRtx.bus.can.fdata.samplePoint.set()`` defines the synchronization of the data phase. :param bus: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Bus') :return: sample_point: 12 to 96 if number of segments is 24. The range reduces if the signal has fewer segments. """ bus_cmd_val = self._cmd_group.get_repcap_cmd_value(bus, repcap.Bus) response = self._core.io.query_str(f'BUS{bus_cmd_val}:CAN:SAMPlepoint?') return Conversions.str_to_float(response)