0

为此建议一种最佳和有效的方法

a = "data read from serial port in HEX"
TX1 = "\x10\x04"
RX1 = "\x10\x04"
TX2 = "\xF2\x00\x04\x43\x30\x40\x32\xED\x45"
RX2 = "\x06\xF2\x00\x13\x50\x30\x40\x30\x30\x31\x31\x31\x30\x31\x31\x30\x30\x30\x30\x30\x30\x30\x30\xAE\xFD"
if tx1 in a:
    send.ser(rx1)
    read_buufer()
if tx2 in a:
    send.ser(rx2)
    read_buf()

那么进行此比较的最佳方法是什么....只是想验证从串行缓冲区(a)接收到的十六进制数据,并使用可用请求字符串 tx1、tx2、tx3 .....txn 的列表进行验证并将响应发送到从 rx1,rx2,rx2......rxn...

4

1 回答 1

2

一种选择是使用字典:

tx_rx = {TX1: RX1, TX2: RX2}
for tx in tx_rx:
    if tx in a:
        send.ser(tx_rx[tx])
        read_buf()
于 2012-05-02T18:35:56.197 回答