1-- $NetBSD: gpio.lua,v 1.4 2017/05/10 07:51:07 mbalmer Exp $ 2 3-- This example works only if all pins, starting from pin 0 up to the 4-- number returned by gpio.info() are, readable. It does _not_ work if 5-- only part of the pins are configured. 6 7local gpio = require 'gpio' 8 9print(gpio._VERSION .. ' - ' .. gpio._DESCRIPTION) 10print(gpio._COPYRIGHT) 11print() 12 13g = gpio.open('/dev/gpio0') 14 15local npins = g:info() 16 17print('gpio0 has ' .. npins .. ' pins.') 18 19for n = 0, npins - 1 do 20 print('pin ' .. n .. ': ' .. g:read(n)) 21end 22 23local oldval = g:write(31, gpio.PIN_HIGH) 24print('pin 31: ' .. oldval .. ' -> ' .. g:read(31)) 25 26oldval = g:toggle(31) 27print('pin 31: ' .. oldval .. ' -> ' .. g:read(31)) 28 29g:write(31, gpio.PIN_LOW) 30 31g:write(31, 5) 32 33