add some fixes for macos serial prots
This commit is contained in:
parent
aa2ba43e8f
commit
4540aebf6d
|
|
@ -4,7 +4,6 @@ import random
|
|||
|
||||
usb_device = "/dev/tty.usbserial-2102926963071"
|
||||
|
||||
|
||||
def write_block(data, base_addr = 0):
|
||||
msg = b''
|
||||
|
||||
|
|
@ -13,8 +12,7 @@ def write_block(data, base_addr = 0):
|
|||
data_str = '{:04X}'.format(data)
|
||||
msg += f"M{addr_str}{data_str}\r\n".encode('ascii')
|
||||
|
||||
with serial.Serial(usb_device, 115200) as ser:
|
||||
ser.write(msg)
|
||||
ser.write(msg)
|
||||
|
||||
|
||||
def read_block(addrs, base_addr):
|
||||
|
|
@ -24,20 +22,25 @@ def read_block(addrs, base_addr):
|
|||
addr_str = '{:04X}'.format(base_addr + addr)
|
||||
msg += f"M{addr_str}\r\n".encode('ascii')
|
||||
|
||||
with serial.Serial(usb_device, 115200) as ser:
|
||||
ser.write(msg)
|
||||
response = ser.read(7*addrs)
|
||||
response = response.decode('ascii').replace('\r\n', '').split('M')
|
||||
return [int(i, 16) for i in response if i]
|
||||
ser.write(msg)
|
||||
response = ser.read(7*addrs)
|
||||
response = response.decode('ascii').replace('\r\n', '').split('M')
|
||||
return [int(i, 16) for i in response if i]
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
for i in range(1000):
|
||||
test_data = [random.randint(0, 65535) for i in range(32)]
|
||||
write_block(test_data, 0)
|
||||
|
||||
received = read_block(32, 0)
|
||||
print(i)
|
||||
|
||||
if(received != test_data):
|
||||
exit()
|
||||
with serial.Serial(usb_device, 115200) as ser:
|
||||
|
||||
sleep(1)
|
||||
|
||||
for i in range(1000):
|
||||
test_data = [random.randint(0, 65535) for i in range(32)]
|
||||
write_block(test_data, 0)
|
||||
|
||||
received = read_block(32, 0)
|
||||
print(i)
|
||||
|
||||
if(received != test_data):
|
||||
exit()
|
||||
|
|
|
|||
Loading…
Reference in New Issue