详解def process_setup_packets(cxn, setup_pkts): """ Process packets sent in flattened form into actual labrad packets on the given connection. """ pkts = [] for ctxt, server, settings in setup_pkts: if ctxt[0] == 0: print('Using a context with high ID = 0 for ' 'packet requests might not do what you want!!!') p = cxn[server].packet(context=ctxt) for rec in settings: if len(rec) == 2: setting_, data = rec p[setting_](data) elif len(rec) == 1: setting_, = rec p[setting_]() else: raise Exception('Malformed setup packet: ctx={}, server={}, ' 'settings={}'.format(ctxt, server, settings)) pkts.append(p) return pkts
时间: 2023-05-21 14:05:04 浏览: 127
这是一段Python代码,它实现了将压缩后的数据包转换为实际的数据包的功能。具体地,它遍历给定的压缩包,对于每一个数据包,它首先根据包的信息创建一个新的数据包,然后再遍历这个数据包中的设置项,将设置项的值设置到数据包中,最后将这个数据包添加到返回的包列表中。
相关问题
4.2 LOGICAL TRANSPORT ADDRESS (LT_ADDR) Each slave active in a piconet is assigned a primary 3-bit logical transport address (LT_ADDR). The all-zero LT_ADDR is reserved for ASB and PSB broadcast messages. The CSB logical transport uses a single non-zero LT_ADDR. The master does not have an LT_ADDR. A master's timing relative to the slaves distinguishes it from the slaves. A secondary LT_ADDR is assigned to the slave for each eSCO logical transport in use in the piconet. The secondary LT_ADDR shall not be 0. Only eSCO traffic (i.e. NULL, POLL, and one of the EV packet types as negotiated at eSCO logical transport setup) may be sent on these LT_ADDRs. ACL traffic (including LMP) shall always be sent on the primary LT_ADDR. A slave shall only accept packets with matching primary or secondary LT_ADDR and broadcast packets. 翻译一下这段内容
这段内容讲述了在一个 Piconet 中,每个从设备都会被分配一个 3 位的主要逻辑传输地址(LT_ADDR)。所有数字为 0 的 LT_ADDR 保留用于 ASB 和 PSB 的广播消息。CSB 逻辑传输使用单个非零的 LT_ADDR。主设备没有 LT_ADDR。主设备与从设备的时序差异可区分它们。在使用的每个 eSCO 逻辑传输中,从设备会被分配一个次要的 LT_ADDR。次要 LT_ADDR 不能为 0。这些 LT_ADDRs 只能用于 eSCO 流量(即 NULL、POLL 和一种在 eSCO 逻辑传输设置协商中确定的 EV 数据包类型)。ACL 流量(包括 LMP)必须始终在主要 LT_ADDR 上发送。从设备只能接受与主要或次要 LT_ADDR 匹配的数据包和广播数据包。
帮我解析一下代买class track_tcp_GUI: def __init__(self,packets,packet): self.root= Tk() self.root.title('flow_information') self.root.geometry('800x400') # 这里的乘号不是 * ,而是小写英文字母 x self.frame0= tk.Frame(self.root,bd=5,relief = 'sunken') self.frame0.place(x=10,y=0,width=780,height=200,) self.frame1= tk.Frame(self.root,bd=5,relief = 'sunken') self.frame1.place(x=10,y=205,width=780,height=190,) #self.show_details(packets) #self.show_track(packets,packet) self.packets=packets self.packet=packet self.table() self.hex_content()
这段代码是定义了一个名为“class track_tcp_GUI”的类,它包含一个构造函数__init__()。这个构造函数有两个参数,分别是“packets”和“packet”。在构造函数中,创建了一个TK对象,设置了窗口的标题和大小。
阅读全文