https://github.com/rasyidkaromi/serialport
Windows Serial Port with GO
https://github.com/rasyidkaromi/serialport
go golang serial serial-communication serial-port serial-ports serialport windows
Last synced: 6 months ago
JSON representation
Windows Serial Port with GO
- Host: GitHub
- URL: https://github.com/rasyidkaromi/serialport
- Owner: rasyidkaromi
- License: mit
- Created: 2019-09-04T15:10:55.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-09-12T10:02:45.000Z (almost 7 years ago)
- Last Synced: 2024-06-20T03:35:57.317Z (about 2 years ago)
- Topics: go, golang, serial, serial-communication, serial-port, serial-ports, serialport, windows
- Language: Go
- Size: 10.7 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# serialport
Windows Serial Port with GO
Install
---------------
go get github.com/rasyidkaromi/serialport
Usage
---------------
```go
package main
import (
"log"
"github.com/rasyidkaromi/serialport"
"fmt"
"time"
)
func main (){
ports, err := serialport.GetPortsList()
if err != nil{
log.Fatal(err)
}
log.Println("Port mana yang ingin Anda gunakan?")
for _, port := range ports{
fmt.Println("*", port)
}
var portt string
fmt.Scanln(&portt)
log.Println("Port:", portt)
mode := &serialport.Mode{
BaudRate: 115200,
}
connection := serialport.NewConnection(portt, mode)
defer connection.Close()
go func (){
buffer := make([]byte, 100)
for {
time.Sleep(1000 * time.Millisecond)
n, buf, text, isOk := connection.Read(&buffer)
if isOk{
fmt.Println(buf)
fmt.Println(n)
fmt.Println(text)
}
}
} ()
var text string
for {
fmt.Scanln(&text)
connection.Write(text)
}
}
```