DEBUG · デバッグプローブ/オンチップデバッグ概要
GDB Server Plug-In(ARM)は、PEmicro の Multilink / Cyclone / OpenSDA デバッグハードウェアを、Eclipse系の ARM IDE から利用するための無償プラグインです。GNU デバッガ(GDB)を拡張し、ネットワーク上の任意のマイコンターゲットをリモートデバッグできます。
【機能】FLASH書き込み、実行制御、ブレークポイント、ウォッチポイント、ステップ実行、値チェックに対応。MCUXpresso 等の Eclipse系IDEに統合し、SWO データ/イベントキャプチャ、リアルタイム式表示、printf通知も利用できます。NXP DSC 向けは無償です。
主要仕様
| 種別 | GDB Server プラグイン(無償) |
|---|---|
| 対応HW | Multilink / Cyclone / OpenSDA |
| 対象IDE | Eclipse系 ARM IDE(MCUXpresso 他) |
| 機能 | Flash書込・実行制御・BP/WP・ステップ |
デバッグ機能
| 書き込み | FLASHプログラミング |
|---|---|
| 実行制御 | run/stop・ステップ実行 |
| ブレーク | ブレークポイント・ウォッチポイント |
| 検査 | レジスタ/メモリ/変数の値チェック |
高度機能
| SWO | データ/イベントキャプチャ |
|---|---|
| リアルタイム | 実行中の式・変数表示 |
| printf | イベント通知(printf) |
対応・使い方
| HW | Multilink / Cyclone / OpenSDA |
|---|---|
| IDE | Eclipse系 ARM IDE(GDB)統合 |
| ライセンス | 無償(NXP DSC向けも無償) |
主な用途
- GDB ベースの開発環境から、対象MCUへ接続する
- Eclipse 系 IDE と組み合わせてデバッグする
- 既存のオープンソース系ツールチェーンを活かす
導入メリット
- 標準的なGDBの操作で扱え、独自ツールの習得が要らない
- 多くのIDEから接続でき、環境の選択肢が広い
- 自動化スクリプトからも制御しやすい
対応環境
- 対応IDE:MCUXpresso / IAR / Keil / STM32CubeIDE / TI Code Composer Studio 12 / Eclipse(GDB)
- 対応MCU:ARM Cortex、NXP・ST・Infineon・Renesas・TI(ARMデバイス)8/16/32bit
- 接続:USB / Ethernet / Serial
TI Code Composer Studio 12 での利用
Multilink/Cyclone は、本 GDB Eclipse プラグイン経由で Texas Instruments Code Composer Studio 12(CCSv12)からも利用でき、複数の TI 製 ARM デバイスをデバッグできます。検証済みバージョンは CCS 12.8.1.00005(Windows 10 Pro x64)。CCS 12 より後の VS Code ベース版は現在未対応です。対応デバイスの一覧は PEmicro サイトのパートナーページ(Texas Instruments)をご確認ください。
| ① CCS のインストール | CCSv12(12.8.1)を TI サイトから入手してインストールします。 |
|---|---|
| ② CDT 本体の追加 | CCS の Help → Install New Software… → Manage… から CDT アップデートサイトを編集し、Name「CDT 10.7.1 update site」/Location「https://archive.eclipse.org/tools/cdt/releases/10.7/cdt-10.7.1」を設定。表示された CDT Main Feature → C/C++ Development Tools をインストールし、CCS を再起動します。 |
| ③ GDB Hardware Debugging の追加 | 同じ「CDT 10.7.1 update site」から CDT Optional Features → C/C++ GDB Hardware Debugging をインストールし、CCS を再起動します。 |
| ④ PEmicro プラグインの追加 | Help → Install New Software… → Add… で Name「PEMicro」/Location「https://www.pemicro.com/eclipse/updates」を追加し、GNU ARM PEMicro Interface Debugging Support と PEMicro ARM Device Expansion Plugin の2件をインストールして CCS を再起動します。 |
| ⑤ デバッグ構成の作成 | Debug アイコン → Debug Configurations で GDB PEMicro Interface Debugging 構成を新規作成し、PEmicro タブでデバイス・インターフェイス等を設定して Apply → Debug で開始します。 |
コマンドリファレンス(GDBサーバー起動パラメータ)
PEmicro GDBサーバーはコマンドラインパラメータで動作を細かく制御できます。EclipseのServer Parameters欄、またはコンソール版(pegdbserver_console)の引数として指定します(2026年5月時点の公式コマンドリスト準拠)。
接続・ハードウェア指定
| -interface=<interface> | 使用するPEmicroハード種別を指定:USBMULTILINK/CYCLONE/OPENSDA |
|---|---|
| -port=<n> | デバッグハードをUSB番号(例 USB1・既定)・シリアル番号・名前・IPアドレスで指定(Ethernet接続はIP指定) |
| -device=<device> | デバッグ対象のターゲットデバイス名を指定 |
| -devicelist | 有効なデバイス名一覧を表示して終了 |
| -corenum | 対象コアを設定(既定:0) |
| -listcores=<n> | 指定デバイスのコア一覧を表示して終了 |
| -showhardware / -getportlist | 自動検出されたPEmicroハード/ポートの一覧を表示 |
| -speed=<n> | デバッグシフト周波数をKHzで指定(既定 5000KHz) |
| -usejtag | 通信方式をJTAGに設定(既定:OFF) |
| -attachonly | 接続時にデバイスをリセットしない(既定:OFF) |
| -firmwareupdate=auto | ファームウェア更新モード:auto/force |
フラッシュ書き込み
| -flashobjectfile=<path> | FLASH書き込み用オブジェクトファイルのパスを指定 |
|---|---|
| -programmingtype=<n> | 書き込みステップ指定:0=消去/書込/照合、1=書込/照合、2=照合、3=消去 |
| -alternativealgorithmpath=<path> | 代替書き込みアルゴリズム(.arp)のパスを指定 |
| -currentalgorithmindex=<index> | 使用するフラッシュアルゴリズムをインデックスで選択(既定:0) |
| -forcemasserase | 接続時にマスイレースを強制(応答しないデバイスの復旧に有効な場合あり) |
| -quitafterprogramming | FLASH書き込み完了後にGDBサーバーを自動終了 |
| -runafterprogramming | FLASH書き込み完了後にresumeを発行 |
| -showflashstatus | 書き込み中にステータスダイアログを表示 |
| -startprogrammer=<n> | ポート番号nで対話型PROGを起動 |
サーバー・ポート
| -startserver | GDBからの接続待ち受けを開始 |
|---|---|
| -serverport=<n> | サーバーTCP/IPポート番号(既定:7224) |
| -serverip=<addr> | サーバーTCP/IPアドレスを指定 |
| -useexternalip | サーバーIPをlocalhostではなくPCの実IPに |
| -singlesession | GDBクライアント切断後にサーバーを自動終了 |
| -gdbmiport=<n> | GDB/MIインターフェースをポートnで有効化 |
| -streamingport=<n> | ストリーミングポートをポートnで有効化 |
| -specifyip=<addr> | Cyclone/Tracelinkに使う特定のEthernet IPを指定 |
| -specifynetworkcard=<addr> | ネットワーク探索に使うホストNICのIPを指定 |
| -javalinkport=<port> | JavaLink/Eclipse通信の旧CORBA識別子ini値を置き換え |
電源制御(Cyclone/Multilink FX)
| -use_cyclone_relays=<n> | n=1でMultilink Universal FX/Cycloneからターゲットへ給電(既定:0) |
|---|---|
| -cyclonecurrentvoltage=<n> | Cyclone/Tracelinkのターゲット電源電圧/電流DAC設定(0〜255) |
| -cyclonepowerupdelay=<n> / -cyclonepowerdowndelay=<n> | Cyclone/Tracelinkの電源投入/切断遅延(ms) |
| -multilinkpowerupdelay=<n> / -multilinkpowerdowndelay=<n> | Multilinkの電源投入/切断遅延(ms) |
| -cyclonepoweroffonexit=<n> | n=1でデバッグセッション終了後も給電を維持 |
OS認識・JTAG・トレース
| -kernel=OS | 指定OSのカーネル認識デバッグを有効化(例:freertos。noneで無効化) |
|---|---|
| -osstackstructure=<n> | コアごとのスタック構造を指定(例:1:freertos.v6m.v7m.no.vfp,2:…)。OS認識用 |
| -jtagtapnum=<num> | デイジーチェーン構成のJTAG TAP番号を設定 |
| -jtagnumbitspreir=<num> | デイジーチェーン構成のJTAG pre-IRビット数を設定 |
| -swobaudrateswitchmultilinkvalue=<baud> / -swobaudrateswitchtargetvalue=<baud> | 保存済みSWOボーレート切替値(Multilink側/ターゲット側)を復元 |
| -swostats=<path> | SWO統計出力ファイルのベースディレクトリを設定 |
スクリプト・診断・その他
| -configfile=config.ini | 設定を読み込むiniファイルを指定 |
|---|---|
| -extrauserscriptfile=<path> | PEmicroマクロスクリプトを追加実行(複数指定可) |
| -resetdelay=<n> | リセット後にnミリ秒待機 |
| -uncensorpassword=<n> | パスワードn(16進)でプロセッサのアンセンサーを試行 |
| -verbose | デバッグ・通信セッションのメッセージを表示 |
| -outputdebugfile / -outputdebugfiletimed | プラグインディレクトリにデバッグ.outファイル(タイムスタンプ付き可)を生成 |
| -displayerrormessage=<n> | GDBサーバー終了エラーメッセージnを出力 |
| /eoe | エラー時に終了(Exit on error) |
| /crp | チャレンジレスポンス方式を有効化 |
導入方法
- Eclipse系IDE(MCUXpresso・S32 Design Studio 等):GDBサーバーを含むPEmicroプラグインをIDEにインストールします(公式インストールガイド)。プロジェクトでDebug Configurationを作成し、「PEmicro Debugger」タブ → GDB Server Settings の「Server Parameters」欄に、上記コマンドを「-」付き・スペース区切りで入力します。
- 非Eclipse系IDE(Visual Studio Code 等):プラグインを直接インストールできないため、IDEからPEmicro GDBサーバーを呼び出す構成にします。プラグインは製品ページまたは直接ダウンロードで入手し、7-Zip等で展開すると実行ファイルが得られます:*\com.pemicro.debug.gdbjtag.pne.updatesite-6.1.8-SNAPSHOT\plugins\com.pemicro.debug.gdbjtag.pne_6.1.8.202603121731\win32\pegdbserver_console.exe(バージョン番号はリリースにより異なります)
よくある質問
GDB Server Plug-In (ARM) の見積もり・技術相談はできますか?
関連製品
お問い合わせ
対象MCU・数量・安全要件などをお聞かせください。最適な構成と概算をご提案します。
書き込み・デバッグの専業メーカー(40年以上)
PEmicro の全製品を見る →
