gobot.io/x/gobot/v2@v2.1.0/examples/raspi_stepper_move.go (about) 1 //go:build example 2 // +build example 3 4 // 5 // Do not build by default. 6 7 package main 8 9 import ( 10 "fmt" 11 12 "gobot.io/x/gobot/v2" 13 "gobot.io/x/gobot/v2/drivers/gpio" 14 "gobot.io/x/gobot/v2/platforms/raspi" 15 ) 16 17 func main() { 18 r := raspi.NewAdaptor() 19 stepper := gpio.NewStepperDriver(r, [4]string{"7", "11", "13", "15"}, gpio.StepperModes.DualPhaseStepping, 2048) 20 21 work := func() { 22 //set spped 23 stepper.SetSpeed(15) 24 25 //Move forward one revolution 26 if err := stepper.Move(2048); err != nil { 27 fmt.Println(err) 28 } 29 30 //Move backward one revolution 31 if err := stepper.Move(-2048); err != nil { 32 fmt.Println(err) 33 } 34 } 35 36 robot := gobot.NewRobot("stepperBot", 37 []gobot.Connection{r}, 38 []gobot.Device{stepper}, 39 work, 40 ) 41 42 robot.Start() 43 }