golang怎么读取串口数据

2024-03-19

在Go语言中,可以使用第三方库github.com/tarm/serial来读取串口数据。首先需要安装这个库:

go get github.com/tarm/serial

然后可以使用以下代码来读取串口数据:

package main

import (
	"fmt"
	"log"
	"github.com/tarm/serial"
)

func main() {
	c := &serial.Config{Name: "/dev/ttyUSB0", Baud: 9600}
	s, err := serial.OpenPort(c)
	if err != nil {
		log.Fatal(err)
	}
	defer s.Close()

	buf := make([]byte, 128)
	for {
		n, err := s.Read(buf)
		if err != nil {
			log.Fatal(err)
		}
		fmt.Printf("Received %v bytes: %v\n", n, buf[:n])
	}
}

以上代码会不断读取串口数据,并打印出接收到的字节数据。可以根据具体的串口配置来修改串口名称和波特率。