ARM- något att ha?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
Schnegelwerfer
Inlägg: 1863
Blev medlem: 8 november 2004, 13:46:56

Inlägg av Schnegelwerfer »

Lite OT, men fungerar ovanstående JTAG-debugger/programmerare med Keils uVision?

Jag vill bara få igång en miljö för att labba med Cortex utan att krångla alltför mycket... jag kan även leva med kodbegränsningen på 32k.
rand_althor
Inlägg: 49
Blev medlem: 10 november 2008, 13:43:25
Ort: Göteborg
Kontakt:

Inlägg av rand_althor »

speakman skrev:Intressant om OpenOCD. Jag tror det var en av delarna han stupade på. Finns din config-fil att få tag i på nätet, eller kan du tänka dig skicka den? Vår debugger är arm-usb-ocd från Olimex.
Ska gräva fram den...
rand_althor
Inlägg: 49
Blev medlem: 10 november 2008, 13:43:25
Ort: Göteborg
Kontakt:

Inlägg av rand_althor »

Schnegelwerfer skrev:Lite OT, men fungerar ovanstående JTAG-debugger/programmerare med Keils uVision?

Jag vill bara få igång en miljö för att labba med Cortex utan att krångla alltför mycket... jag kan även leva med kodbegränsningen på 32k.
Så vitt jag vet stödjer uVision bara uLink-JTAG:arna...

Eclipse + GCC + GDB är snabbt och enkelt att sätta upp... Bara att följa instruktionerna på yagarto.de
Eclipse är riktigt nice...

Det som kan ställa till strul är OpenOCD. Som jag skrev ovan så ska jag gräva fram den cfg:en jag kör på nu som verkar funka bra.
Matte
Inlägg: 218
Blev medlem: 4 april 2007, 19:54:17
Ort: Stockholm

Inlägg av Matte »

Både keil och IAR finns väll att ladda ner gratis, keil kan vara en fördel då den har inbyggd simulering. sen skulle jag rekomendera STM32 som micro då den familjen är störst.

EDIT: alltså från deras hemsida och 32k limit
rand_althor
Inlägg: 49
Blev medlem: 10 november 2008, 13:43:25
Ort: Göteborg
Kontakt:

Inlägg av rand_althor »

så här ser min arm-usb-ocd.cfg ut:

Kod: Markera allt

# daemon configuration
telnet_port 4444
gdb_port 3333

# tell gdb our flash memory map
# and enable flash programming
gdb_memory_map enable
gdb_flash_program enable

#
# interface, if you want to use an other interface
# you must replace this section here
#
#################### interface start ####################

interface ft2232
ft2232_device_desc "Olimex OpenOCD JTAG A"
ft2232_layout "olimex-jtag"
#ft2232_vid_pid 0x15BA 0x0003

##################### interface end #####################

# jtag speed
# start slow, speed up after reset
jtag_khz 10 1500

#delays on reset lines
jtag_nsrst_delay 200
jtag_ntrst_delay 200

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

#LPCs need reset pulled while RTCK is low. 0 to activate JTAG, power-on reset is not enough
jtag_reset 1 1
jtag_reset 0 0

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

#target configuration
daemon_startup reset

#target <type> <startup mode>
#target arm7tdmi <reset mode> <chainpos> <endianness> <variant>
target arm7tdmi little run_and_init 0 arm7tdmi-s_r4
run_and_halt_time 0 30

target_script 0 reset ./lpc2148_reset_oocd.script

working_area 0 0x40000000 0x4000 nobackup

#flash bank lpc2000 <base> <size> 0 0 <target#> <variant>
flash bank lpc2000 0x0 0x7d000 0 0 0 lpc2000_v2 14765
lpc2148_reset_oocd.script ser ut så här:

Kod: Markera allt

#do not remap 0x0000-0x0020 to anything but the flash
mwh 0xE01FC040 0x0001 
i Eclipse har jag inställt detta som run-commands för GDB:

Kod: Markera allt

target remote localhost:3333
monitor reset
monitor sleep 500
monitor poll
monitor soft_reset_halt
monitor arm7_9 force_hw_bkpts enable
delete breakpoints
monitor mww 0xE01FC040 0x0001
monitor mdw 0xE01FC040

# needed for gdb 6.8 and higher
set mem inaccessible-by-default off

load
monitor sleep 500
monitor soft_reset_halt
monitor sleep 500
monitor poll
monitor sleep 500
delete breakpoints
monitor sleep 500
break main
monitor soft_reset_halt
monitor poll
continue
Dessa filer är anpassade efter efter en LPC med 512k flash som går på en 14,765MHz-kristall... Editera för att passa dina behov.
Skriv svar