Skip to content

Instantly share code, notes, and snippets.

@JamsMendez
Created May 7, 2018 17:04
Show Gist options
  • Save JamsMendez/10cd8ef4098492443ac18889e2e0198f to your computer and use it in GitHub Desktop.
Save JamsMendez/10cd8ef4098492443ac18889e2e0198f to your computer and use it in GitHub Desktop.
Lectura Serial en Golang
const (
sizeRead = 64
carReturn = 13
newLine = 10
)
serialPort, _ := serial.OpenPort(options)
read := make(chan []byte)
var pkg []byte
go func() {
for {
buffer := make([]byte, sizeRead)
size, err := serialPort.Read(buffer)
if err != nil {
break
}
for i := 0; i < size; i++ {
b := buffer[i]
if b == carReturn {
read <- pkg
pkg = []byte{}
} else {
if b != newLine {
pkg = append(pkg, buffer[i])
}
}
}
}
}()
for buffer := read {
fmt.Println(string(buffer))
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment