navigaid
11/19/2016 - 7:47 AM

arduino-serial-go

arduino-serial-go

package main

import (
	"bufio"
	"fmt"
	"github.com/tarm/serial"
	"time"
)

func main() {
	c := &serial.Config{Name: "/dev/tty.usbmodem1A121", Baud: 9600}
	s, err := serial.OpenPort(c)

	if err != nil {
		fmt.Println(err)
	}
		_, err = s.Write([]byte("1"))

		if err != nil {
			fmt.Println(err)
		}
	time.Sleep(time.Second / 2)

	reader := bufio.NewReader(s)
	for {
		reply, err := reader.ReadBytes('\n')
		if err != nil {
			panic(err)
		}
		fmt.Println(string(reply))
		fmt.Println("-----------------")
	}
	/*
		buf := make([]byte, 40)
		n, err := s.Read(buf)

		if err != nil {
			fmt.Println(err)
		}

		fmt.Println(string(buf[:n]))
	*/
	s.Close()
}