Перейти к содержанию
Материалы раздела

uLua

Справочник uLua для GPIO Extender и USB WatchDog ARU-P2: синтаксис, GPIO, АЦП, ШИМ, UART, USB, таймеры и протоколы.

uLua позволяет заменить штатную логику небольшого контроллера своей программой: читать входы и датчики, управлять выходами, обрабатывать команды по USB или UART и выполнять действия по таймеру. Исходный текст компилируется в веб-IDE на компьютере, а устройство получает компактный байткод и затем работает автономно.

Это не полная Lua: в uLua нет таблиц, динамической загрузки модулей и сборщика мусора. Перед разработкой прочитайте возможности и ограничения языка.

Почему uLua подходит компактному контроллеру

Сильная сторона uLua — компактная среда выполнения для короткой локальной программы, а не количество библиотек. Исходник компилируется на компьютере, поэтому в контроллере нет парсера Lua, сборщика мусора и файловой системы с модулями. Сохранённый байткод автоматически запускается при включении устройства.

Мы используем uLua, чтобы вам оставалось написать только скрипт с правилами работы: указать, какие сигналы проверять, сколько ждать и как управлять выходами. Работу оборудования, интерфейсов и системных функций мы уже реализовали в прошивке — программировать контроллер с нуля не нужно.

Такой подход полезен, когда задача состоит из условий, таймеров и прямой работы с GPIO, АЦП, ШИМ, UART, USB или датчиками. Компилятор знает API выбранной модели и отклоняет недоступный вызов до загрузки программы. Жёсткие ограничения языка и размера байткода заранее описаны и не скрываются за универсальностью среды.

IDE умеет прочитать сохранённый байткод из контроллера, декомпилировать его и показать восстановленный код. Это не копия исходного файла: комментарии, форматирование и исходные имена переменных и функций в байткоде не хранятся. Если для программы включена защита от чтения, обычный доступ через API и IDE блокируется.

Полная Lua лучше подходит для сети, файлов, локальных журналов, таблиц и более крупных приложений. Для них выбирайте соответствующий контроллер. uLua подходит там, где важнее автономная логика рядом с сигналами, а не большая программная платформа.

Если вы будете разрабатывать с помощью ИИ, скопируйте промпт для uLua.

Руководства по устройствам

УстройствоС чего начать
GPIO Extender uLua — универсальные входы и выходыПодключение и программирование · примеры кода
USB WatchDog ARU-P2 uLua — своя логика перезапуска и питанияНастройка и программирование · примеры кода

Встроенные функции сгруппированы по назначению: аппаратные интерфейсы, текстовые команды, таймеры и контейнеры. Точный набор функций зависит от модели и версии прошивки; недоступный вызов обнаруживается при компиляции.