如何使用intelhex包在python中读取intelhex文件的非零部分
我正在尝试使用python 3.6的intelhex包从intelhex文件中读取部分十六进制数据。使用下面的代码,我打开了文件,并试图转换为字典,如果它有帮助如何使用intelhex包在python中读取intelhex文件的非零部分,python,python-3.x,hex,hex-file,Python,Python 3.x,Hex,Hex File,我正在尝试使用python 3.6的intelhex包从intelhex文件中读取部分十六进制数据。使用下面的代码,我打开了文件,并试图转换为字典,如果它有帮助 ih = IntelHex("data.hex") mydict = ih.todict() 现在我有地址了 startAddress = some value 我想读取从$startAddress开始的存储数据,并将其分隔为零值。执行该操作的最佳方法是什么?以下代码是解决方案。首先,我将IntenHex文件转换为字典: from
ih = IntelHex("data.hex")
mydict = ih.todict()
现在我有地址了
startAddress = some value
我想读取从$startAddress开始的存储数据,并将其分隔为零值。执行该操作的最佳方法是什么?以下代码是解决方案。首先,我将IntenHex文件转换为字典:
from intelhex import IntelHex
ih = IntelHex("sampleFile.hex")
ihdict = ih.todict()
然后在字典中从startAddress
迭代到值为None
的位置。我将值存储在名为datastr
的字符串中
datastr = ""
startAddress = 500300
while ihdict.get(startAddress) != None:
datastr += str("%0.2X" %ihdict.get(startAddress))
startAddress += 1