probe-rs? Мб есть какой-нибудь пример у кого...
Через target-gen попробовал сгенерировать chip-description, выдал yaml файл, использовал его для cargo flash, но пока что не получилось прошить, в логах при уровне WARN выдает это:
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR0 has invalid preamble (expected 0xd, got 0x0)
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR2 has invalid preamble (expected 0x5, got 0x0)
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR3 has invalid preamble (expected 0xb1, got 0x0)
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR0 has invalid preamble (expected 0xd, got 0xb1)
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR1 has invalid preamble (expected 0x0, got 0x1)
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR2 has invalid preamble (expected 0x5, got 0xb1)
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR0 has invalid preamble (expected 0xd, got 0x0)
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR2 has invalid preamble (expected 0x5, got 0x0)
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR3 has invalid preamble (expected 0xb1, got 0x0)
С уровнем лога TRACE выдает в конце такую ошибку:
DEBUG async_io::block_on: nusb::platform::windows_winusb::transfer: Transfer 0x208bfbd2470 on endpoint 84 complete: 2 bytes transferred
TRACE async_io::main_loop:react:process_timers: async_io::reactor: 0 ready wakers
TRACE async_io::block_on: async_io::driver: completed
TRACE async_io::main_loop:react: async_io::reactor: 0 ready wakers
TRACE probe_rs::probe::cmsisdap::commands: Receive buffer: [01, 00]...
TRACE async_io::main_loop: async_io::driver: waiting on I/O
Error TRACE async_io::main_loop:react:process_timers: async_io::reactor: 0 ready wakers
Connecting to the chip was unsuccessful.
probe-rs info нормально считывает
ARM Chip:
Debug Port: Version 1, DP Designer: ARM Ltd
└── 0 MemoryAP
└── ROM Table (Class 1)
├── Cortex-M4 SCS (Generic IP component)
│ └── CPUID
│ ├── IMPLEMENTER: ARM Ltd
│ ├── VARIANT: 0
│ ├── PARTNO: 3108
│ └── REVISION: 1
├── Cortex-M3 DWT (Generic IP component)
├── Cortex-M3 FBP (Generic IP component)
├── Cortex-M3 ITM (Generic IP component)
└── Cortex-M4 TPIU (Coresight Component
Когда добавляю параметр —chip Cortex-M4 выдает
thread 'main' panicked at probe-rs\src\bin\probe-rs\cmd\cargo_flash\mod.rs:102:79:
called `Result::unwrap()` on an `Err` value: Error while flashing
Caused by:
No flash memory contains the entire requested memory range 0x00000000..0x00000158.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
openocd нормально прошивает elf файл, который сбилдил rust'ом, probe-rs чет не удается пока что сделать
Для прошивки нужен код прошивпльщика, подходящий для целевого чипа, без него можно разве что в RAM прошивать
Разобрался, как завести. Скок времени убил, оказывается, надо было после —chip-description-path добавить —chip и название чипа из файла, сгенеренного target-gen, смэрть
Обсуждают сегодня