用户工具

站点工具


microbit:misc:gobot_-_microbit_的_golang_framework

Gobot - Microbit 平台的 Golang Framework

Microbit的Gobot平台包括几个不同的驱动程序,每个驱动程序对应不同的功能:

  • 加速计
  • 按键
  • IO
  • LED
  • 磁力计
  • 温度

LEDDriver

package main
 
import (
        "os"
        "time"
 
        "gobot.io/x/gobot"
        "gobot.io/x/gobot/platforms/ble"
        "gobot.io/x/gobot/platforms/microbit"
)
 
func main() {
        bleAdaptor := ble.NewClientAdaptor(os.Args[1])
        ubit := microbit.NewLEDDriver(bleAdaptor)
 
        work := func() {
                ubit.Blank()
                gobot.After(1*time.Second, func() {
                        ubit.WriteText("Hello")
                })
                gobot.After(7*time.Second, func() {
                        ubit.Smile()
                })
        }
 
        robot := gobot.NewRobot("blinkBot",
                []gobot.Connection{bleAdaptor},
                []gobot.Device{ubit},
                work,
        )
 
        robot.Start()
}

GPIO and AIO Drivers

package main
 
import (
        "os"
 
        "gobot.io/x/gobot"
        "gobot.io/x/gobot/drivers/gpio"
        "gobot.io/x/gobot/platforms/ble"
        "gobot.io/x/gobot/platforms/microbit"
)
 
func main() {
        bleAdaptor := ble.NewClientAdaptor(os.Args[1])
 
        ubit := microbit.NewIOPinDriver(bleAdaptor)
        button := gpio.NewButtonDriver(ubit, "0")
        led := gpio.NewLedDriver(ubit, "1")
 
        work := func() {
                button.On(gpio.ButtonPush, func(data interface{}) {
                        led.On()
                })
                button.On(gpio.ButtonRelease, func(data interface{}) {
                        led.Off()
                })
        }
 
        robot := gobot.NewRobot("buttonBot",
                []gobot.Connection{bleAdaptor},
                []gobot.Device{ubit, button, led},
                work,
        )
 
        robot.Start()
}


purge    随机主题   
microbit/misc/gobot_-_microbit_的_golang_framework.txt · 最后更改: 2021/03/19 12:35 由 shaoziyang · 查看次数: 12532