Рефактор.
This commit is contained in:
@@ -31,7 +31,7 @@ const CU_STATE: Dictionary = {
|
||||
1:1, # Выполняется
|
||||
2:9, # Ошибка в команде
|
||||
3:7, # Занят выполнением другого ЦУ
|
||||
4:9, # Неисправность
|
||||
4:9, # Неисправность
|
||||
}
|
||||
|
||||
class TCP5P28:
|
||||
@@ -40,7 +40,7 @@ class TCP5P28:
|
||||
const CMD_TYPE_STATE: int = 1
|
||||
const CMD_TYPE_TH: int = 2
|
||||
const CMD_TYPE_IN: int = 3
|
||||
|
||||
|
||||
signal line_changed(unit: TCP5P28) ## Сигнал состояние связи изменилось
|
||||
signal data_received(unit: TCP5P28) ## Сигнал данные приняты
|
||||
signal command_fail(unit: TCP5P28) ## Сигнал при не выполнении команды
|
||||
@@ -83,7 +83,7 @@ class TCP5P28:
|
||||
return Error.OK
|
||||
else:
|
||||
return Error.ERR_UNAVAILABLE
|
||||
|
||||
|
||||
func pack_threats(ths):
|
||||
var data = PackedByteArray()
|
||||
var data_len = 4 + len(ths) * 80 # длинна блока данных в байтах
|
||||
@@ -96,7 +96,7 @@ class TCP5P28:
|
||||
var data_to_send: PackedByteArray = create_header(data_len)
|
||||
data_to_send.append_array(data)
|
||||
tx_stack.append(data_to_send)
|
||||
|
||||
|
||||
func pack_interfers(interfers, ecms):
|
||||
var data = PackedByteArray()
|
||||
var data_len = 12 # длинна блока данных в байтах
|
||||
@@ -121,16 +121,16 @@ class TCP5P28:
|
||||
var data_to_send: PackedByteArray = create_header(data_len + 4 * len(interfers))
|
||||
data_to_send.append_array(data)
|
||||
tx_stack.append(data_to_send)
|
||||
|
||||
|
||||
func create_header(data_len):
|
||||
var head_data = PackedByteArray()
|
||||
head_data.resize(8) # Размер заголовка
|
||||
head_data.encode_u16(0, 0) # Код ошибки
|
||||
head_data.encode_u8(2, 2) # Тип пакета, ответ на запрос
|
||||
head_data.encode_u8(3, 5) # Версия протокола, всегда 5
|
||||
head_data.encode_u32(4, data_len) # Длинна пакета данных
|
||||
head_data.encode_u32(4, data_len) # Длинна пакета данных
|
||||
return head_data
|
||||
|
||||
|
||||
func get_threats_data(th, tick):
|
||||
var th_data = PackedByteArray()
|
||||
th_data.resize(80) # Количество байт в массиве
|
||||
@@ -142,7 +142,7 @@ class TCP5P28:
|
||||
flags |= int(th.fflags['power']) << 11 # Флаг доставерности мощности
|
||||
flags |= int(th.fflags['baud']) << 12 # Флаг доставерности ск. мод.
|
||||
flags |= int(th.fflags['slon']) << 13 # Флаг доставерности долготы ст. позиции
|
||||
flags |= int(th.fflags['slat']) << 14 # Флаг доставерности широты ст. позиции
|
||||
flags |= int(th.fflags['slat']) << 14 # Флаг доставерности широты ст. позиции
|
||||
flags |= int(th.fflags['lon']) << 15 # Флаг доставерности долготы
|
||||
flags |= int(th.fflags['lat']) << 16 # Флаг доставерности широты
|
||||
flags |= int(0) << 30 # Флаг признак назначения помехи на цель
|
||||
@@ -165,7 +165,7 @@ class TCP5P28:
|
||||
th_data.encode_s32(72, int(th.lon * c1))
|
||||
th_data.encode_s32(76, int(th.lat * c1))
|
||||
return th_data
|
||||
|
||||
|
||||
func to_cp866(proto: String, th_data):
|
||||
var cp866_proto: PackedByteArray = proto.to_ascii_buffer()
|
||||
cp866_proto.resize(36)
|
||||
@@ -191,4 +191,4 @@ class TCP5P28:
|
||||
var data_to_send: PackedByteArray = create_header(data_len)
|
||||
data_to_send.append_array(data_tx)
|
||||
tx_stack.append(data_to_send)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user