gobot.io/x/gobot@v1.16.0/examples/joule_leds.go (about) 1 // +build example 2 // 3 // Do not build by default. 4 5 package main 6 7 import ( 8 "time" 9 10 "gobot.io/x/gobot" 11 "gobot.io/x/gobot/drivers/gpio" 12 "gobot.io/x/gobot/platforms/intel-iot/joule" 13 ) 14 15 func main() { 16 e := joule.NewAdaptor() 17 led0 := gpio.NewLedDriver(e, "GP100") 18 led1 := gpio.NewLedDriver(e, "GP101") 19 led2 := gpio.NewLedDriver(e, "GP102") 20 led3 := gpio.NewLedDriver(e, "GP103") 21 22 work := func() { 23 led0.Off() 24 led1.Off() 25 led2.Off() 26 led3.Off() 27 28 gobot.Every(1*time.Second, func() { 29 led0.Toggle() 30 }) 31 gobot.Every(2*time.Second, func() { 32 led1.Toggle() 33 }) 34 gobot.Every(4*time.Second, func() { 35 led2.Toggle() 36 }) 37 gobot.Every(8*time.Second, func() { 38 led3.Toggle() 39 }) 40 } 41 42 robot := gobot.NewRobot("blinkBot", 43 []gobot.Connection{e}, 44 []gobot.Device{led0, led1, led2, led3}, 45 work, 46 ) 47 48 robot.Start() 49 }