def read(reader, transfer): #Responsible for preventing endless rx thread loop LoopControl = True while (LoopControl): try: data = reader.Read() if (len(data) > 0): for index in range(0, len(data)): item = data[index] print('D+{0} = {1}'.format(index, Byte(item))) if (len(data) > 1): transfer.Write([0x06]) LoopControl = False except BadPacketReadError as err: print("Error Bytes") bytes = err.getArrayBytes() for index in range(0, len(bytes)): item = bytes[index] print('D+{0} = {1}\n'.format(index, Byte(item))) print err if (LoopControl == False): reader.__del__()
def read(reader, transfer): global ResultFrame packetObject = NextPointInformationTest() packetObject.createPointInformationPacket() while (True): try: data = reader.Read() if (len(data) > 0): for index in range(0, len(data)): item = data[index] print('D+{0} = {1}'.format(index, Byte(item))) if (len(data) > 1): transfer.Write([0x06]) ResultFrame = ResultFrame.format(data) #format data clientID = ResultFrame.packet.content.getParameter( "clientID") #get contentparam from packet ResultFrame = LocalFrameFormatter() #create new FrameFormatter instance packetObject.sendNextPointInformationPacket(clientID) #send nextpoint with client id of point reply except BadPacketReadError as err: print("Error Bytes") bytes = err.getArrayBytes() for index in range(0, len(bytes)): item = bytes[index] print('D+{0} = {1}\n'.format(index, Byte(item))) print err
def read(reader, transfer): #Responsible for preventing endless rx thread loop LoopControl = True strVar = "" while (LoopControl): data = reader.Read() if (len(data) == 1): if (data[0] == 0x06): #time.sleep(0.5); data = reader.Read() if (len(data) == 0): LoopControl = False if (len(data) > 1): transfer.Write([0x06]) for index in range(0, len(data)): item = data[index] strVar += str(Byte(item)) + ',' LoopControl = False if (LoopControl == False): reader.Stop() print(strVar) if (reader.IsRunning() == False): reader.__del__()
def size_parser(path_elf, path_size='size'): import re regex = r'^(\.\S+)\s*(\d+)' size = path_size.split() result = subprocess.run( [size[0], *size[1:], '-A', str(path_elf)], stdout=subprocess.PIPE, ).stdout.decode('utf-8') return { match.group(1): Byte(match.group(2)) for match in re.finditer(regex, result, re.MULTILINE) }
def size_parser(path): result = subprocess.run(['arm-none-eabi-size', path], stdout=subprocess.PIPE) result = result.stdout.decode('utf-8') head, data = result.strip().split('\n') def parse_size_table(data): return list(map(methodcaller('strip'), data.split()))[:-2] head = parse_size_table(head) data = parse_size_table(data) size = dict() for i, name in enumerate(head): size[name] = Byte(data[i]) return size
def linker_script_parser(path): with open(path, 'r') as fr: script = fr.readlines() memory_flag = False memory = dict() for line in script: if 'MEMORY' in line: memory_flag = True elif memory_flag: if '}' in line: break elif 'LENGTH' in line: name = line.strip().split(':')[0].strip().split()[0].strip() length = Byte(line.strip().split(':')[1].strip().split(',') [1].split('=')[1]) memory[name] = length return memory
def read(reader, nPackets): reader.Wait() status = False count = 0 while (reader.IsRunning()): try: data = reader.Read() if (len(data) > 0): for index in range(0, len(data)): item = data[index] print('D+{0} = {1}\n'.format(index, Byte(item))) if (nPackets == count): reader.Stop() count = 0 count = count + 1 except BadPacketReadError as err: print err return status
def __init__(self, flash, ram, eeprom): self.flash = Byte(flash) self.ram = Byte(ram) self.eeprom = Byte(eeprom) self.avrdude = None self.define = None