Доработка. Формирование запроса для СПТ-25

This commit is contained in:
sasha80
2024-10-24 14:52:36 +03:00
parent 482e9d062b
commit 4d36f64642
2 changed files with 17 additions and 6 deletions

View File

@@ -4,16 +4,29 @@ class_name spt25_unit extends Node
class SPT25 extends unit.Unit:
var tx_tick: int = 0
func _init(nm) -> void: self.name = nm
var req_period = 3000
func _to_string() -> String: return String('СПТ-25: %s %s' % [self.name, ['отключен', 'на связи'][int(online)]])
func _init(nm) -> void:
self.name = nm
tx_data.resize(8)
tx_data[0] = 0x7e # Флаги синхронизации пакета
tx_data[1] = 0 # Адрес абонента, которому предназначен пакет
tx_data[2] = 4 # Тип пакета, КОД КОМАНДЫ - Получить информацию о состоянии преобразователя
tx_data[3] = 0 # Данные
tx_data[4] = 0 # Данные
tx_data[5] = 0 # Данные
tx_data[6] = 0 # Контрольная сумма
tx_data[7] = 0x7e # Флаги синхронизации пакета
func parse(rx_data: PackedByteArray):
if not self.online:
self.online = true
emit_signal('line_changed', self)
emit_signal('data_received', rx_data)
func process(delta: float):
pass
tick += delta
if (tick - tx_tick) > req_period:
return Error.OK
return Error.ERR_BUSY