From 4f8fc4fe0a7d6f73c3a06e6f924a4a2615b090d7 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期一, 05 七月 2021 10:14:01 +0800 Subject: [PATCH] Merge branch 'wxr6' into newBranch1 --- HDL_ON/DAL/DriverLayer/Control_Udp.cs | 58 +++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 45 insertions(+), 13 deletions(-) diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs index a87374e..789428d 100644 --- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs +++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs @@ -52,6 +52,15 @@ /// </summary> public void ControlBytesSend(Command command, byte subnetID, byte deviceID, byte[] gatewayBytes, int sendCount = 3) { +#if DEBUG + string ddd = ""; + foreach (var bb in gatewayBytes) + { + ddd += bb + ","; + } + MainPage.Log($"鍙戦�乥us鍛戒护:" + ((int)command).ToString("X").PadLeft(4,'0') + " : 鏁版嵁:" + ddd); +#endif + var control = new Control_Udp(); control.Send(new Target() { @@ -429,13 +438,16 @@ { case SPK.LightCCT: byte b0 = 100;//寮�鍏虫搷浣滀緷鎹畂n_off瀛楁锛屽疄闄呭紑鍏冲�间緷鎹産rightness锛屽綋on_off涓烘墦寮�锛宐rightness涓嶈兘涓�0 - if (function.trait_on_off.curValue.ToString() == "off") + if(commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) { - b0 = 0; + if (function.trait_on_off.curValue.ToString() == "off") + { + b0 = 0; + } } else { - b0 = Convert.ToByte( function.GetAttrState(FunctionAttributeKey.Brightness)) == 0 ? (byte)100 : Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); + b0 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));// == 0 ? (byte)100 : Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); } var bytes0 = new byte[] { function.bus.LoopId, b0, @@ -646,10 +658,10 @@ { b1 += (byte)(16 + wm); } - if (commandDictionary.ContainsKey("temp")) + if (commandDictionary.ContainsKey("set_temp")) { var dicTempString = ""; - commandDictionary.TryGetValue("temp", out dicTempString); + commandDictionary.TryGetValue("set_temp", out dicTempString); var dicTemp = Convert.ToByte(dicTempString); var mode = function.GetAttrState(FunctionAttributeKey.Mode); switch (mode) @@ -711,7 +723,7 @@ //4 杩愯妯″紡 1 - 閫氶锛�2 - 鍔犳箍 byte airFreshMode = 1; if (commandDictionary.ContainsKey(FunctionAttributeKey.Mode) == true - && commandDictionary[FunctionAttributeKey.Mode] == "fan") + && commandDictionary[FunctionAttributeKey.Mode] == "humidification") { airFreshMode = 2; } @@ -742,22 +754,31 @@ break; } } - //7 婀垮害璁惧畾 % //8 瀹ゅ唴娓╁害鍊� 鈩� + byte indoorTemp_airFrsh = 0; + if (commandDictionary.ContainsKey(FunctionAttributeKey.IndoorTemp) == true) + { + indoorTemp_airFrsh= Convert.ToByte(commandDictionary[FunctionAttributeKey.IndoorTemp]); + } + byte indoorHumidity_airFrsh = 0; + if (commandDictionary.ContainsKey(FunctionAttributeKey.IndoorHumidity) == true) + { + indoorHumidity_airFrsh = Convert.ToByte(commandDictionary[FunctionAttributeKey.IndoorHumidity]); + } //9 瀹ゅ唴婀垮害鍊� 鈩� //10 杩囨护缃戝墿浣� % - //11 杩囨护缃戜娇鐢ㄨ秴鏃� 1 瓒呮椂 0 鏃� + //11 杩囨护缃戜娇鐢ㄨ秴鏃� 1 瓒呮椂 0 鏃� ControlBytesSend(Command.FreshAirControl_JinMao, subnetId, deviceId, new byte[] { function.bus.LoopId,0, switchValue , airFreshMode,airFreshEnergy, airFreshFan, Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Humidity)), - 0,0,0,0 - //Convert.ToByte( function.GetAttrState(FunctionAttributeKey.IndoorTemp)), - //Convert.ToByte( function.GetAttrState(FunctionAttributeKey.IndoorHumidity)), + indoorTemp_airFrsh, + indoorHumidity_airFrsh, //Convert.ToByte( function.GetAttrState(FunctionAttributeKey.FilterRemain)), //function.GetAttrState(FunctionAttributeKey.FilterTimeout) =="true"?1:0, + 0,0 }); break; } @@ -984,7 +1005,7 @@ try { - //MainPage.Log("鍙戦�佹暟鎹�:" + SendFlag); + MainPage.Log("鍙戦�佹暟鎹�:" + SendFlag); UdpSocket._BusSocket.AsyncBeginSend(packet); packet.HaveSendCount--; @@ -1107,11 +1128,22 @@ var sendBytes = Control.Ins.ConvertSendBodyData(CommunicationTopic.SearchLoaclGateway, bodyString); //缁勬挱鍙戦�� packet = new Packet(sendBytes, new System.Net.IPEndPoint(System.Net.IPAddress.Parse("239.0.168.188"), 8585)); - packet.HaveSendCount = 4;//ps锛氭病鏈夐噸鍙戯紝鍚庢湡鏈夋椂闂村彲浠ュ鍔犻噸鍙戝垽鏂� + packet.HaveSendCount = 4; System.Threading.Thread thread = new System.Threading.Thread(new System.Threading.ParameterizedThreadStart(managerSendCount)); thread.IsBackground = true; thread.Start(packet); //wait();涓嶉渶瑕佺瓑寰� + + + + + //hjSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); + //hjSocket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Broadcast, true); + //EndPoint ipep = new IPEndPoint(IPAddress.Parse(CsConst.myLocalIP), HDLUDP.UDPPort); + //hjSocket.Bind(ipep); + + + } catch (Exception ex) { -- Gitblit v1.8.0