43 lines
808 B
Python
43 lines
808 B
Python
|
#!/usr/bin/env python3
|
||
|
|
||
|
UNITS = {
|
||
|
0b0110000: 'A', # 22A
|
||
|
0b0110001: 'V', # Diode
|
||
|
0b0110010: 'Hz',
|
||
|
0b0110011: 'Ω',
|
||
|
0b0110100: '°C',
|
||
|
0b0110101: 'Ω', # Continuity
|
||
|
0b0110110: 'F',
|
||
|
0b0111001: 'A', # Manual
|
||
|
0b0111011: 'V',
|
||
|
0b0111101: 'µA',
|
||
|
0b0111110: 'ADP', # ???
|
||
|
0b0111111: 'mA'}
|
||
|
|
||
|
def parse(f):
|
||
|
for frame in f.readlines():
|
||
|
data = frame.strip()
|
||
|
if len(data) != 12:
|
||
|
continue
|
||
|
digits = data[1:6]
|
||
|
print(digits+UNITS[ord(data[6])])
|
||
|
|
||
|
|
||
|
|
||
|
def main(argv):
|
||
|
for fn in argv:
|
||
|
with open(fn, 'r') as f:
|
||
|
parse(f)
|
||
|
else:
|
||
|
import sys
|
||
|
parse(sys.stdin)
|
||
|
|
||
|
return 0
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
import sys
|
||
|
|
||
|
sys.exit(main(sys.argv[1:]))
|
||
|
|