Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
Este repositório está arquivado. Você pode visualizar os arquivos e realizar clone, mas não poderá realizar push nem abrir issues e pull requests.

intel_hex_utils.py 596B

12345678910111213141516171819202122232425262728293031
  1. from intelhex import IntelHex
  2. from cStringIO import StringIO
  3. def sections(h):
  4. start, last_address = None, None
  5. for a in h.addresses():
  6. if last_address is None:
  7. start, last_address = a, a
  8. continue
  9. if a > last_address + 1:
  10. yield (start, last_address)
  11. start = a
  12. last_address = a
  13. if start:
  14. yield (start, last_address)
  15. def print_sections(h):
  16. for s in sections(h):
  17. print "[0x%08X - 0x%08X]" % s
  18. def decode(record):
  19. h = IntelHex()
  20. f = StringIO(record)
  21. h.loadhex(f)
  22. h.dump()