Probleme mit AT91SAM7 mit GnuArm und OpenOCD

OP #1655010
Lesenswert?
• ▲
▼
Hallo,

wollte ein einfach Startprogramm auf einem AT91SAM7SE256 auführen 
lassen. Dabei benutze ich Eclipse, als Debugger arm-elf-gdb und als 
external tool OpenOCD. Für die verbindung benutze ich das ARM-USB-OCD 
Kabel von Olimex. Die Toolchain äuft unter windows 7, 64 bit version.

Das config-file sieht folgendermasen aus:

1
#interface
2
interface ft2232
3
ft2232_device_desc "Olimex OpenOCD JTAG A"
4
ft2232_layout "olimex-jtag"
5
ft2232_vid_pid 0x15BA 0x0003
6
jtag_speed 5
7

8
#daemon configuration
9
telnet_port 4444
10
gdb_port 3333 
11
daemon_startup attach
12

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

16
#jtag scan chain
17
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
18
jtag_device 4 0x1 0xf 0xe
19

20
#target configuration
21
#target arm7tdmi <reset mode> <chainpos> <endianness> <variant>
22
target arm7tdmi little run_and_halt 0
23
daemon_startup reset
24

25
#flash configuration
26
flash bank at91sam7 0 0 0 0 0


Der Programmcode ist einfach:

1
#include <stdio.h>
2

3
int a;
4

5
int main()
6
{
7
  a=5;
8
  return 0;
9
}


und das Makefile:
1
COMPILER=arm-elf-
2

3
COPY=$(COMPILER)objcopy
4

5
OUTFILE=hello
6

7
LDFLAGS+=-Wl,--cref
8
LDFLAGS+=-lc -lgcc
9
ASFLAGS=-D__ASSEMBLY__ -D$(TARGET) -g -mcpu=arm7tdmi -c $(OPTIM) -Wall -I$(INCL)
10

11
all: hello
12

13
hello: main.o
14
  $(COMPILER)gcc $(LDFLAGS) -n -o $(OUTFILE).elf main.o
15
  $(COPY) --strip-debug --strip-unneeded $(OUTFILE).elf -O binary $(OUTFILE).bin
16

17
main.o: main.c 
18
  $(COMPILER)gcc -c -g main.c 
19

20
clean:
21
  del /F *.o *.bin *.elf *.map


Bei Initialize hab ich :

target remote localhost:3333

Bei run:

monitor reset 1
load
continue


Nun ergibt sich das ausführen des debuggers und external tools 
folgendes:


target remote localhost:3333
0x0010d2d0 in ?? ()
monitor reset 1
usage: reset ['run', 'halt', 'init', 'run_and_halt', 'run_and_init]
load
`C:\Studium\Eclipse_Projects\HalloWeltSE256\hello.elf' has changed; 
re-reading symbols.
Loading section .init, size 0x20 lma 0x8000
Loading section .text, size 0x220c lma 0x8020
Loading section .fini, size 0x1c lma 0xa22c
Loading section .rodata, size 0xc lma 0xa248
Loading section .eh_frame, size 0x4 lma 0xa254
Loading section .ctors, size 0x8 lma 0xa358
Loading section .dtors, size 0x8 lma 0xa360
Loading section .jcr, size 0x4 lma 0xa368
Loading section .data, size 0x934 lma 0xa36c
Start address 0x8100, load size 11168
Transfer rate: 12 KB/sec, 259 bytes/write.
continue


Was bedeutet das 0x0010d2d0 in ?? ()?

Für Hilfe wär ich seh dankbar, da ich noch nicht so wirklich in der 
sache drin stecke.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.