Serial listener Fixes
serial_read file fixed and added functionalities
This commit is contained in:
parent
b7c477b37e
commit
dd089cd3b3
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
|||||||
2024*.txt
|
2024*.txt
|
||||||
|
test/*
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import (
|
|||||||
"github.com/tarm/serial"
|
"github.com/tarm/serial"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
|
"strconv"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -36,7 +37,12 @@ func baudrateInput() int {
|
|||||||
|
|
||||||
fmt.Print("Enter baudrate (for example - '9600'): ")
|
fmt.Print("Enter baudrate (for example - '9600'): ")
|
||||||
fmt.Scanln(&s_baudrate)
|
fmt.Scanln(&s_baudrate)
|
||||||
|
baudrate = baudrateCheck(s_baudrate)
|
||||||
|
return baudrate
|
||||||
|
}
|
||||||
|
|
||||||
|
func baudrateCheck(s_baudrate string) int {
|
||||||
|
var baudrate int
|
||||||
switch s_baudrate {
|
switch s_baudrate {
|
||||||
case "4800":
|
case "4800":
|
||||||
baudrate = 4800
|
baudrate = 4800
|
||||||
@ -48,6 +54,7 @@ func baudrateInput() int {
|
|||||||
baudrate = 9600
|
baudrate = 9600
|
||||||
}
|
}
|
||||||
return baudrate
|
return baudrate
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func UserInput() (string, int) {
|
func UserInput() (string, int) {
|
||||||
@ -62,8 +69,48 @@ func getTime() string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
// User input
|
args := os.Args[1:]
|
||||||
port, baudrate := UserInput()
|
var port string
|
||||||
|
var baudrate int
|
||||||
|
|
||||||
|
if len(args) == 0 {
|
||||||
|
port, baudrate = UserInput()
|
||||||
|
} else {
|
||||||
|
i := 0
|
||||||
|
for i < len(args) {
|
||||||
|
if args[i] == "-p" && i+1 < len(args) {
|
||||||
|
port = args[i+1]
|
||||||
|
}
|
||||||
|
if args[i] == "-h" || args[i] == "--help" {
|
||||||
|
fmt.Println("-h, --help - prints this message")
|
||||||
|
fmt.Println("-p [port] - listens on port")
|
||||||
|
fmt.Println("-b [baudrate] - sets the baudrate")
|
||||||
|
fmt.Println("-d - runs the script with default values")
|
||||||
|
os.Exit(0)
|
||||||
|
|
||||||
|
}
|
||||||
|
if args[i] == "-b" && i+1 < len(args) {
|
||||||
|
var err error
|
||||||
|
baudrate, err = strconv.Atoi(args[i+1])
|
||||||
|
if err != nil {
|
||||||
|
fmt.Println("Invalid baudrate")
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if args[i] == "-d" {
|
||||||
|
port = "/dev/ACM0"
|
||||||
|
baudrate = 9600
|
||||||
|
}
|
||||||
|
i++
|
||||||
|
}
|
||||||
|
|
||||||
|
if port == "" {
|
||||||
|
port = portInput()
|
||||||
|
}
|
||||||
|
if baudrate == 0 {
|
||||||
|
baudrate = baudrateInput()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Listen on port
|
// Listen on port
|
||||||
fmt.Printf("Listening on port %s with baudrate %d:\n", port, baudrate)
|
fmt.Printf("Listening on port %s with baudrate %d:\n", port, baudrate)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user