mirror of https://github.com/ArduPilot/ardupilot
27 lines
794 B
Lua
27 lines
794 B
Lua
|
-- This script is an example button functionality
|
||
|
|
||
|
local button_number = 1 -- the button numbber we want to read, as deffined in AP_Button
|
||
|
|
||
|
local button_active_state = true -- the 'pressed' state of the button
|
||
|
|
||
|
local last_button_state
|
||
|
|
||
|
function update() -- this is the loop which periodically runs
|
||
|
|
||
|
local button_new_state = button:get_button_state(button_number) == button_active_state
|
||
|
|
||
|
-- the button has changes since the last loop
|
||
|
if button_new_state ~= last_button_state then
|
||
|
last_button_state = button_new_state
|
||
|
if button_new_state then
|
||
|
gcs:send_text(0, "LUA: Button pressed")
|
||
|
else
|
||
|
gcs:send_text(0, "LUA: Button released")
|
||
|
end
|
||
|
end
|
||
|
|
||
|
return update, 1000 -- reschedules the loop (1hz)
|
||
|
end
|
||
|
|
||
|
return update() -- run immediately before starting to reschedule
|