Fix reset

This commit is contained in:
cyp0633 2022-06-06 16:36:35 +08:00
parent eaf2eb9a96
commit 5093caf0a7
Signed by: cyp0633
GPG Key ID: E1BC508A994A5138
2 changed files with 15 additions and 13 deletions

View File

@ -2,8 +2,8 @@ package tools
import (
"fmt"
"time"
"io"
"time"
)
const (
@ -25,8 +25,8 @@ func CheckSlave(addr, depth int) bool {
var sendData = []byte{byte(PACKET_HEAD), byte(addr), byte(FUN_CHECKSLAVE), byte(CHECK_CONTENT)}
sendData = append(sendData, checkSum(sendData))
go Send(sendData)
recvData,err := Recv()
if err==io.EOF {
recvData, err := Recv()
if err == io.EOF {
return false
}
if recvData[0] == byte(PACKET_HEAD) &&
@ -55,7 +55,7 @@ func GetGrade(addr, depth int) int {
var sendData = []byte{byte(PACKET_HEAD), byte(BROADCAST_ADDR), byte(FUN_READINFO), byte(addr)}
sendData = append(sendData, checkSum(sendData))
go Send(sendData)
recvData,_ := Recv()
recvData, _ := Recv()
if recvData[0] == byte(PACKET_HEAD) &&
recvData[1] == byte(addr) &&
recvData[2] == byte(FUN_READINFO) {
@ -72,9 +72,11 @@ func GetGrade(addr, depth int) int {
}
func Reset() {
var sendData = []byte{byte(PACKET_HEAD), byte(BROADCAST_ADDR), byte(FUN_RESET), 0x00}
sendData = append(sendData, checkSum(sendData))
go Send(sendData)
var sendData = []byte{0x5a, 0x00, 0x01, 0x00, 0x5b}
//sendData = append(sendData, checkSum(sendData))
Send(sendData)
Send(sendData)
Send(sendData)
fmt.Printf("Reset: success\n")
}

View File

@ -7,7 +7,7 @@ import "io"
var conn *serial.Port
func init() {
c := &serial.Config{Name: "/dev/ttyUSB0", Baud: 9600, ReadTimeout: time.Millisecond*500}
c := &serial.Config{Name: "/dev/ttyUSB0", Baud: 9600, ReadTimeout: time.Millisecond * 500}
var err error
conn, err = serial.OpenPort(c)
if err != nil {
@ -21,14 +21,14 @@ func Send(data []byte) {
}
}
func Recv() ([]byte,error) {
func Recv() ([]byte, error) {
buf := make([]byte, 128)
n, err := conn.Read(buf)
if err==io.EOF {
return nil,err
if err == io.EOF {
return nil, err
}
if err != nil && err!=io.EOF {
if err != nil && err != io.EOF {
panic(err)
}
return buf[:n],nil
return buf[:n], nil
}