So-net無料ブログ作成

OpenOCDフリスクデバッカー コンフィギュレーション色々更新 [ARM&Cortex-M3]

DSC00144.JPGこれまたTACさんから耳寄りな情報。

以前からエクリプス上でgdbを起動すると必ず一回はフラッシュの消去に失敗していましたが、それの解消です。
これはgdbコマンドの話ですが、その他JTAGのコンフィギュレーションも更新したので、それらをここに掲載して置きます。


まずはgdbコマンドを以下の様にしました。
target remote localhost:3333
monitor soft_reset_halt
monitor flash erase_sector 0 0 31
set $pc=0
load main.elf
thbreak main


openocd.cfgです。TAPIDは大規模タイプのIDです。
# This is an CQ-STARM eval board with a single STM32F103VB3 chip on it.

# My test board has a "Rev1" tap id.
# set BSTAPID 0x16410041
set BSTAPID 0x06414041

# Change the default telnet port...
telnet_port 4444
# GDB connects here
gdb_port 3333
# GDB can also flash my flash!
gdb_memory_map enable
gdb_flash_program enable

source [find interface/myJTAG.cfg]

source [find target/stm32.cfg]


myJTAG.cfgです。
#interface
interface ft2232
ft2232_vid_pid 0x0403 0x6010
ft2232_device_desc "myJTAG A"
#ft2232_layout "oocdlink"
ft2232_layout "jtagkey"
ft2232_latency 2


stm32.cfgです。
# 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
}

# jtag speed
jtag_khz 500

jtag_nsrst_delay 100
jtag_ntrst_delay 100

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

#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 ] } {
   set _BSTAPID $BSTAPID
} else {
  # See STM Document RM0008
  # Section 26.6.2
  # Medium Density RevA
  #set _BSTAPID 0x06410041
  # Rev B and Rev Z
  set _BSTAPID 0x16410041
  # High Density Devices, Rev A
  #set _BSTAPID 0x06414041
}   
jtag newtap $_CHIPNAME bs  -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID

set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME

#$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 16384 -work-area-backup 0

#$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 20480 -work-area-backup 0

$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 65536 -work-area-backup 0

#flash bank stm32x 0 0 0 0 0
flash bank stm32x 0x08000000 0x80000 0 0 0

# For more information about the configuration files, take a look at:
# openocd.texi





nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。