1
0
mirror of https://github.com/hybridgroup/gobot.git synced 2025-05-02 22:17:12 +08:00
hybridgroup.gobot/examples/firmata_metal_button.go
deadprogram 66f5b483f1 docs: modify metal example to range thru channel instead of select
Signed-off-by: deadprogram <ron@hybridgroup.com>
2017-01-30 11:48:15 +01:00

36 lines
588 B
Go

// TO RUN:
// firmata_metal_button <PORT>
//
// EXAMPLE:
// go run ./examples/firmata_metal_button /dev/ttyACM0
//
package main
import (
"fmt"
"os"
"gobot.io/x/gobot/drivers/gpio"
"gobot.io/x/gobot/platforms/firmata"
)
func main() {
f := firmata.NewAdaptor(os.Args[1])
f.Connect()
led := gpio.NewLedDriver(f, "2")
led.Start()
led.Off()
button := gpio.NewButtonDriver(f, "3")
button.Start()
buttonEvents := button.Subscribe()
for event := range buttonEvents {
fmt.Println("Event:", event.Name, event.Data)
if event.Name == gpio.ButtonPush {
led.Toggle()
}
}
}