OpenOCDフリスクデバッカー コンフィギュレーション色々更新 [ARM&Cortex-M3]
これまたTACさんから耳寄りな情報。
以前からエクリプス上でgdbを起動すると必ず一回はフラッシュの消去に失敗していましたが、それの解消です。
これはgdbコマンドの話ですが、その他JTAGのコンフィギュレーションも更新したので、それらをここに掲載して置きます。
まずはgdbコマンドを以下の様にしました。
openocd.cfgです。TAPIDは大規模タイプのIDです。
myJTAG.cfgです。
stm32.cfgです。
以前からエクリプス上で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
ARM Cortex‐M3システム開発ガイド―最新アーキテクチャの理解からソフトウェア開発までを詳解 (Design Wave Advance)
- 作者: Joseph Yiu
- 出版社/メーカー: CQ出版
- 発売日: 2009/05
- メディア: 単行本
2009-09-11 03:35
nice!(0)
コメント(0)
トラックバック(0)
コメント 0