1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/chenxuuu-llcom

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 12 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 09.03.2025 16:34 1162df9

Инструмент LLCOM для свободной отладки последовательных портов с возможностью запуска скриптов Lua. Группа для обсуждения: 931546484

Скачивание

Установите через Microsoft Store:

Russian badge

Портативная версия exe: скачать для пользователей из Китая

Версия CI: Appveyor Artifacts

Все официальные версии: GitHub Releases

Список функций- Все функции, присутствующие в других инструментах для отладки последовательных портов

  • Ясные и понятные логи приема и передачи данных, позволяющие одновременно просматривать HEX значения и фактические строки
  • Автоматическое сохранение логов последовательного порта и скриптов Lua со временем
  • При повторном подключении после отключения последовательного порта происходит автоматическая переоценка
  • Отправляемые данные могут быть предварительно обработаны пользовательским скриптом Lua
  • Быстрое отправление данных с правой стороны панели, количество записей не ограничено
  • Поддержка 10 страниц данных справа, каждая независима
  • Возможность самостоятельного запуска скриптов Lua с использованием таймеров и задач корутин (перенесено из архитектуры Luat Task от Hezhao)
  • Выбор различных текстовых кодировок
  • Удобство работы с терминалом, возможность отправки данных с клавиатуры (включая Ctrl + буквы)
  • Возможность скрытия отправленных данных
  • Встроенная функциональность тестирования TCP, UDP, SSL серверов/клиентов, поддерживающая IPv6
  • Встроенные возможности преобразования между различными кодировками
  • Встроенная функциональность восстановления поврежденных данных
  • Встроенная функциональность тестирования MQTT- Встроенная функциональность слежения за последовательными портами, позволяющая наблюдать за данными соединений других программ! screen screen3 screen2## Примеры использования ключевых функций

Обработка данных перед отправкой с помощью скриптов Lua

  1. Дополнение новой строки в конце
return uartData .. "\r\n"
  1. Отправка шестнадцатеричных данных
return uartData:fromHex()

Этот скрипт преобразует данные вида 30313233 в 0123.

  1. Дополнительные возможности ожидают вас
json = require("JSON")
t = uartData:split(",")
return json:encode({
    key1 = t[1],
    key2 = t[2],
    key3 = t[3],
})

Этот скрипт преобразует данные вида a,b,c в {"key1": "a", "key2": "b", "key3": "c"}.

Эти обработчики также работают для быстрого доступа к отправке данных справа.

Автоматическая обработка данных через порты UART с использованием независимых скриптов Lua

Левый регион для отладки скриптов Lua позволяет запускать написанные вами тестовые скрипты для порта UART, как это делает программа:

-- регистрация функции приема данных через UART
uartReceive = function(data)
    log.info("uartReceive", data)
    sys.publish("UART", data) -- публикация сообщения
end

-- создание задачи, которая будет ждать получения сообщения
sys.taskInit(function()
    while true do
        local _, udata = sys.waitUntil("UART") -- ожидание сообщения
        log.info("task waitUntil", udata)
        local sendResult = apiSendUartData("ok!") -- отправка данных через UART
        log.info("uart send", sendResult)
    end
end)

-- создание задачи, которая будет повторяться каждую секунду
sys.taskInit(function()
    while true do
        sys.wait(1000) -- ожидание 1000 миллисекунд
        log.info("task wait", os.time())
    end
end)
```-- Циклический таймер каждые 1000 миллисекунд
sys.timerLoopStart(log.info, 1000, "таймер тест")

Вы можете использовать возможности фреймворка xlua для вызова C# интерфейсов и выполнения любых действий, которые вам нужны:

```lua
request = CS.System.Net.WebRequest.Create("http://example.com")
request.ContentType = "text/html;charset=UTF-8"
request.Timeout = 5000 -- время ожидания ответа
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 Vivaldi/2.2.1388.37"

response = request:GetResponse():GetResponseStream()

myStreamReader = CS.System.IO.StreamReader(response, CS.System.Text.Encoding.UTF8)

print(myStreamReader:ReadToEnd()) -- вывод содержимого body

myStreamReader:Close()
response:Close()

С помощью этой функции вы сможете автоматизировать большинство операций отладки через порт UART.

Документация по API

Документация по API доступна на этой странице.

Известные проблемы и планируемые функции (ваш отзыв будет очень полезен, спасибо!)

  • Ошибка: при некоторых условиях (например, после перезапуска Air720), COM-порт может исчезнуть и не освобождается, что делает невозможным повторное открытие этого COM-порта, кроме как через перезапуск программы (это ошибка .NET Framework). (решено #2f26e68)

Открытый проект

Если вы считаете это удобным, приветствуем pull requests или полную переработку данного проекта.На начальной стадии этот проект был создан только для реализации функционала, поэтому код довольно рассредоточен и не слишком подходит для изучения. Когда у меня будет время, я переработаю его.Проект использует лицензию Apache 2.0; если вы используете данный код, пожалуйста, оставьте ссылку на этот проект.

Вкладчики ✨Большое спасибо этим замечательным людям (ключ эмодзи):

<! -- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --> <! -- prettier-ignore-start --> <! -- markdownlint-disable -->


whc2001

💻 🐛

chenxuuu

📆

neomissing

🤔

RuoYun

🐛

Ван Лонг

🤔 🐛 💻

linhongz

💻
```markdown s=100" width="100px;" alt=""/>
Лин Хонгцз
🤔 🐛 ```

Пожалуйста, учтите, что в вашем примере есть небольшие ошибки в разметке (например, лишние закрывающие теги </a>). Я сохранил исходное форматирование, но рекомендую проверить правильность разметки.

Этот проект следует спецификации all-contributors. Любой вклад приветствуется!

Отдельное спасибо

icon-resharper

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/chenxuuu-llcom.git
git@api.gitlife.ru:oschina-mirror/chenxuuu-llcom.git
oschina-mirror
chenxuuu-llcom
chenxuuu-llcom
master