private void json_status_recv_parse(json_status status)
        {
#if  CONSOLE_DEBUG
            Console.WriteLine("----------json_status_recv_parse-------------");
            Console.WriteLine("json func:" + status.FUNC);
            Console.WriteLine("json operate:" + status.OPERATE);
            Console.WriteLine("json status:" + status.STATUS);
            Console.WriteLine("json param1:" + status.PARAM1);
            Console.WriteLine("json param2:" + status.PARAM2);
            Console.WriteLine("json param3:" + status.PARAM3);
            Console.WriteLine("json param4:" + status.PARAM4);
            Console.WriteLine("json param5:" + status.PARAM5);
            Console.WriteLine("----------json_status_recv_parse  end--------");
#endif
            if (status.FUNC == "HW")
            {
                if (status.OPERATE == "DHT11_UPDATE")
                {
                    l_hump.Text = "";
                    l_hump.Text = status.PARAM1 + "% RH";
                    l_temp.Text = "";
                    l_temp.Text = status.PARAM2 + "℃";
                }
            }
        }
        private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            if (serialPort1.IsOpen)
            {
                try
                {
                    string recv_data_string;
                    int    recv_data_count = serialPort1.BytesToRead;
                    while (serialPort1.BytesToRead > 0)
                    {
                        recv_data_string = serialPort1.ReadLine();


                        if (recv_data_string.Contains("{\r") || (serial_recv_status == PARSEING_JSON))
                        {
                            serial_recv_status = PARSEING_JSON;

                            if (recv_data_string.Contains("}"))
                            {
                                if (recv_data_string.Length > 1)
                                {
                                    t_data_recv.AppendText(recv_data_string.Substring(1));
                                }

                                recv_json_str     += "}";
                                serial_recv_status = PRINTFING_LOG;
#if  CONSOLE_DEBUG
                                Console.WriteLine(recv_json_str);
#endif

                                json_status status = JsonConvert.DeserializeObject <json_status>(recv_json_str);

                                json_status_recv_parse(status);
                                recv_json_str = "";
                                //return;
                            }
                            else
                            {
                                recv_json_str += recv_data_string;
                            }
                        }
                        else
                        {
                            t_data_recv.AppendText(recv_data_string + '\r' + '\n');
                        }
                    }
                }
                catch (Exception ex)
                {
                    return;
                }
            }
        }