串口数据 ''' com_mq = Queue() com_instance = SerialThread.SC_thread_init(com_mq, com_port, 460800) ''' 串口解析 ''' def com_unregisterfun(cmd, data, port): #print(hex(cmd),':',binascii.hexlify(data).upper()) frame = packet.get_packet(cmd, data, len(data)) mqtt.mqtt_pub(config.mqtt_topic_tx_header + bs_id, frame) com_prase = prase.prase_class_init("com_prase", com_mq, com_unregisterfun) ''' MQTT数据 ''' mqtt_mq = Queue() sub_list = list() sub_list.append(config.mqtt_topic_rx_header + bs_id) print("服务器IP:", config.mqtt_broker_ip) mqtt = MqttThread.mqtt_thread_init(config.mqtt_broker_ip, sub_list, mqtt_mq) average_period = 3 wifi_seq = 0 def wifi_hb_send(): global wifi_seq
if (len(sys.argv) > 1): for i in range(1, len(sys.argv)): sub_tx_list.append("/EH100602/rx/" + sys.argv[i]) else: sub_tx_list.append("/EH100602/rx/#") mqtt_tx = MqttThread.mqtt_thread_init(config.mqtt_broker_ip, sub_tx_list, mq_tx) def un_register(cmd, data, port): #print(hex(cmd),binascii.hexlify(data)) pass mqtt_prase = prase.prase_class_init("mqtt_prase", mq, un_register) mqtt_tx_prase = prase.prase_class_init("mqtt_prase-tx", mq_tx, un_register) ''' { "bs_id":{ "rssi":xxx, "cnt",xxx } } ''' wifi_info = dict() def Prase_0A80_wifi_rssi(data, l, port): global wifi_info
if(len(sys.argv ) > 1): for i in range(1,len(sys.argv)): sub_list.append("/EH100602/tx/"+sys.argv[i]) else: sub_list.append("/EH100602/tx/#") #sub_list.append("/EH100602/rx/#") mqtt = MqttThread.mqtt_thread_init("192.168.0.158",sub_list,mq) def un_register(cmd,data,port): #print(hex(cmd),binascii.hexlify(data)) pass mqtt_prase = prase.prase_class_init("mqtt_prase",mq,un_register) show = dict() #show["figure_bs_unix_ts"] = dict() show["figure_bs_snd_uwb_ts"] = dict() show["figure_bs_snd_uwb_ts"]["xmax"] = 1000 show["figure_bs_snd_uwb_ts"]["show"] = dict() def Prase_2A07_Test(data,len,port): index = 0 #print(binascii.hexlify(data)) tp = struct.unpack("<HBBHBI",data[index:11])
count = int(sys.argv[3]) #print(type(com),type(interal),type(count)) print("input config", com, interal, count) else: print("default config", com, interal, count) file_name = "interval_%d__times_%d" % (interal, count) + ".txt" mqSerial = Queue() mqPacket = Queue() mqFileSave = Queue() serial_instance = SerialThread.SC_thread_init(mqSerial, com, 460800) FileSave.File_Save_Init("file_save", os.getcwd() + "\\", file_name, mqFileSave) def un_register(cmd, data, port): print(port, hex(cmd), binascii.hexlify(data)) pass serial_prase = prase.prase_class_init("serial_prase", mqPacket, un_register) #mqtt_prase.add_cmd(0x2A0A,Prase_2A0A_Test) while (True): msg = mqSerial.get() print("rcv", msg) mqFileSave.put(msg) mqPacket.put((msg, com))