arm/ST8S版Versaloonを使ってmbedのデバッグをする
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[FrontPage]]
#contents
2011/04/22からのアクセス回数 &counter;
** STM8S版Versaloonをちょっと改造 [#c6b36aa9]
mbedにはSWDでデバッグするためのピンが解放されていないため...
Xpresso1768をSTM8S版Versaloonを使ってデバッグしてみます。
Xpressoのデバッガを切り離して電源がとれないため、ST8S版Ve...
CN7の1番ピンから3.3Vを取ります。
&ref(STM8SVersaloon_mod.png);
** mbedのプログラムのエクスポート [#p7b66d91]
mbedの新規プロジェクトを作成するとLED点滅のプログラムがで...
します。
この時、LPC1678、GCC版とします。
** Eclipseのプロジェクトを作成 [#kc96bc09]
EclipseでC/C++のMakefileベースのプロジェクトを作成します。
そこにダウンロードしたファイルをコピーします。
XPresso1678のLEDは、P0_22なのでmain.cppを修正します。
#pre{{
#include "mbed.h"
//DigitalOut myled(LED1);
DigitalOut myled(P0_22);
int main() {
while(1) {
myled = 1;
wait(0.2);
myled = 0;
wait(0.2);
}
}
}}
makeコマンドでコンパイルすれば完了です。
** openocdでデバッグ [#b243bbd4]
openocd.cfgを以下のように作成します。
#pre{{
# OpenOCD lpc2214 cfg with Flash proc
telnet_port 4444
gdb_port 3333
source [find interface/vsllink_swd.cfg]
source [find target/lpc1768_flash.cfg]
# 高速書き込みのために追加
#arm7_9 dcc_downloads enable
#arm7_9 fast_memory_access enable
proc flash_program {ELF_FILENAME} {
halt
flash probe 0
flash write_image erase $ELF_FILENAME
echo "flash program complete. reset and run"
resume
reset run
exit
}
init
}}
LPC1768用のコンフィグファイルはOpenOCDに付属のものでは動...
ねむいさんが公開されている&ref(lpc1768_flash.cfg);を使用...
** 無事プログラムの書き込みとデバッグ [#y03374ed]
それでは、openocdを起動して、
#pre{{
$ /usr/local/bin/openocd
Open On-Chip Debugger 0.5.0-dev-00783-g0123985-dirty (201...
Licensed under GNU GPL v2
For bug reports, read
http://openocd.berlios.de/doc/doxygen/bugs.html
Warn : must select a transport.
Info : OpenOCD runs in SWD mode
adapter_nsrst_delay: 200
jtag_ntrst_delay: 200
10 kHz
Info : Versaloon(0x32)by Simon(compiled on Aug 14 2011)
Info : USB_TO_XXX abilities: 0x00000009:0x00000040:0xC000...
Info : clock speed 10 kHz
Info : lpc1768.cpu: hardware has 6 breakpoints, 4 watchpo...
10 kHz
Warn : Only resetting the Cortex-M3 core, use a reset-ini...
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x000000cc msp: 0x10008000
12500 kHz
500 kHz
Info : accepting 'gdb' connection from 3333
Warn : acknowledgment received, but no packet pending
10 kHz
Warn : Only resetting the Cortex-M3 core, use a reset-ini...
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x81000000 pc: 0x0000103e msp: 0x10007fd8
debug_level: 2
Info : Padding image section 0 with 4 bytes
Warn : Verification will fail since checksum in image (0x...
Warn : To remove this warning modify build tools on devel...
requesting target halt and executing a soft reset
target state: halted
target halted due to breakpoint, current mode: Thread
xPSR: 0x01000000 pc: 0x000000cc msp: 0x10008000
debug_level: 0
}}
途中でchecksumが一致しない旨のワーニングがでますが、その...
ただ、LPC1343のようにチェックサムの値が異なるときに、処理...
別途対応が必要です。
次に、Eclipseでデバッグ設定をします。トラ技2月号に詳細に...
&ref(debug_LPC1768.png);
デバッグ画面はこんな感じ!
&ref(debug_screen.png);
** コメント [#nc0aa317]
#vote(おもしろかった[2],そうでもない[0],わかりずらい[0])
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha
終了行:
[[FrontPage]]
#contents
2011/04/22からのアクセス回数 &counter;
** STM8S版Versaloonをちょっと改造 [#c6b36aa9]
mbedにはSWDでデバッグするためのピンが解放されていないため...
Xpresso1768をSTM8S版Versaloonを使ってデバッグしてみます。
Xpressoのデバッガを切り離して電源がとれないため、ST8S版Ve...
CN7の1番ピンから3.3Vを取ります。
&ref(STM8SVersaloon_mod.png);
** mbedのプログラムのエクスポート [#p7b66d91]
mbedの新規プロジェクトを作成するとLED点滅のプログラムがで...
します。
この時、LPC1678、GCC版とします。
** Eclipseのプロジェクトを作成 [#kc96bc09]
EclipseでC/C++のMakefileベースのプロジェクトを作成します。
そこにダウンロードしたファイルをコピーします。
XPresso1678のLEDは、P0_22なのでmain.cppを修正します。
#pre{{
#include "mbed.h"
//DigitalOut myled(LED1);
DigitalOut myled(P0_22);
int main() {
while(1) {
myled = 1;
wait(0.2);
myled = 0;
wait(0.2);
}
}
}}
makeコマンドでコンパイルすれば完了です。
** openocdでデバッグ [#b243bbd4]
openocd.cfgを以下のように作成します。
#pre{{
# OpenOCD lpc2214 cfg with Flash proc
telnet_port 4444
gdb_port 3333
source [find interface/vsllink_swd.cfg]
source [find target/lpc1768_flash.cfg]
# 高速書き込みのために追加
#arm7_9 dcc_downloads enable
#arm7_9 fast_memory_access enable
proc flash_program {ELF_FILENAME} {
halt
flash probe 0
flash write_image erase $ELF_FILENAME
echo "flash program complete. reset and run"
resume
reset run
exit
}
init
}}
LPC1768用のコンフィグファイルはOpenOCDに付属のものでは動...
ねむいさんが公開されている&ref(lpc1768_flash.cfg);を使用...
** 無事プログラムの書き込みとデバッグ [#y03374ed]
それでは、openocdを起動して、
#pre{{
$ /usr/local/bin/openocd
Open On-Chip Debugger 0.5.0-dev-00783-g0123985-dirty (201...
Licensed under GNU GPL v2
For bug reports, read
http://openocd.berlios.de/doc/doxygen/bugs.html
Warn : must select a transport.
Info : OpenOCD runs in SWD mode
adapter_nsrst_delay: 200
jtag_ntrst_delay: 200
10 kHz
Info : Versaloon(0x32)by Simon(compiled on Aug 14 2011)
Info : USB_TO_XXX abilities: 0x00000009:0x00000040:0xC000...
Info : clock speed 10 kHz
Info : lpc1768.cpu: hardware has 6 breakpoints, 4 watchpo...
10 kHz
Warn : Only resetting the Cortex-M3 core, use a reset-ini...
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x000000cc msp: 0x10008000
12500 kHz
500 kHz
Info : accepting 'gdb' connection from 3333
Warn : acknowledgment received, but no packet pending
10 kHz
Warn : Only resetting the Cortex-M3 core, use a reset-ini...
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x81000000 pc: 0x0000103e msp: 0x10007fd8
debug_level: 2
Info : Padding image section 0 with 4 bytes
Warn : Verification will fail since checksum in image (0x...
Warn : To remove this warning modify build tools on devel...
requesting target halt and executing a soft reset
target state: halted
target halted due to breakpoint, current mode: Thread
xPSR: 0x01000000 pc: 0x000000cc msp: 0x10008000
debug_level: 0
}}
途中でchecksumが一致しない旨のワーニングがでますが、その...
ただ、LPC1343のようにチェックサムの値が異なるときに、処理...
別途対応が必要です。
次に、Eclipseでデバッグ設定をします。トラ技2月号に詳細に...
&ref(debug_LPC1768.png);
デバッグ画面はこんな感じ!
&ref(debug_screen.png);
** コメント [#nc0aa317]
#vote(おもしろかった[2],そうでもない[0],わかりずらい[0])
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha
ページ名:
SmartDoc