Witam
Posiadam oryginalnego JLinka firmy Segger + sterowniki libusb-win32 1.2.2. Mam problem z połączeniem z targetem w OpenOCD. Używam mikrokontrolera STM32. Takie błędy mi wyskakują:
Mój plik stm32.cfg wygląda następująco:
Zmiany speed-a jtaga nic nie dały.
Bardzo proszę o wszelkie sugestie jak temu zaradzić bez zmiany jtaga. Może już się ktoś z czymś takim spotkał - będę wdzięczny za każdą pomoc.
Pozdrawiam
Posiadam oryginalnego JLinka firmy Segger + sterowniki libusb-win32 1.2.2. Mam problem z połączeniem z targetem w OpenOCD. Używam mikrokontrolera STM32. Takie błędy mi wyskakują:
C:\>openocd -f interface/jlink.cfg -f target/stm32.cfg
Open On-Chip Debugger 0.4.0 (2010-02-22-19:05)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.berlios.de/doc/doxygen/bugs.html
100 kHz
jtag_nsrst_delay: 100
jtag_ntrst_delay: 100
Info : J-Link initialization started / target CPU reset ini
Info : J-Link ARM V8 compiled Sep 30 2010 13:08:47
Info : JLink caps 0xb9ff7bbf
Info : JLink hw version 80000
Info : JLink max mem block 8376
Info : Vref = 3.267 TCK = 1 TDI = 0 TDO = 0 TMS = 0 SRST =
Info : J-Link JTAG Interface ready
Error: usb_bulk_read failed (requested=1, result=-5)
Error: jlink_tap_execute, wrong result -107 (expected 1)
Info : clock speed 100 kHz
Error: usb_bulk_read failed (requested=1, result=-116)
Error: jlink_tap_execute, wrong result -107 (expected 1)
Error: usb_bulk_read failed (requested=1, result=-116)
Error: jlink_tap_execute, wrong result -107 (expected 1)
Command handler execution failed
Warn : jtag initialization failed; try 'jtag init' again.
Mój plik stm32.cfg wygląda następująco:
# script for stm32
if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME
} else {
set _CHIPNAME stm32
}
if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN
} else {
set _ENDIAN little
}
# Work-area is a space in RAM used for flash programming
# By default use 16kB
if { [info exists WORKAREASIZE] } {
set _WORKAREASIZE $WORKAREASIZE
} else {
set _WORKAREASIZE 0x4000
}
# JTAG speed should be <= F_CPU/6. F_CPU after reset is 8MHz, so use F_JTAG = 1MHz
jtag_khz 100
jtag_nsrst_delay 100
jtag_ntrst_delay 100
#jtag scan chain
if { [info exists CPUTAPID ] } {
set _CPUTAPID $CPUTAPID
} else {
# See STM Document RM0008
# Section 26.6.3
set _CPUTAPID 0x3ba00477
}
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
if { [info exists BSTAPID ] } {
# FIXME this never gets used to override defaults...
set _BSTAPID $BSTAPID
} else {
# See STM Document RM0008
# Section 29.6.2
# Low density devices, Rev A
set _BSTAPID1 0x06412041
# Medium density devices, Rev A
set _BSTAPID2 0x06410041
# Medium density devices, Rev B and Rev Z
set _BSTAPID3 0x16410041
# High density devices, Rev A
set _BSTAPID4 0x06414041
# Connectivity line devices, Rev A and Rev Z
set _BSTAPID5 0x06418041
}
jtag newtap $_CHIPNAME bs -irlen 5 -expected-id $_BSTAPID1 \
-expected-id $_BSTAPID2 -expected-id $_BSTAPID3 \
-expected-id $_BSTAPID4 -expected-id $_BSTAPID5
set _TARGETNAME $_CHIPNAME.cpu
target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME
$_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0
set _FLASHNAME $_CHIPNAME.flash
flash bank $_FLASHNAME stm32x 0 0 0 0 $_TARGETNAME
# For more information about the configuration files, take a look at:
# openocd.texi
Zmiany speed-a jtaga nic nie dały.
Bardzo proszę o wszelkie sugestie jak temu zaradzić bez zmiany jtaga. Może już się ktoś z czymś takim spotkał - będę wdzięczny za każdą pomoc.
Pozdrawiam