Доработка. Протокол JSON-Modbus обновлён (1 из 2)
This commit is contained in:
@@ -19,9 +19,11 @@ class Sch3 extends unit.Unit:
|
||||
var tick_tx: = 0 ## Время отправки крайнего сообщения.
|
||||
|
||||
static var json_conv: = JSON.new()
|
||||
signal responce_received(addr: int, data: Array) ## Вызывается при получении сообщения c данными из регистров хранения.
|
||||
signal info_received(msg: String) ## Вызывается при получении информационного сообщения.
|
||||
signal except_received(msg: String) ## Вызывается при получении сообщения об исключительной ситуации.
|
||||
signal resp_input(addr: int, data: Array) ## Вызывается при получении сообщения c данными из регистров входов.
|
||||
signal resp_holding(addr: int, data: Array) ## Вызывается при получении сообщения c данными из регистров хранения.
|
||||
signal resp_write() ## Вызывается при получении подтверждения, что команда записи выполнена
|
||||
signal info_received(msg: String) ## Вызывается при получении информационного сообщения.
|
||||
signal except_received(msg: String) ## Вызывается при получении сообщения об исключительной ситуации.
|
||||
|
||||
func _init(nm: String, u: int = 1):
|
||||
unit = u
|
||||
@@ -62,11 +64,12 @@ class Sch3 extends unit.Unit:
|
||||
var message_code = message['code']
|
||||
var message_data = message['data']
|
||||
match message_code:
|
||||
'response':
|
||||
'resp_holding', 'resp_input':
|
||||
var addr = message_data[0]
|
||||
var regs = message_data.slice(1)
|
||||
emit_signal('responce_received', addr, regs)
|
||||
rc = true
|
||||
emit_signal(message_code, addr, regs)
|
||||
'resp_write':
|
||||
emit_signal(message_code)
|
||||
'info':
|
||||
var msg = message['data']
|
||||
emit_signal('info_received', msg)
|
||||
|
||||
Reference in New Issue
Block a user