• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Делюсь опытом Измерение расстояния на Lua в прошивке NodeMCU

ivy

New member
В ArduinoIDE есть простое использование ультразвуковых модулей SR04 и SR04T. На Lua я нашел только 1 модуль, который мне показался неудобным в использовании. Делюсь своим модулем.

Пример использования 1: Измерить расстояние.
Код:
sr04 = require("sr04")
sr04.init(trig_pin=3, echo_pin=4)  -- GPIO 0,2.
sr04.get_distance(function(distance) print(distance) end)
sr04 = nil
package.loaded["sr04"] = nil
Пример использования 2: Печатать расстояние с заданным интервалом времени.
Код:
sr04 = require("sr04")
sr04.init(sample_interval=2000, trig_pin=3, echo_pin=4)  -- Every 2 sec. GPIO 0,2.
sr04.poll_distance()  -- Poll in background.
-- Do something here, don't tmr.delay!
sr04.stop_poll()      -- Enough polling.
sr04 = nil
package.loaded["sr04"] = nil
 

ivy

New member
Никогда еще не пулл-реквестил в большие проекты. Попробую.
UPD: Попробовал.
 
Последнее редактирование:
Сверху Снизу