add command
This commit is contained in:
@@ -8,14 +8,16 @@ const RETRY_COUNT = 5 ## Количество повторных отпр
|
||||
class FGOS:
|
||||
## Коды выполняемых команд
|
||||
enum CmdCode {
|
||||
START_SESSION = 0x0,
|
||||
READ_CARRIER = 0x1F,
|
||||
SET_CARRIER = 0x1E,
|
||||
READ_ATT = 0x1A,
|
||||
SET_ATT = 0x1B,
|
||||
READ_GEN_STATUS = 0x05,
|
||||
SET_GEN_STATUS = 0x06,
|
||||
BASE_GET_CURRENT_TEMP = 0x36,
|
||||
START_SESSION = 0x0, ## Команда начала сессии
|
||||
READ_CARRIER = 0x1F, ## Команда получение несущей частоты
|
||||
SET_CARRIER = 0x1E, ## Команда установки несущей частоты
|
||||
READ_ATT = 0x1A, ## Команда чтения аттенюации
|
||||
SET_ATT = 0x1B, ## Команда установки аттенюации
|
||||
READ_GEN_STATUS = 0x05, ## Команда получения статуса генератора
|
||||
SET_GEN_STATUS = 0x06, ## Команда установки статуса генератора
|
||||
BASE_GET_CURRENT_TEMP = 0x36, ## Команда получения температуры
|
||||
BASE_CAN_MACRO_WRITE = 0x30, ## Команда для записи последовательности CAN-команд
|
||||
BASE_CAN_MACRO_READ = 0x33, ## Команда для чтения последовательности CAN-команд
|
||||
}
|
||||
|
||||
enum GROUP {
|
||||
@@ -164,10 +166,23 @@ class FGOS:
|
||||
var index_size = 0x1C
|
||||
var packet = _form_packet(GROUP.RF, CmdCode.SET_ATT, index_size, counter)
|
||||
packet.encode_u16(0x8, 0x10)
|
||||
packet.encode_float(0x18, attenuation)
|
||||
packet.encode_float(0x14, attenuation)
|
||||
send_packet_to(packet, client)
|
||||
|
||||
|
||||
|
||||
func set_base_can_macro(installation_can_frequency: int, counter: int, client: StreamPeer):
|
||||
var index_size = 0x34
|
||||
var packet = _form_packet(GROUP.BASE, CmdCode.BASE_CAN_MACRO_WRITE, index_size, counter)
|
||||
packet.encode_u16(0x08, 0x28)
|
||||
packet.encode_u8(0x1C, 0x01)
|
||||
packet.encode_u8(0x1D, 0x42)
|
||||
packet.encode_u8(0x1F, 0x04)
|
||||
packet.encode_u16(0x20, installation_can_frequency)
|
||||
packet.encode_u16(0x28, 0x2aff)
|
||||
packet.encode_u8(0x2B, 0x04)
|
||||
send_packet_to(packet, client)
|
||||
|
||||
|
||||
func get_carrier(counter: int, client: StreamPeer):
|
||||
var packet = _form_packet(GROUP.BASE, CmdCode.READ_CARRIER, INDEX_SIZE, counter)
|
||||
send_packet_to(packet, client)
|
||||
@@ -183,6 +198,12 @@ class FGOS:
|
||||
send_packet_to(packet, client)
|
||||
|
||||
|
||||
func base_get_current_temp(counter: int, client: StreamPeer):
|
||||
func get_base_current_temp(counter: int, client: StreamPeer):
|
||||
var packet = _form_packet(GROUP.BASE, CmdCode.BASE_GET_CURRENT_TEMP, INDEX_SIZE, counter)
|
||||
send_packet_to(packet, client)
|
||||
|
||||
|
||||
func get_base_can_macro(counter: int, client: StreamPeer):
|
||||
var packet = _form_packet(GROUP.BASE, CmdCode.BASE_CAN_MACRO_READ, INDEX_SIZE, counter)
|
||||
send_packet_to(packet, client)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user