pyOcd pyOCD-0.8.1a1

from pyocd.probe.aggregator import DebugProbeAggregator
from pyocd.board.board import Board
from pyocd.core.helpers import ConnectHelper
from pyocd.core.target import Target
import logging
from pyocd.flash.file_programmer import FileProgrammer

from pyocd.core.memory_map import MemoryType
#from pyocd.core.coresight_target import CoreSightTarget
from pyocd.coresight.cortex_m import CortexM
session = ConnectHelper.session_with_chosen_probe(target_override="stm32f103rc")
session.open()
board = session.board
print("Board MSG:")
print("Board\'s name:%s" % board.name)
print("Board\'s description:%s" % board.description)
print("Board\'s target_type:%s" % board.target_type)
print("Board\'s unique_id:%s" % board.unique_id)
print("Board\'s test_binary:%s" % board.test_binary)
print("Unique ID: %s" % board.unique_id)

target = board.target
print("Part number:%s" % target.part_number)
memory_map = target.get_memory_map()
ram_region = memory_map.get_default_region_of_type(MemoryType.RAM)
rom_region = memory_map.get_boot_memory()
print("menory map:")
print(memory_map)
print("ram_region:")
print(ram_region)
print("rom_region:")
print(rom_region)
print(target.irq_table)

#print("pc reg: 0x%X" % target.read_core_register('pc'))

print("CortexM.CPUID:")
print(CortexM.CPUID)

target.read32(CortexM.CPUID)
print("CPUID:0x%x" % target.read32(CortexM.CPUID))
#print("device id:0x%x" % target.read32(0x40015800))
#print("flash size:%x KB" % target.read32(0x1FFFF7CC))

# Load firmware into device.

FileProgrammer(session).program("LED.bin")

# Reset, run.
target.reset_and_halt()
#target.resume()

# Read some registers.
print("pc: 0x%X" % target.read_core_register("pc"))

target.step()
print("pc: 0x%X" % target.read_core_register("pc"))

target.resume()
target.halt()
print("pc: 0x%X" % target.read_core_register("pc"))

target.reset_and_halt()

print("pc: 0x%X" % target.read_core_register("pc"))

# Connect to the target.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值