1
0
mirror of https://github.com/hybridgroup/gobot.git synced 2025-04-29 13:49:14 +08:00
hybridgroup.gobot/platforms/neurosky/neurosky_adaptor.go

38 lines
675 B
Go
Raw Normal View History

2014-04-27 17:17:05 -07:00
package neurosky
import (
"github.com/hybridgroup/gobot"
"github.com/tarm/goserial"
"io"
)
type NeuroskyAdaptor struct {
gobot.Adaptor
2014-04-27 17:17:05 -07:00
sp io.ReadWriteCloser
connect func(string) io.ReadWriteCloser
}
2014-04-27 17:17:05 -07:00
func NewNeuroskyAdaptor() *NeuroskyAdaptor {
return &NeuroskyAdaptor{
connect: func(port string) io.ReadWriteCloser {
sp, err := serial.OpenPort(&serial.Config{Name: port, Baud: 57600})
if err != nil {
panic(err)
}
return sp
},
}
}
2014-04-27 17:17:05 -07:00
func (n *NeuroskyAdaptor) Connect() bool {
n.sp = n.connect(n.Adaptor.Port)
n.Connected = true
return true
}
2014-04-27 17:17:05 -07:00
func (n *NeuroskyAdaptor) Finalize() bool {
n.sp.Close()
n.Connected = false
return true
}