フォト
無料ブログはココログ

« 中野四季の森公園 伐採 | トップページ | 鉄、千年のいのち »

2014年3月 3日 (月)

トラ技2014/3 (2) 「オマケは LPC11U35ボード」

トラ技2014/3のオマケはそのままでは使えないので、結局仕上げセットをマルツで買ってきた
Photo

トラ技2014/2のオマケCDにある firmwar.binを書き込むと、CMSIS-DAPとして使えるようになる。ねむいさんちにあるOpenOCDはCMSIS-DAPが使える

トラ技2014/2オマケボードで動かしたLPC810Lchika-main.elfをCMSIS-DAPで2014/2オマケボードに載っているLPC810のRAMにロードして動かしてみた。

毎回RAMにelfをロードして、ベクタテーブルをRAMの先頭にセットして、SP,PCレジスタをセットして、resumeするのは面倒なので↓のようなスクリプト(ram_exec.cfg)を使う。

# Cortex RAM execute 
#

proc load_elf { loadfile } {
        # vector table address
        set vbr 0xe000ed08
        # vector address (top of SRAM)
        set vectaddr 0x10000000
        # reset and halt
        reset halt
        # set vector table address
        mww $vbr $vectaddr
        # load ELF file onto SRAM(0x10000000-)
        load_image $loadfile
        return
}

proc run_sram { } {
        # vector table offset register address
        set vbr 0xe000ed08
        # vector address (top of SRAM)
        set vectaddr 0x10000000
        # get initial SP and reset handler
        mem2array vect 32 $vectaddr 2
        # display top of vector 4 elements
        mdw $vectaddr 4
        # set initial SP into SP
        reg sp $vect(0)
        # set reset handler int PC
        reg pc $vect(1)
        # execute now
        resume

        return
}

proc load_run { loadfile } {
        load_elf $loadfile
        run_sram
        return
}

ここ参考いただきました。)

>openocd.exe -s ./tcl -f interface/cmsis-dap.cfg 
-f target/lpc810_swd_flash.cfg  -f ram_exec.cfg
-c "init" -c "load_run image/LPC810Lchika-main.elf"

でRAM上で実行できる。
(-c "init" が必要でした。 2014/7/17)

 

(↓TABLEの右端が切れていたので Width="500"にした 2014/5/3)

C:\Program Files\OpenOCD\OpenOCD-0.8.0>openocd.exe -s ./tcl -f interfac
e/cmsis-dap.cfg -f target/lpc810_swd_flash.cfg -f ram_exec.cfg -c "load
_run image/LPC810Lchika-main.elf" Open On-Chip Debugger 0.8.0-dev-00333-gebb71eb-dirty (2014-01-30-10:12) Licensed under GNU GPL v2 For bug reports, read         http://openocd.sourceforge.net/doc/doxygen/bugs.html Info : only one transport option; autoselect 'cmsis-dap' Info : CMSIS-DAP: SWD  Supported Info : CMSIS-DAP: JTAG Supported Info : CMSIS-DAP: Interface Initialised (SWD) none separate adapter speed: 1000 kHz cortex_m reset_config sysresetreq Info : CMSIS-DAP: FW Version = 1.0 Info : SWCLK/TCK = 1 SWDIO/TMS = 1 TDI = 0 TDO = 1 nTRST = 0 nRESET = 1 Info : DAP_SWJ Sequence (reset: 50+ '1' followed by 0) Info : CMSIS-DAP: Interface ready Info : clock speed 1000 kHz Info : IDCODE 0x0bc11477 Info : lpc810.cpu: hardware has 4 breakpoints, 2 watchpoints target state: halted target halted due to debug-request, current mode: Thread xPSR: 0xf1000000 pc: 0x1fff0008 msp: 0x10000ffc load_run target state: halted target halted due to debug-request, current mode: Thread xPSR: 0xf1000000 pc: 0x1fff0008 msp: 0x10000ffc 348 bytes written at address 0x10000000 downloaded 348 bytes in 0.189010s (1.798 KiB/s) 0x10000000: 100003e0 10000101 100000fd 100000fd sp (/32): 0x100003E0 pc (/32): 0x10000101

動いているところ
_2014_3_lchika

このF/WはCMSIS-DAPしか使えない。シリアルを使おうとすると別のF/Wを書き込まなくてはならないのでめんどうだ。CMSIS-DAPとUSB-シリアルの複合デバイスにならないのかと思ったら。

なひたふさんがCMSIS-DAPとUSB-CDCの複合デバイスになるF/Wを作られておられるようだ。

« 中野四季の森公園 伐採 | トップページ | 鉄、千年のいのち »

CPUボード」カテゴリの記事

書籍・雑誌」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/577514/59221541

この記事へのトラックバック一覧です: トラ技2014/3 (2) 「オマケは LPC11U35ボード」:

« 中野四季の森公園 伐採 | トップページ | 鉄、千年のいのち »