go-serial利用 Go 进行串口通讯
go-serial 是一个允许在Go中读取和写入串行端口的软件包。它利用Go进行串口通讯。
OS支持
目前该软件包仅适用于 OS X,Linux 和 Windows,它可能只需更新一些常量就可以移植到其他类Unix平台上。
安装
只需使用go get
:
go get github.com/jacobsa/go-serial/serial
更新:
go get -u github.com/jacobsa/go-serial/serial
使用
设置一个serial.OpenOptions
结构,然后调用serial.Open
。例如:
import "fmt" import "log" import "github.com/jacobsa/go-serial/serial" ... // Set up options. options := serial.OpenOptions{ PortName: "/dev/tty.usbserial-A8008HlV", BaudRate: 19200, DataBits: 8, StopBits: 1, MinimumReadSize: 4, } // Open the port. port, err := serial.Open(options) if err != nil { log.Fatalf("serial.Open: %v", err) } // Make sure to close it later. defer port.Close() // Write 4 bytes to the port. b := []byte{0x00, 0x01, 0x02, 0x03} n, err := port.Write(b) if err != nil { log.Fatalf("port.Write: %v", err) } fmt.Println("Wrote", n, "bytes.")
评论