Всем привет. Подскажите, кто в lua шарит. Можно ли какой-нибудь короткой функцией перевести string в массив hex.? например: relay1_on = 'relay,1,1' relay1_off = 'relay,1,0' ....авада кедабра... получаем relay1_on_hex{0x72,0x65....} uart_send_data(relay1_on_hex) И еще я так понял массив по дебильному начинается с индекса 1, а выводится в uart начиная с 0
Комментарии: 13
Shurup
ща посмотрю. чтото делал вроде такое
Dmitriy
спасибо
Bulochka
заведомо - string уже массив.... и да - условно в хекс) ты себе это видишь как? что хекс это какой-то отдельный тип данных? тебе что надо, байт значения символа в строке? ну ок - из какой кодировки в какую?))
Dmitriy
Ascii
Shurup
:sub это функция по отрезанию куска строки. ты можешь просто строку туда вставить. да
Dmitriy
А зачем мне отрезать кусок от 'relay,1,1' если мне нужна вся команда?
Shurup
да я просто со своего проекта взял как было )
Shurup
посмотри такое: string.format("%x", string.byte(buf:sub(0, 100))) 0 и 100 от балды, конечно, написал.
Dmitriy
Что такое buf и sub?
Shurup
buf - это строка твоя
Dmitriy
Корочеее Вот так работает relay1_on = 'relay,1,1' ... local relay1 = {} for i = 1, relay1_on:len() do relay1[i-1] = relay1_on:byte(i) end uart_send_data(relay1)
Saw
капец… это надо же такой язык придумать…
Dmitriy
Луа гавно, да