From 737abf6f2b66d917e6f2597473536c35f38c218b Mon Sep 17 00:00:00 2001 From: fish Date: Mon, 24 Jun 2019 12:11:57 +0800 Subject: [PATCH] =?UTF-8?q?aq=E6=95=B0=E6=8D=AE=E5=AE=8C=E5=96=84,h2s?= =?UTF-8?q?=E6=A0=A1=E5=87=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- router.go | 50 ++++++++++++++++++++++++++++++++------------------ tcpserver.go | 6 +++--- 2 files changed, 35 insertions(+), 21 deletions(-) diff --git a/router.go b/router.go index 669689a..8f82ef7 100644 --- a/router.go +++ b/router.go @@ -362,6 +362,8 @@ func dealDatav3(data []byte) string{ // log.Println("data[9]",int64(data[9])) // log.Println("data[10]",int64(data[10])) + log.Println("aqdata|all:",data) + if data[6] == 0{ buffer.WriteString("-") } @@ -376,10 +378,10 @@ func dealDatav3(data []byte) string{ } buffer.WriteString(wdint2) - log.Println("wdfh",data[6]) + log.Println("aqdata|wdfh",data[6]) wddata := buffer.String() - log.Println("wddata",wddata) + log.Println("aqdata|wddata",wddata) buffer = new(bytes.Buffer) @@ -393,7 +395,7 @@ func dealDatav3(data []byte) string{ buffer.WriteString(sdint2) sddata := buffer.String() - log.Println("sddata",sddata) + log.Println("aqdata|sddata",sddata) buffer = new(bytes.Buffer) @@ -407,38 +409,50 @@ func dealDatav3(data []byte) string{ buffer.WriteString(nh3int2) nh3data := buffer.String() - log.Println("nh3",nh3data) - log.Println("h2s",data[13]) + log.Println("aqdata|nh3",nh3data) + + + buffer = new(bytes.Buffer) + h2sint1 := strconv.Itoa(int(data[13])) + buffer.WriteString(nh3int1) + buffer.WriteString(".") + h2sint2 := strconv.Itoa(int(data[14])) + if int64(data[14])<10{ + buffer.WriteString("0") + } + buffer.WriteString(h2sint2) + h2sdata := buffer.String() + log.Println("aqdata|h2s",h2sdata) buffer = new(bytes.Buffer) - ch2o1 := strconv.Itoa(int(data[14])) + ch2o1 := strconv.Itoa(int(data[15])) buffer.WriteString(ch2o1) buffer.WriteString(".") - ch2o2 := strconv.Itoa(int(data[15])) - if int64(data[15])<10{ + ch2o2 := strconv.Itoa(int(data[16])) + if int64(data[16])<10{ buffer.WriteString("0") } buffer.WriteString(ch2o2) ch2o := buffer.String() // ch2o := uint32(data[14])*256+uint32(data[15]) - log.Println("ch2o",ch2o) + log.Println("aqdata|ch2o",ch2o) - co2data := uint32(data[16])*256+uint32(data[17]) - log.Println("co2data",co2data) + co2data := uint32(data[17])*256+uint32(data[18]) + log.Println("aqdata|co2data",co2data) - tvocdata := data[18] - log.Println("tvocdata",tvocdata) + tvocdata := data[19] + log.Println("aqdata|tvocdata",tvocdata) // log.Println("pm25data1",data[19]) // log.Println("pm25data2",data[20]) - pm25data := uint32(data[19])*256+uint32(data[20]) - log.Println("pm25data",pm25data) + pm25data := uint32(data[20])*256+uint32(data[21]) + log.Println("aqdata|pm25data",pm25data) // log.Println("pm10data1",data[21]) // log.Println("pm10data2",data[22]) - pm10data := uint32(data[21])*256+uint32(data[22]) - log.Println("pm10data",pm10data) + pm10data := uint32(data[22])*256+uint32(data[23]) + log.Println("aqdata|pm10data",pm10data) var R_data P1004_6 R_data.CODE = 1005 @@ -452,7 +466,7 @@ func dealDatav3(data []byte) string{ R_data.DATA["humidity"]=sddata R_data.DATA["nh3"]=nh3data - R_data.DATA["h2s"]=data[13] + R_data.DATA["h2s"]=h2sdata R_data.DATA["ch2o"]=ch2o R_data.DATA["co2"]=co2data R_data.DATA["tvoc"]=tvocdata diff --git a/tcpserver.go b/tcpserver.go index db779c7..5902a62 100644 --- a/tcpserver.go +++ b/tcpserver.go @@ -150,8 +150,8 @@ func readConn(conn net.Conn, readChan chan<- []byte, stopChan chan<- bool) { values = data[i+2:i+3] }else if dataType ==4 { //空气质量 - continueCount = 18 - end = 19 + continueCount = 19 + end = 20 if i+end >reqLen{ log.Println("yunhorndeug.push.data.tcp.fq",buffer.String(),addrs,dataType) continue @@ -217,7 +217,7 @@ func readConn(conn net.Conn, readChan chan<- []byte, stopChan chan<- bool) { _,ok := loraNodeMap.Load(buffer.String()) if !ok{ - log.Println("yunhorndeug.push.data.tcp.dev not exist:",buffer.String()) + log.Println("yunhorndeug.push.data.tcp.dev not exist:",buffer.String(),dataType,values) buffer = new(bytes.Buffer) continue }