我正在尝试使用 python 3.6 的 Intelhex 包从 intelhex 文件中读取部分十六进制数据。使用以下代码打开文件并尝试转换为字典(如果有帮助)。
ih = IntelHex("data.hex")
mydict = ih.todict()
现在我有地址了
startAddress = some value
我想读取从 $startAddress 分隔到零值的存储数据。执行此操作的最佳方法是什么?
我正在尝试使用 python 3.6 的 Intelhex 包从 intelhex 文件中读取部分十六进制数据。使用以下代码打开文件并尝试转换为字典(如果有帮助)。
ih = IntelHex("data.hex")
mydict = ih.todict()
现在我有地址了
startAddress = some value
我想读取从 $startAddress 分隔到零值的存储数据。执行此操作的最佳方法是什么?
以下代码是解决方案。首先,我将 IntenHex 文件转换为字典:
from intelhex import IntelHex
ih = IntelHex("sampleFile.hex")
ihdict = ih.todict()
然后遍历字典 fromstartAddress
到 value 所在的地方None
。我将值存储在一个名为datastr
.
datastr = ""
startAddress = 500300
while ihdict.get(startAddress) != None:
datastr += str("%0.2X" %ihdict.get(startAddress))
startAddress += 1