diff --git a/db/gateway.db b/db/gateway.db index 4a556c4..2e276bc 100644 Binary files a/db/gateway.db and b/db/gateway.db differ diff --git a/loadconfig.go b/loadconfig.go index f02aac3..19bd69f 100644 --- a/loadconfig.go +++ b/loadconfig.go @@ -25,6 +25,7 @@ type Conf struct { WEBSOCKETURL []string `json:"websocketurl"` POST_TO_SERVER string `json:"post_to_server"` DEBUG bool `json:"debug"` + OPENSERIAL bool `json:"openserial"` } type Gateway_info struct { diff --git a/main.go b/main.go index ab35fa6..3d74da7 100644 --- a/main.go +++ b/main.go @@ -26,7 +26,7 @@ func main() { log.Printf("listen fail, err: %v\n", err) return } - + for { conn, err := listener.Accept() if err != nil { @@ -34,7 +34,7 @@ func main() { continue } // go process(conn) - go handleConn(conn) + go handleConn(conn) } // select {} diff --git a/serial_init.go b/serial_init.go index 06a7fbf..3180bb6 100644 --- a/serial_init.go +++ b/serial_init.go @@ -21,25 +21,30 @@ func serial_run() { port_arr = append(port_arr, ports_arr[i]) } // 解析串口配置 - for _, i := range port_arr { - var PARITY serial.Parity - switch conf.SERIALPORTS_LIST[i].PARITY { - case "N": - PARITY = 'N' - case "E": - PARITY = 'E' + if conf.OPENSERIAL{ + for _, i := range port_arr { + var PARITY serial.Parity + switch conf.SERIALPORTS_LIST[i].PARITY { + case "N": + PARITY = 'N' + case "E": + PARITY = 'E' + } + // 打开串口 + SERIAL_PORT[i], err = serial.OpenPort(&serial.Config{ + Name: conf.SERIALPORTS_LIST[i].COM, + Baud: conf.SERIALPORTS_LIST[i].BAUDS, + Parity: PARITY, + ReadTimeout: time.Millisecond * time.Duration(conf.SERIALPORTS_LIST[i].READTIMEOUT), + + // ReadTimeout: time.Second * time.Duration(conf.SERIALPORTS_LIST[i].READTIMEOUT), + + }) + check(err) + defer SERIAL_PORT[i].Close() } - // 打开串口 - SERIAL_PORT[i], err = serial.OpenPort(&serial.Config{ - Name: conf.SERIALPORTS_LIST[i].COM, - Baud: conf.SERIALPORTS_LIST[i].BAUDS, - Parity: PARITY, - ReadTimeout: time.Millisecond * time.Duration(conf.SERIALPORTS_LIST[i].READTIMEOUT), - // ReadTimeout: time.Second * time.Duration(conf.SERIALPORTS_LIST[i].READTIMEOUT), - }) - check(err) - defer SERIAL_PORT[i].Close() } + if conf.DEBUG { log.Println(SERIAL_PORT) } diff --git a/worker.go b/worker.go index 615ef62..2310745 100644 --- a/worker.go +++ b/worker.go @@ -35,7 +35,7 @@ func yunhorn_ys_l_v1(data_buf []byte){ log.Println(device) } - send_data(1005, device) + // send_data(1005, device) }