模块:pylink
个人微信: wzdhh991
邮箱: wzd991@126.com
个人比较懒,CSDN更新缓慢,有相关问题可发邮箱或个人微信交流!
烧写:
import pylink
#固件下装方法
def down_load_file(device= 'APM32072CB',filex_name,address):
try:
filex = 'test.bin'
self.jlink = pylink.JLink()
self.jlink.open()
self.jlink.set_reset_pin_low()
time.sleep(0.05)
self.jlink.set_reset_pin_high()
self.jlink.set_tif(pylink.enums.JLinkInterfaces.SWD) # 成功返回True
self.jlink.connect(device) # 成功无返回
self.jlink.halt()
self.jlink.erase()
self.jlink.flash_file(filex_name, address)
self.jlink.reset()
except Exception as e:
msg = '{}:{} {} '.format(e.__traceback__.tb_frame.f_globals["__file__"], e.__traceback__.tb_lineno, e)
self.signal_jlink_log_add.emit(msg)
finally:
self.jlink.close()
jlink读取内存:
def slot_jlink_read_mem(device= 'APM32072CB',address, size):
try:
self.jlink = pylink.JLink()
self.jlink.open()
self.jlink.set_tif(pylink.enums.JLinkInterfaces.SWD) # 成功返回True
#
self.jlink.connect(device) # 成功无返回
temp = bytearray(self.jlink.memory_read(address, size))
return temp
except Exception as e:
msg = '读取失败.. {}:{} {} '.format(e.__traceback__.tb_frame.f_globals["__file__"],
e.__traceback__.tb_lineno, e)
print(msg)
finally:
self.jlink.close()
return None
片擦除:
def slot_jlink_erase_chip(device= 'APM32F072CB'):
try:
self.jlink = pylink.JLink()
self.jlink.open()
self.jlink.set_reset_pin_low()
time.sleep(0.05)
self.jlink.set_reset_pin_high()
self.jlink.set_tif(pylink.enums.JLinkInterfaces.SWD) # 成功返回True
self.jlink.connect(device) # 成功无返回
self.jlink.halt()
self.jlink.erase()
cpu硬复位:
def slot_jlink_reset(device= 'APM32F072CB'):
try:
self.jlink = pylink.JLink()
self.jlink.open()
self.jlink.set_reset_pin_low()
time.sleep(0.05)
self.jlink.set_reset_pin_high()
except Exception as e:
msg = '复位失败.. {}:{} {} '.format(e.__traceback__.tb_frame.f_globals["__file__"],
e.__traceback__.tb_lineno, e)
self.signal_jlink_log_add.emit(msg)
finally:
self.jlink.close()
版权声明:本文为weixin_45538467原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。