www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Load geht nicht mit neuem OpenOCD


Autor: visper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich wollte mal auf das neueste OpenOCD updaten. Leider musste ich 
feststellen, dass die Konfigurationsbefehle größten Teils geändert 
wurden. Nach ein wenig bastelei glaube ich nun eine Konfiguration 
erstellt zu haben, die das selbe bezweckt wie meine alte. Dennoch kann 
ich kein Programm in meinen ARM7 (STR710) laden. Folgende Ausgabe 
bekomme ich:
Open On-Chip Debugger 1.0 (2009-04-10-13:28) svn:1454M
BUGS? Read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS 

5 kHz
Info : JTAG tap: str710.cpu tap/device found: 0x3f0f0f0f (Manufacturer:
0x787, Part: 0xf0f0, Version: 0x3)
Info : JTAG Tap/device matched
Warn : DBGACK set while target was in unknown state. Reset or initialize
target.

target state: halted
target halted in ARM state due to breakpoint, current mode: Undefined
cpsr: 0xb00000db pc: 0x000ab5a8
Info : accepting 'gdb' connection from 0
Warn : acknowledgment received, but no packet pending
Info : JTAG tap: str710.cpu tap/device found: 0x3f0f0f0f (Manufacturer:
0x787, Part: 0xf0f0, Version: 0x3)
Info : JTAG Tap/device matched
Warn : srst pulls trst - can not reset into halted mode. Issuing halt after
reset.
target state: halted
target halted in ARM state due to debug-request, current mode: Undefined
cpsr: 0xb00000db pc: 0x000b2814
target state: halted
target halted in ARM state due to debug-request, current mode: Undefined
cpsr: 0xb00000db pc: 0x000b2814
requesting target halt and executing a soft reset
target state: halted
target halted in ARM state due to debug-request, current mode: Supervisor
cpsr: 0xb00000d3 pc: 0x00000000
Warn : negative reply, retrying
Warn : negative reply, retrying
Warn : acknowledgment received, but no packet pending
Warn : negative acknowledgment, but no packet pending
Warn : negative acknowledgment, but no packet pending
Warn : acknowledgment received, but no packet pending
Warn : negative reply, retrying
Warn : negative reply, retrying
Warn : acknowledgment received, but no packet pending
Warn : negative acknowledgment, but no packet pending
Warn : negative acknowledgment, but no packet pending
Warn : acknowledgment received, but no packet pending
Warn : negative reply, retrying
Warn : negative reply, retrying
Warn : acknowledgment received, but no packet pending
Warn : negative acknowledgment, but no packet pending
Warn : negative acknowledgment, but no packet pending
Warn : acknowledgment received, but no packet pending
Warn : negative reply, retrying

Die Fehler beginnen sobald ich das "load" Kommando in gdb starte. Da die 
Hardware 100%-tig funktioniert, kann es eigentlich nur an der 
Konfiguration liegen oder an einem Fehler im OpenOCD.

Hier mal mein Konfigurationsskript:
#daemon configuration
telnet_port 4444
gdb_port 3333
tcl_port 6666

# tell gdb the flash mem-map
gdb_memory_map enable
gdb_flash_program enable

#interface
interface ft2232
ft2232_device_desc "OOCDLink A"
ft2232_layout oocdlink
ft2232_vid_pid 0x0403 0xbaf8
jtag_khz 5

jtag_nsrst_delay 500
jtag_ntrst_delay 500

#target configuration
#start slow, speed up after reset
#jtag_khz 10

if { [info exists CHIPNAME] } {  
   set  _CHIPNAME $CHIPNAME    
} else {   
   set  _CHIPNAME str710
}

if { [info exists ENDIAN] } {  
   set  _ENDIAN $ENDIAN    
} else {   
   set  _ENDIAN little
}

if { [info exists CPUTAPID] } {  
   set  _CPUTAPID $CPUTAPID    
} else {   
   set  _CPUTAPID 0x3f0f0f0f
}

#use combined on interfaces or targets that can't set TRST/SRST separately
reset_config trst_and_srst srst_pulls_trst

#jtag scan chain

jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0x0f -expected-id
$_CPUTAPID

set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
target create $_TARGETNAME arm7tdmi -endian $_ENDIAN -chain-position
$_TARGETNAME -variant arm7tdmi
#$_TARGETNAME configure -event reset-start { jtag_khz 10 }
#$_TARGETNAME configure -event reset-init { jtag_khz 6000 }
$_TARGETNAME configure -event gdb-flash-erase-start {
  flash protect 0 0 7 off
  flash protect 1 0 1 off
}

$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x2000C000
-work-area-size 0x4000 -work-area-backup 0

#flash bank str7x <base> <size> 0 0 <target#> <variant>
flash bank str7x 0x40000000 0x00040000 0 0 0 STR71x
flash bank str7x 0x400C0000 0x00004000 0 0 0 STR71x

# OpenOCD kann loslegen
init

Kann da jemand den Fehler entdecken, oder sonstige Tips abgeben?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.