Size: a a a

2021 July 19

I

Igor725 in pro.lua
а игровой эвент итератором перебирает эту таблицу и вызывает каждую из них при определённом событии
источник

U

User in pro.lua
Хорошо, спасибо за помощь.
источник

AZ

Aydar Zarifullin in pro.lua
источник

S

Snusmumriken in pro.lua
Её бы переименовать в bind, куда ближе к истине, как вызов функций на кнопки, или биндинг функций к событиям.
источник

AZ

Aydar Zarifullin in pro.lua
Может они Qt вдохновлялись.
источник
2021 July 20

M

Marroty in pro.lua
Добрый день!
У меня есть устройство, с которым я хочу общаться из-под Windows через uart.
Соответственно передаются команды-читаются ответы.
При работе в ручном режиме через teraterm все хорошо.
В lua я использую
local serial = assert(io.open("COM3", "w"))
serial:write("{4:0001}\n")
serial:close()

serial = assert(io.open("COM3", "r"))
local line=serial:read()
serial:close()

Но похоже, что оно не работает - не совпадают скорости (устройство на 115200). Вопросов собственно два:
- можно ли как то в таком формате работы с comport'ом настроить скорость
- можно ли одновременно писать-читать устройство без  постоянного переоткрытия порта в нужном режиме?
источник

S

Snusmumriken in pro.lua
источник

M

Marroty in pro.lua
Да, я поменял настройку по умолчанию,  но пока не взлетело
источник

S

Snusmumriken in pro.lua
Возможно, стоит читать построчно, мол
serial = assert(io.open("COM3", "rb"))
local line=serial:read("*l")
serial:close()
источник

S

Snusmumriken in pro.lua
Потому что file:read() блокирует до появления EOF, а file:read("*l") будет блочить только до EOL.
источник

M

Marroty in pro.lua
Ну в ответах у меня точно нет EOL, только \r\n. Спасибо, сейчас проверю
источник

S

Snusmumriken in pro.lua
Я перепутал, EOL это как раз \r\n, EOF - мета-фигня конца.
источник

M

Marroty in pro.lua
А разве режим rb, в отличии от r не пропускает x00?
источник

S

Snusmumriken in pro.lua
rb — читает всё, r — фильтрует всякую фигню
источник

S

Snusmumriken in pro.lua
Я практически всегда использую rb, потому что от r больше проблем.
источник

S

Snusmumriken in pro.lua
У serial, кстати, EOF'ом вроде работает 0x1A, но я не уверен будет ли оно работать в луях.
источник

M

Marroty in pro.lua
Ну со стороны устройства я формат могу задавать точно, там у меня fpga.
Спасибо за помощь!
А одновременно порт на чтение и запись нельзя открывать, да?
источник

S

Snusmumriken in pro.lua
Открой два порта )
источник

S

Snusmumriken in pro.lua
Ну,
local in = assert(io.open("COM3", "rb"))
local out = assert(io.open("COM3", "wb"))

Возможно получится.
источник

M

Marroty in pro.lua
Так COMn - один же, я проверю, но вроде винда ругается на такое
источник