MPLAB® X IDE ユーザガイド 注意 : この日本語版文書は参考資料としてご利用ください。最新情報は必ずオリジ ナルの英語版をご参照願います。 2016 Microchip Technology Inc. DS50002027D_JP Microchip 社製デバイスのコード保護機能に関して以下の点にご注意ください。 • Microchip 社製品は、該当する Microchip 社データシートに記載の仕様を満たしています。 • Microchip 社では、通常の条件ならびに仕様に従って使用した場合、Microchip 社製品のセキュリティ レベルは、現在市場に 流通している同種製品の中でも最も高度であると考えています。 • しかし、コード保護機能を解除するための不正かつ違法な方法が存在する事もまた事実です。弊社の理解では、こうした手法 は Microchip 社データシートにある動作仕様書以外の方法で Microchip 社製品を使用する事になります。このような行為は知 的所有権の侵害に該当する可能性が非常に高いと言えます。 • Microchip 社は、コードの保全性に懸念を抱いているお客様と連携し、対応策に取り組んでいきます。 • Microchip 社を含む全ての半導体メーカーで、自社のコードのセキュリティを完全に保証できる企業はありません。コード保 護機能とは、Microchip 社が製品を「解読不能」として保証するものではありません。 コード保護機能は常に進歩しています。Microchip 社では、常に製品のコード保護機能の改善に取り組んでいます。Microchip 社の コード保護機能の侵害は、デジタル ミレニアム著作権法に違反します。そのような行為によってソフトウェアまたはその他の著作 物に不正なアクセスを受けた場合、デジタル ミレニアム著作権法の定めるところにより損害賠償訴訟を起こす権利があります。 本書に記載されているデバイス アプリケーション等に関する 情報は、ユーザの便宜のためにのみ提供されているものであ り、更新によって無効とされる事があります。お客様のアプ リケーションが仕様を満たす事を保証する責任は、お客様に あります。Microchip 社は、明示的、暗黙的、書面、口頭、法 定のいずれであるかを問わず、本書に記載されている情報に 関して、状態、品質、性能、商品性、特定目的への適合性を は じ め と す る、い か な る 類 の 表 明 も 保 証 も 行 い ま せ ん。 Microchip 社は、本書の情報およびその使用に起因する一切の 責任を否認します。生命維持装置あるいは生命安全用途に Microchip 社の製品を使用する事は全て購入者のリスクとし、 また購入者はこれによって発生したあらゆる損害、クレーム、 訴訟、費用に関して、Microchip 社は擁護され、免責され、損 害を受けない事に同意するものとします。暗黙的あるいは明 示的を問わず、Microchip 社が知的財産権を保有しているライ センスは一切譲渡されません。 商標 Microchip 社の名称とロゴ、Microchip ロゴ、dsPIC、FlashFlex、 flexPWR、JukeBlox、KEELOQ、KEELOQlogo、Kleer、 LANCheck、MediaLB、MOST、MOST logo、MPLAB、OptoLyzer、 PIC、PICSTART、PIC32 logo、RightTouch、SpyNIC、SST、SST Logo、SuperFlash および UNI/O は米国およびその他の国に おける Microchip Technology Incorporated の登録商標です。 Embedded Control Solutions Company、mTouch は米国に おける Microchip Technology Incorporated の登録商標です。 Analog-for-the-Digital Age、BodyCom、chipKIT、chipKIT logo、 CodeGuard、dsPICDEM、dsPICDEM.net、ECAN、In-Circuit Serial Programming、ICSP、Inter-Chip Connectivity、KleerNet、KleerNet logo、MiWi、motorBench、MPASM、MPF、MPLAB Certified logo、 MPLIB、MPLINK、MultiTRAK、NetDetach、Omniscient Code Generation、PICDEM、PICDEM.net、PICkit、PICtail、RightTouch logo、REAL ICE、SQI、Serial Quad I/O、Total Endurance、 TSHARC、USBCheck、VariSense、ViewSpan、WiperLock、 Wireless DNA、および ZENA は米国およびその他の Microchip Technology Incorporated の商標です。 SQTP は米国における Microchip Technology Incorporated の サービスマークです。 Silicon Storage Technology は 他 の国 に おけ る Microchip Technology Inc. の登録商標です。 GestIC は Microchip Technology Inc. の子会社である Microchip Technology Germany II GmbH & Co. & KG 社の他の国における 登録商標です。 その他本書に記載されている商標は各社に帰属します。 © 2016, Microchip Technology Incorporated, All Rights Reserved. ISBN: 978-1-5224-0619-8 Microchip 社では、Chandler および Tempe ( アリゾナ州 )、Gresham ( オレゴン州 ) の本部、設計部およびウェハー製造工場そしてカリ フォルニア州とインドのデザインセンターが ISO/TS-16949: 2009 認証を取得しています。Microchip 社の品質システム プロセス および手順は、PIC® MCU および dsPIC® DSC、KEELOQ® コード ホッピング デバイス、シリアル EEPROM、マイクロペリフェラル、 不揮発性メモリ、アナログ製品に採用されています。さらに、開発 システムの設計と製造に関する Microchip 社の品質システムは ISO 9001:2000 認証を取得しています。 DS50002027D_JP - p. 2 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 目次 序章 ................................................................................................................................. 9 第 1 章 MPLAB X IDE とは 1.1 はじめに ....................................................................................................... 13 1.2 組み込みシステムの概要 .............................................................................. 14 1.3 開発サイクル ................................................................................................ 21 1.4 プロジェクト マネージャ ............................................................................. 22 1.5 言語ツール ................................................................................................... 23 1.6 デバッグ ....................................................................................................... 24 1.7 デバイスのプログラミング .......................................................................... 25 1.8 MPLAB X IDE の構成要素 ............................................................................ 26 1.9 MPLAB X IDE オンラインヘルプ ................................................................. 27 1.10 その他の MPLAB X IDE 関連文書 .............................................................. 28 1.11 ウェブサイト .............................................................................................. 30 1.12 MPLAB X ストア ........................................................................................ 30 1.13 MPLAB X IDE の更新 ................................................................................. 30 第 2 章 使用前の準備 2.1 はじめに ....................................................................................................... 31 2.2 JRE と MPLAB X IDE のインストール ......................................................... 31 2.3 USB ドライバ ( ハードウェア ツール用 ) のインストール .......................... 32 2.4 ターゲットとハードウェア ツールの接続 .................................................... 36 2.5 言語ツールのインストール .......................................................................... 36 2.6 MPLAB IDE の起動とデスクトップの表示 .................................................. 37 2.7 [Start Page] からのアクセス情報 ................................................................. 38 2.8 [MPLAB X Store] での購入 ........................................................................... 40 2.9 IDE で複数のインスタンスを使う方法 ........................................................ 41 2.10 IDE で複数のバージョンを使う方法 .......................................................... 43 第 3 章 チュートリアル 3.1 はじめに ....................................................................................................... 45 3.2 ハードウェアとソフトウェアのセットアップ ............................................. 46 3.3 プロジェクトの作成と設定 .......................................................................... 47 3.4 コードの実行とデバッグ .............................................................................. 64 第 4 章 基本作業 4.1 MPLAB X IDE プロジェクトの作業手順 ...................................................... 71 4.2 新規プロジェクトの作成 .............................................................................. 72 4.3 プロジェクト作成後のデスクトップ ペイン ................................................ 82 2016 Microchip Technology Inc. DS50002027D_JP - p.3 MPLAB® X IDE ユーザガイド 4.4 プロジェクト プロパティの表示と変更 ....................................................... 83 4.5 デバッガ / プログラマツール オプションをセットアップまたは 変更する方法 .......................................................................................... 84 4.6 言語ツールオプションを設定または変更する方法 ...................................... 85 4.7 言語ツールのパスの指定 .............................................................................. 86 4.8 その他のツールオプションの設定 ............................................................... 88 4.9 ファイルの新規作成 ..................................................................................... 89 4.10 既存ファイルのプロジェクトへの追加 ...................................................... 91 4.11 エディタの使い方 ...................................................................................... 92 4.12 ライブラリやオブジェクト ファイルの追加と設定 ................................... 93 4.13 ファイルおよびフォルダ プロパティの設定 .............................................. 96 4.14 ビルドプロパティの設定 ............................................................................ 98 4.15 プロジェクトのビルド ............................................................................. 102 4.16 コードの実行 ............................................................................................ 103 4.17 コードのデバッグ実行 ............................................................................. 104 4.18 ブレークポイントによるプログラム実行の制御 ...................................... 106 4.19 コードのステップ実行 ............................................................................. 109 4.20 シンボル値の変化の観察 .......................................................................... 110 4.21 ローカル変数値の変化の観察 .................................................................. 112 4.22 デバイスメモリ ( コンフィグレーション ビットを含む ) の表示 / 変更 ... 113 4.23 デバイスのプログラミング ...................................................................... 116 第 5 章 追加作業 5.1 追加作業の概要 .......................................................................................... 119 5.2 レガシー MPLAB プロジェクトのインポート ............................................ 120 5.3 プリビルド プロジェクト ........................................................................... 123 5.4 読み込み可能なプロジェクト、ファイル、シンボル ................................ 124 5.5 読み込み可能なプロジェクトとファイル : ブートローダ .......................... 129 5.6 ライブラリ プロジェクト ........................................................................... 130 5.7 その他の組み込みプロジェクト ................................................................. 131 5.8 サンプル プロジェクト .............................................................................. 131 5.9 他のタイプのファイルを使った作業 .......................................................... 131 5.10 コード テンプレートの変更または作成 ................................................... 132 5.11 ハードウェア ツールまたは言語ツールの切り換え ................................. 134 5.12 プロジェクト フォルダとエンコードの変更 ............................................ 135 5.13 ビルド時間の短縮 .................................................................................... 136 5.14 ストップウォッチの使用 .......................................................................... 136 5.15 [Disassembly] ウィンドウの表示 ............................................................. 137 5.16 コールスタックの表示 ............................................................................. 137 5.17 コールグラフの表示 ................................................................................. 138 5.18 ダッシュボードの表示 ............................................................................. 139 5.19 コードの改良 ............................................................................................ 142 5.20 ソースコードの管理 ................................................................................. 142 5.21 コード開発とエラー追跡の連携 ............................................................... 145 5.22 プラグインツールの追加 .......................................................................... 146 DS50002027D_JP - p.4 2016 Microchip Technology Inc. 目次 第 6 章 高度な作業とコンセプト 6.1 はじめに ..................................................................................................... 151 6.2 MPLAB X IDE の高速化 .............................................................................. 151 6.3 複数プロジェクトを使った作業 ................................................................. 153 6.4 複数コンフィグレーションを使った作業 ................................................... 155 6.5 ユーザ Makefile プロジェクトの作成 ......................................................... 158 6.6 MPLAB X IDE プロジェクトのパッケージ化 ............................................. 166 6.7 サードパーティ製ハードウェア ツール ..................................................... 167 6.8 ログデータ ................................................................................................. 167 6.9 ツールバーのカスタマイズ ........................................................................ 168 6.10 チェックサム ............................................................................................ 173 6.11 コンフィグレーション ............................................................................. 174 第 7 章 エディタ 7.1 はじめに ..................................................................................................... 175 7.2 ソースエディタの一般操作クイック リファレンス ................................... 175 7.3 エディタの使い方 ....................................................................................... 176 7.4 エディタのオプション ............................................................................... 178 7.5 エディタの赤の感嘆符 ............................................................................... 180 7.6 コード折り畳み .......................................................................................... 181 7.7 C コードのリファクタリング ..................................................................... 185 第 8 章 プロジェクト ファイルおよびフォルダ 8.1 はじめに ..................................................................................................... 187 8.2 [Projects] ウィンドウの表示 ....................................................................... 187 8.3 [Files] ウィンドウの表示 ............................................................................ 188 8.4 [Classes] ウィンドウの表示 ....................................................................... 190 8.5 [Favorites] ウィンドウの表示 ..................................................................... 190 8.6 ファイルまたはフォルダ名の制約 ............................................................. 191 8.7 ユーザ コンフィグレーション データの表示 ............................................. 191 8.8 MPLAB IDE v8 プロジェクトのインポート – 相対パス ............................. 191 8.9 プロジェクトの移動、コピー、リネーム ................................................... 191 8.10 プロジェクトの削除 ................................................................................. 192 第 9 章 トラブルシュート 9.1 はじめに ..................................................................................................... 193 9.2 USB ドライバのインストールに関する問題 .............................................. 193 9.3 異なるプラットフォーム ( オペレーティング システム ) で使う場合の 問題 ...................................................................................................... 193 9.4 Windows OS で使う場合の問題 ................................................................. 193 9.5 NetBeans プラットフォームの問題 ........................................................... 194 9.6 MPLAB X IDE の問題 ................................................................................. 195 9.7 エラー ......................................................................................................... 198 9.8 フォーラム ................................................................................................. 202 第 10 章 MPLAB X IDE と MPLAB IDE v8 の相違点 10.1 はじめに ................................................................................................... 203 10.2 主な相違点 ............................................................................................... 203 2016 Microchip Technology Inc. DS50002027D_JP - p.5 MPLAB® X IDE ユーザガイド 10.3 メニューの相違点 .................................................................................... 206 10.4 ツールのサポートに関する相違点 ........................................................... 213 10.5 その他の注意事項 .................................................................................... 214 第 11 章 デスクトップの詳細 11.1 はじめに ................................................................................................... 215 11.2 メニュー ................................................................................................... 216 11.3 Toolbars ................................................................................................... 228 11.4 ステータスバー ........................................................................................ 231 11.5 メニュー項目とボタンの灰色表示または非表示 ...................................... 231 第 12 章 MPLAB X IDE のウィンドウとダイアログ 12.1 はじめに ................................................................................................... 233 12.2 MPLAB X IDE のウィンドウの管理 ......................................................... 233 12.3 MPLAB X IDE のウィンドウと関連するメニューとダイアログ .............. 234 12.4 [Call Stack] ウィンドウ ............................................................................ 235 12.5 [Breakpoints] ウィンドウ ......................................................................... 236 12.6 [Customize Toolbars] ウィンドウ ............................................................ 240 12.7 [Dashboard] ウィンドウ ........................................................................... 240 12.8 [Hardware Stack] ウィンドウ ................................................................... 241 12.9 [Memory] ウィンドウ ............................................................................... 242 12.10 [Message Center] ウィンドウ ................................................................ 252 12.11 [Output] ウィンドウ ................................................................................ 253 12.12 [Project Properties] ウィンドウ .............................................................. 254 12.13 [Projects] ウィンドウ ............................................................................. 254 12.14 [Tools] > [Options] > [Embedded] ウィンドウ ........................................ 259 12.15 [Trace] ウィンドウ ................................................................................. 265 12.16 [Watches] ウィンドウ ............................................................................ 266 12.17 ウィザード ウィンドウ .......................................................................... 270 第 13 章 NetBeans のウィンドウとダイアログ 13.1 はじめに ................................................................................................... 271 13.2 NetBeans ウィンドウとウィンドウ メニュー .......................................... 271 13.3 NetBeans ダイアログ ............................................................................... 271 補遺 A コンフィグレーション設定のまとめ A.1 はじめに .................................................................................................... 273 A.2 XC ツールチェーン .................................................................................... 273 A.3 MPASM ツールチェーン ............................................................................ 274 A.4 C18 ツールチェーン .................................................................................. 275 A.5 HI-TECH® PICC™ ツールチェーン ........................................................... 276 A.6 HI-TECH® PICC-18™ ツールチェーン ...................................................... 276 A.7 ASM30 ツールチェーン ............................................................................. 277 A.8 C30 ツールチェーン .................................................................................. 277 A.9 C32 ツールチェーン .................................................................................. 279 DS50002027D_JP - p.6 2016 Microchip Technology Inc. 目次 補遺 B IDE 外部での作業手順 B.1 はじめに ..................................................................................................... 281 B.2 MPLAB X IDE 外部でのデバッグのためのコンパイル .............................. 282 B.3 MPLAB X IDE の外部でのプロジェクトのビルド ..................................... 283 B.4 MPLAB X IDE 外部での Makefile の作成 ................................................... 284 B.5 リビジョン管理システムの使い方 ............................................................. 293 補遺 C 改訂履歴 .......................................................................................................... 295 サポート ...................................................................................................................... 299 用語集 ......................................................................................................................... 303 索引 ............................................................................................................................. 323 各国の営業所とサービス.............................................................................................. 330 2016 Microchip Technology Inc. DS50002027D_JP - p.7 MPLAB® X IDE ユーザガイド DS50002027D_JP - p.8 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 序章 お客様へのご注意 どのような文書でも内容は時間が経つにつれ古くなります。本書も例外ではありません。お客様の ニーズを満たすため、Microchip 社の製品は常に改良を重ねており、実際のダイアログやツールが 本書の内容とは異なる場合があります。 最新文書は Microchip 社のウェブサイト (www.microchip.com) をご覧ください。 文書は「DS」番号によって識別します。この識別番号は各ページのフッタのページ番号の前に表記 しています。DS 番号「DSXXXXXXXXA」の「XXXXXXXX」は文書番号、 「A」は文書のリビジョン レベルを表します。 開発ツールの最新情報は MPLAB® X IDE のオンラインヘルプでご覧になれます。[Help] メニューから [Topics] を選択すると、オンラインヘルプ ファイルのリストが表示されます。 はじめに 序章には、MPLAB® X IDE を使い始める前に知っておくと便利な一般情報を記載して います。主な内容は以下の通りです。 • 本書の構成 • 表記規則 • 推奨参考資料 本書の構成 本書では MPLAB X IDE の使い方を説明します。以下に本書の構成を示します。 • 第 1 章「MPLAB X IDE とは」– MPLAB X IDE の概要とヘルプの使い方 • 第 2 章「使用前の準備」– ハードウェア ツール用 USB ドライバと、コードのコン パイル / アセンブルに使う言語ツールパッケージのインストール方法 • 第3章 「チュートリアル」– MPLAB X IDEを使うための各種機能の手順を追った説明 • 第 4 章「基本作業」– MPLAB X IDE の基本機能 ( 前章「チュートリアル」で使った 機能の詳細な説明 ) • 第 5 章「追加作業」– MPLAB X IDE の追加機能 ( 例 : MPLAB IDE v8 プロジェクト のインポート、ストップウォッチ ) • 第 6 章「高度な作業とコンセプト」– MPLAB X IDE の高度な機能 ( 例 : 複数プロジェ クトの使用、プロジェクト コンフィグレーション ) • 第 7 章「エディタ」– エディタ機能の概要 ( エディタの詳細は NetBeans のヘルプを 参照してください ) 2016 Microchip Technology Inc. DS50002027D_JP - p.9 MPLAB® X IDE ユーザガイド • 第 8 章「プロジェクト ファイルおよびフォルダ」– ファイルとフォルダの表示の他 に、ファイル操作に関する情報の表示とファイル操作方法の表示に使う MPLAB X IDE のウィンドウ • 第 9 章「トラブルシュート」– 問題への対処方法 • 第 10 章「MPLAB X IDE と MPLAB IDE v8 の相違点」– MPLAB IDE v8 との主な相 違点 ( 機能、メニュー、ツールサポート等 ) • 第 11 章「デスクトップの詳細」– MPLAB X IDE デスクトップ アイテム ( メニュー、 ツールバー、ステータスバー等 ) • 第 12 章「MPLAB X IDE のウィンドウとダイアログ」- MPLAB X IDE 専用ウィンドウ およびダイアログ • 第 13 章「NetBeans のウィンドウとダイアログ」- MPLAB X IDE で利用できる NetBeans™ ウィンドウおよびダイアログ • 補遺 A「コンフィグレーション設定のまとめ」– 各種の言語ツールを使ってコード 内でコンフィグレーション ビットをセットする方法 ([Configurations Settings] 設定 ウィンドウは、デバッグ用に一時的にコンフィグレーション ビットを設定するだけ であるため、MPLAB X IDE ではこの手順が必要です ) • 補遺 B「IDE 外部での作業手順」– IDE 外で使える MPLAB X IDE のファイルの作成 方法 (IDE 外で作成されたファイルの、MPLAB X IDE へのインポート方法も説明し ます ) • 補遺 C「改訂履歴」– 本書の変更履歴 DS50002027D_JP - p.10 2016 Microchip Technology Inc. 序章 表記規則 本書では以下の表記規則を適用します。 本書の表記規則 表記 適用 例 Arial、MS ゴシックフォント 『MPLAB® IDE ユーザガイド』 二重かぎカッコ : 『 』 参考資料 太字 テキストの強調 ... は唯一のコンパイラです ... 角カッコ : [ ] ウィンドウ名 [Output] ウィンドウ ダイアログ名 [Settings] ダイアログ メニューの選択肢 [Enable Programmer] を選択 [Save project before build] ウィンドウまたはダイアログ 内のフィールド名、メニュー 項目名 右山カッコ (>) で区切り 角カッコで囲んだテキスト ( 下線付き ) メニューの選択方法 ( テキスト内に記載の場合 ) [File] > [Save] 右山カッコ (>) で区切り 角カッコで囲んだテキスト ( 下線なし ) メニューの選択方法 ( 表セル内に記載の場合 ) [File] > [Save] 角カッコ ([ ]) で囲んだ太字の テキスト ダイアログのボタン [OK] をクリックする タブ [Power] タブをクリックする 山カッコ (< >) で囲んだ テキスト キーボードのキー <Enter>、<F1> を押す サンプル ソースコード #define START ファイル名 autoexec.bat ファイルパス c:\mcc18\h キーワード _asm, _endasm, static コマンドライン オプション -Opa+, -Opa- ビット値 0, 1 定数 0xFF,’A’ 斜体の Courier New 変数の引数 角カッコ : [ ] オプションの引数 file.o (file は有効な任意 のファイル名 ) mpasmwin [options] file [options] 中カッコとパイプ文字 : { | } どちらかの引数を選択する 場合 (OR 選択 ) errorlevel {0|1} 省略記号 : ... 繰り返されるテキスト var_name [, var_name...] ユーザが定義するコード void main (void) { ... } Courier New フォント 標準書体の Courier New 2016 Microchip Technology Inc. DS50002027D_JP - p.11 MPLAB® X IDE ユーザガイド 推奨参考資料 本書は、MPLAB X IDE の使い方を記載したユーザガイドです。参考資料として、 Microchip 社が提供する以下の文書を推奨します。 MPLAB IDE の Reademe ファイル MPLAB X IDE の使い方に関する最新情報は、[Start Page] の [Release Notes and Support Documentation] の見出しからリリースノートを開いてお読みください。 リリースノートには、本書に記載できなかった最新情報と既知の問題を記載しています。 Readme ファイル 各種ツールの最新の使用方法は、MPLAB X IDE インストール フォルダの「Readmes」 サブフォルダ内にある各ツールの Readme ファイルを参照してください。Readme ファイルには、ユーザガイドに記載できなかった最新情報と既知の問題を記載して います。 オンライン ヘルプファイル - MPLAB X IDE MPLAB X IDE、MPLAB エディタ、MPLAB SIM シミュレータ、Microchip 社のコンパ イラ、その他の開発ツールではチュートリアル、機能説明、参照資料を含む包括的な ヘルプファイルを利用できます。 オンライン ヘルプファイル - NetBeans プラットフォーム プラットフォーム関連の内容に対するヘルプを利用できます。オンライン上の文書は 以下を参照してください。 『NetBeans Developing Applications with NetBeans IDE, Release 8.0, E50452-06』 デバイス データシートとファミリ リファレンス マニュアル 全てのPIC® MCUとdsPIC® DSCのデータシートと関連するデバイスファミリ リファ レンス マニュアルの最新版は、Microchip 社ウェブサイト (http://www.microchip.com) でご覧になれます。 DS50002027D_JP - p.12 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 1 章 MPLAB X IDE とは 1.1 はじめに MPLAB® X IDE は、Microchip 社製マイクロコントローラとデジタルシグナル コント ローラ向けのアプリケーション開発用ソフトウェアです ( 組み込みシステムの設計に 既に詳しい読者は、この章を読まずに次章へ進んでもかまいません )。 この開発ツールは統合開発環境 (IDE) と呼ばれ、組み込みマイクロコントローラの コード開発向けに 1 つに統合された「環境」を提供します。 この章では、組み込みシステムの開発を説明し、その過程における Microchip 社の MPLAB X IDE の使われ方を簡単に説明します。 本章の内容は以下の通りです。 •「組み込みシステムの概要」 •「開発サイクル」 •「プロジェクト マネージャ」 •「言語ツール」 •「デバッグ」 •「デバイスのプログラミング」 •「MPLAB X IDE の構成要素」 •「MPLAB X IDE オンラインヘルプ」 •「その他の MPLAB X IDE 関連文書」 •「ウェブサイト」 •「MPLAB X ストア」 •「MPLAB X IDE の更新」 2016 Microchip Technology Inc. DS50002027D_JP - p.13 MPLAB® X IDE ユーザガイド 1.2 組み込みシステムの概要 一般的に組み込みシステムとは、Microchip 社の PIC® マイクロコントローラ (MCU) や dsPIC® デジタルシグナル コントローラ (DSC) 等の小型マイクロコントローラの 機能を利用したシステムを指します。このようなマイクロコントローラは、マイクロ プロセッサ ユニット (PC の CPU に相当 ) と「周辺モジュール」と呼ぶ付加回路で構 成され、さらに、外部デバイスの数を減らすために、小規模の制御モジュール回路が 同一チップ上に追加されています。このように 1 つのチップに集積されたデバイスを 電子 / 機械装置に組み込む事により、低コストのデジタル制御が実現します。 1.2.1 組み込みコントローラと PC の違い 組み込みコントローラは、1 つまたは複数の限定されたタスクだけを実行するという 点で、PC とは大きく異なります。PC は不特定のプログラムを実行でき、各種の外部 デバイスへ接続できます。組み込みコントローラは 1 つのプログラムだけを実行する ため、そのタスクの実行に必要な処理能力とハードウェアだけを実装するだけで済み、 結果として価格を低く抑える事ができます。 対して PC は、比較的高価な汎用中央演算装置 (CPU) を核とし、多数の外部デバイス ( メモリ、ディスクドライブ、ビデオ コントローラ、ネットワーク インターフェイス 回路等 ) を備える必要があります。組み込みシステムは、演算装置として低コストの MCU を使い、同一チップに各種の周辺回路を含める事により、比較的少数の外部 デバイスしか必要としません。 多くの場合、組み込みシステムは各種製品 ( コードレスドリル、冷蔵庫、車庫用の オートシャッター等 ) の内部製品またはサブモジュールとして使われます。このよう なコントローラは、製品の全体機能の中のごく限られた部分だけに関与します。また、 コントローラは、デバイス内の重要サブシステムの一部に低コストのインテリジェンス 機能を付加します。 組み込みシステムの例として煙感知器があります。煙感知器はセンサの信号を評価し、 煙の発生を示す信号を検出すると警報を鳴らします。煙感知器が内蔵する小規模の プログラムは、無限ループを実行して煙センサの信号をサンプリングするか、あるいは 普段は低消費電力の「スリープ」で待機し、センサからの信号によって復帰します。 復帰したプログラムは、その時点で警報を鳴らします。通常、このようなプログラムは、 動作テストや電池残量アラーム等の機能も備えています。 センサとオーディオ出力を備えた PC にも同様の機能を持たせる事は可能ですが、 対費用効果が低く、9 V のバッテリ 1 個だけで何年間も無人稼動させる事はできません。 煙感知器、カメラ、携帯電話、家電製品、自動車、スマートカード、セキュリティ システム等の日用品へのインテリジェンス機能の組み込みには、多くの場合安価な マイクロコントローラが使われます。 1.2.2 マイクロコントローラの構成要素 PIC MCU は、プログラム ( 図 1-2) を実行するためのファームウェア ( コード化され た命令 ) を格納するプログラムメモリ ( 図 1-1) を内蔵しています。プログラムメモリ のアドレス ( リセットおよび割り込みアドレスを含む ) 指定には、プログラム カウンタ (PC) を使います。コード内のコールおよびリターン命令では、ハードウェア スタック を使います。このスタックはプログラムメモリと連携して動作しますが、プログラム メモリの一部ではありません。プログラムメモリの動作の詳細 ( ベクタ、スタック等 ) は、 デバイス データシートに記載しています。 DS50002027D_JP - p.14 2016 Microchip Technology Inc. MPLAB X IDE とは 図 1-1: PIC® MCU のデータシート – プログラムメモリとスタック PC<12:0> CALL, RETURN RETFIE, RETLW 13 Stack Level 1 Stack Level 2 Stack Level 8 On-Chip Program Memory Reset Vector 0000h Interrupt Vector 0004h Page 0 Page 1 0005h 07FFh 0800h 0FFFh 1000h Access 0-FFFh 1FFFh 図 1-2: PIC® MCU のデータシート – 命令 ( 抜粋 ) マイクロコントローラは、データ ( またはファイルレジスタ ) メモリも内蔵しています。 このメモリは、特殊機能レジスタ (SFR) と汎用レジスタ (GPR) で構成されます ( 図 1-4 参照 )。SFR は、デバイスの動作を制御するために CPU と周辺機能が使う レジスタです。GPR は、プログラムの計算に必要な変数等の一時的なデータの格納 用に使います。マイクロコントローラには、データ EEPROM メモリを内蔵するもの もあります。プログラムメモリと同様に、データメモリの使い方と動作の詳細も、 デバイス データシートに記載しています。 2016 Microchip Technology Inc. DS50002027D_JP - p.15 MPLAB® X IDE ユーザガイド 図 1-3: PIC® MCU のデータシート – ファイルレジスタ File Address Indirect addr.(1) TMR0 PCL STATUS FSR PORTA PORTB PORTC File Address Indirect addr.(1) OPTION_REG PCL STATUS FSR TRISA TRISB TRISC PCLATH INTCON PIR1 00h 01h 02h 03h 04h 05h 06h 07h 08h 09h 0Ah 0Bh 0Ch PIR2 TMR1L TMR1H T1CON TMR2 T2CON 0Dh 0Eh 0Fh 10h 11h 12h PIE2 PCON OSCCON OSCTUNE SSPBUF SSPCON CCPR1L CCPR1H CCP1CON RCSTA TXREG RCREG 13h 14h 15h 16h 17h 18h 19h 1Ah 1Bh 1Ch 1Dh 1Eh 1Fh 20h SSPADD(2) SSPSTAT WPUA IOCA WDTCON TXSTA SPBRG SPBRGH BAUDCTL PWM1CON ECCPAS ADRESH ADCON0 PCLATH INTCON PIE1 PR2 ADRESL ADCON1 80h 81h 82h 83h 84h 85h 86h 87h 88h 89h 8Ah 8Bh 8Ch Indirect addr.(1) TMR0 PCL STATUS FSR PORTA PORTB PORTC 8Dh 8Eh 8Fh 90h 91h 92h EEADR EEDATH EEADRH 93h 94h 95h 96h 97h 98h 99h 9Ah 9Bh 9Ch 9Dh 9Eh 9Fh A0h General Purpose Register General Purpose Register 7Fh Bank 0 accesses 70h-7Fh PCLATH INTCON EEDAT WPUB IOCB VRCON CM1CON0 CM2CON0 CM2CON1 ANSEL ANSELH File Address 100h 101h 102h 103h 104h 105h 106h 107h 108h 109h 10Ah 10Bh 10Ch Indirect addr.(1) OPTION_REG PCL STATUS FSR TRISA TRISB TRISC 10Dh 10Eh 10Fh 110h 111h 112h EECON2(1) 113h 114h 115h 116h 117h 118h 119h 11Ah 11Bh 11Ch 11Dh 11Eh 11Fh 120h PCLATH INTCON EECON1 PSTRCON SRCON 180h 181h 182h 183h 184h 185h 186h 187h 188h 189h 18Ah 18Bh 18Ch 18Dh 18Eh 18Fh 190h 191h 192h 193h 194h 195h 196h 197h 198h 199h 19Ah 19Bh 19Ch 19Dh 19Eh 19Fh 1A0h General Purpose Register 80 Bytes 96 Bytes File Address 80 Bytes EFh F0h FFh Bank 1 accesses 70h-7Fh Bank 2 16Fh 170h 17Fh accesses 70h-7Fh 1F0h 1FFh Bank 3 未実装のデータメモリ領域、「0」として読み出し Note 1: 物理レジスタではありません。 2: アドレス 93h は、特定条件において SSP マスク (SSPMSK) にもアクセスします。 DS50002027D_JP - p.16 2016 Microchip Technology Inc. MPLAB X IDE とは メモリ以外にも、マイクロコントローラは同一チップ上に多数の周辺デバイス回路を 内蔵しています ( 図 1-4)。周辺デバイスには入出力 (I/O ポート ) を含みます。I/O ポート とは出力として使用可能なマイクロコントローラのピンであり、High/Low に駆動する 事により信号の送信、ランプの点滅、スピーカの駆動等、配線を通して実行できます。 多くの場合これらのピンは双方向であり、入力として構成する事もできます。入力と して使う場合、外部スイッチまたはセンサからの入力に対する応答、外部デバイスと の通信が可能です。 PIC® MCU のデータシート – ブロック図 ( 抜粋 ) 図 1-4: Data Bus<8> 21 Table Pointer<21> RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4/LVDIN RA6 Data Latch 8 21 PORTA 8 Data RAM Inc/Dec Logic Address Latch 21 PCLATU PCLATH PCU PCH PCL Program Counter 4 BSR Address Latch Program Memory PORTB 12 RB0/INT0 RB1/INT1 RB2/INT2 RB3/INT3 RB4/KBI0 RB5/KBI1/PGM RB6/KBI2/PGC RB7/KBI3/PGD Address<12> 31 Level Stack 12 FSR0 FSR1 FSR2 4 Bank0, F 12 Data Latch Decode Table Latch 16 Inc/Dec Logic 8 ROM Latch IR PORTC RC0/T1OSO/T13CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RC4/SDI/SDA RC5/SDO RC6/TX1/CK1 RC7/RX1/DT1 このようなシステムを設計する場合、まずアプリケーションに必要な周辺モジュール を選択します。 一般的な周辺モジュールは以下の通りです。 • A/D コンバータ (ADC) を使うと、マイクロコントローラに接続したセンサから電圧 信号を取り込めます。 • シリアル通信モジュールを使うと、配線を通して別のマイクロコントローラ、ロー カル ネットワーク、インターネットとストリーム通信できます。 • PIC MCU 上の「タイマ」周辺モジュールは、信号イベントの正確な計測、通信信 号の生成 / 受信、正確な波形生成を行うだけでなく、電源瞬断やハードウェア誤作 動によるハングアップやフリーズが発生した場合に、マイクロコントローラを自動 リセットします。 • その他に、外部電源が危険レベルまで低下した事を検出し、電力供給が完全に途絶 える前に重要な情報を保存して、マイクロコントローラを安全にシャットダウンす るための周辺モジュールもあります。 2016 Microchip Technology Inc. DS50002027D_JP - p.17 MPLAB® X IDE ユーザガイド 使うべき PIC MCU は、アプリケーション プログラムが必要とする周辺モジュールと メモリ容量によってほぼ決まります。その他の選択基準としては、マイクロコント ローラの消費電力とフォームファクタ ( 回路に実装可能なサイズとパッケージ形態 ( 図 1-5)) が挙げられます。 PIC® MCU のパッケージ例 図 1-5: E E1 #leads=n1 p D1 D 2 1 B n CH x 45 A c A2 L A1 (F) 電力が供給され、オシレータがクロック信号 ( 図 1-6) を生成し始めるとマイクロコン トローラはアクティブになります。マイクロコントローラによっては、複数の内部 または外部オシレータ動作モードを備えている場合があります。 PIC® MCU のデータシート – タイミング ( 抜粋 ) 図 1-6: Q1 Q2 Q3 Q4 Q1 1 T1OSI Q1 TT1P 2 3 4 5 6 7 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 8 TSCS OSC1 Internal System Clock SCS (OSCCON<0>) Program Counter DS50002027D_JP - p.18 TOSC TDLY PC PC + 2 PC + 4 2016 Microchip Technology Inc. MPLAB X IDE とは 1.2.3 MPLAB X IDE による組み込みシステム回路の実装 組み込みコントローラ用開発システムは PC 上で動作し、組み込みシステム アプリ ケーションのコード作成、編集、デバッグと、デバイスへの書き込みを支援するソフ トウェアです。MPLAB X IDE は、組み込みシステム アプリケーションの設計と実装 に必要な全ての要素を備えています。 組み込みコントローラ アプリケーションの開発における代表的な作業手順は以下の 通りです。 1. まず全体的な回路構成を設計します。次に、必要な機能と性能に基づいて、その アプリケーションに最適な PIC MCU または dsPIC DSC を選択し、関連するハード ウェア回路を設計します。ハードウェアを制御する周辺モジュールとピンを決定 したら、ファームウェア ( 組み込みアプリケーションのハードウェアを制御する ためのソフトウェア ) を作成します。これには、マシンコードに直接変換可能な アセンブラや、高級プログラミング言語 (C 言語、BASIC 等 ) 用のコンパイラを 使います。アセンブラやコンパイラでは、関数や変数にプログラム内の参照先ルー チンや用途に対応した名前を付けてコードを読みやすくできます。また、コード を構造化する事により、良好な保守性が得られます。 2. アセンブラ、コンパイラ、リンカを使ってソフトウェアをコンパイル、アセンブル、 リンクします。これにより、コードを 1 と 0 だけで記述したマシンコード (PIC MCU が実行できるコード ) に変換します。最終的には、このマシンコードを ファームウェアとしてマイクロコントローラに書き込みます。 3. 作成したコードをマイクロコントローラに書き込む前に、動作をテストします。 複雑なプログラムでは、最初から期待通りに動作する事は稀であり、正しく動作 させるためにプログラムの「バグ」を取り除く必要があります。デバッガを使うと、 マシンコードの実行状態をソースコード内の関数名と変数名に対応させて観察で きます。デバッグ作業では、プログラムのシングルステップ実行による変数値の 確認や、その値を変更してルーチンの動作を確認する「what if」チェックが可能 です。 4. 最後に、マシンコードをマイクロコントローラに「書き込んで」、最終的にアプリ ケーション内で正しく動作する事を確認します。 上記の手順はいずれも非常に複雑な作業を伴います。このような作業では、設計その ものに専念できる環境が重要です。MPLAB X IDE を使う事により、煩わしい操作の 習得に時間を費やさずに、本来の設計作業に集中できます。 2016 Microchip Technology Inc. DS50002027D_JP - p.19 MPLAB® X IDE ユーザガイド ステップ 1 は設計段階ですが、設計上の重要な判断を下すために、MPLAB X IDE を 回路とコードのモデル化に役立てる事ができます。 MPLAB X IDE は、特にステップ 2 ~ 4 で真価を発揮します。プログラミング用エディタ は各種言語ツールに対応し、コード作成を支援します。このエディタは、アセンブラ とコンパイラのプログラミング構造を認識して、自動的にソースコードを色分け表示 します。このため、構文の誤り等を容易に見つけ出せます。プロジェクト マネージャ により、アプリケーションで使う各種ファイル ( ソースファイル、プロセッサ記述 ヘッダファイル、ライブラリ ファイル ) を容易に管理できます。コードをビルドする 際に、コンパイラによるコードの最適化 ( 実行速度またはバイナリサイズ優先 ) レベル、 変数とプログラムデータのメモリ格納領域を設定できます。マイクロコントローラの メモリをアプリケーション用に最大限に活用するために、「メモリモデル」を指定す る事もできます。アプリケーションのビルド中に言語ツールでエラーが発生すると、 エラー発生行が表示されます。その行をダブルクリックしてソースファイルを即座に 修正できます。コード修正後にアプリケーションを再ビルドして、エラーがないか確 認します。複雑なコードでは、複数のサブセクションを作成してテストする必要があ るため、記述 - コンパイル - 修正のループを繰り返すのが普通です。MPLAB X IDE を 使うと、このループを最短時間で終わらせて次のステップへ進む事ができます。 コードのビルドでエラーが発生しなくなったら、次はコードの動作をテストします。 MPLAB X IDE は、コードのテストを支援するために、全ての PIC MCU と dsPIC DSC に対応するデバッガとソフトウェア シミュレータを備えています。ソフトウェア シミュレータを使うと、ハードウェアが完成する前に、マイクロコントローラの動作 をシミュレートしてコードをテストできます。シミュレータは、外部信号に対する ファームウェアの応答をモデル化します。このため、シミュレートした外部信号 ( スティミュラス ) を入力する必要があります。シミュレータでは、実行時間の計測、 コードのシングルステップ実行による変数と周辺モジュールの観察、コードのトレース によるプログラム実行状態の詳細な記録等が可能です。 プロトタイプのハードウェアをアプリケーションに組み込める段階になると、イン サーキット エミュレータやインサーキット デバッガ等のハードウェア デバッガを使 えます。これらのデバッグツールは、フラッシュメモリ内蔵デバイスの多くが備える 特殊な回路を使って、実際のアプリケーション上でコードをリアルタイムに実行します。 これらのツールを使うと、プログラムの実行を停止 / 再開して、ターゲット マイクロ コントローラのプログラムメモリとデータメモリの内容を観察できるため、アプリ ケーションにマイクロコントローラを組み込んだ状態でコードをテストできます。 アプリケーションが正常に動作したら、Microchip 社のデバイスプログラマまたは 開発用プログラマを使って、マイクロコントローラにプログラムを書き込みます。 これらのプログラマは、完成したコードが設計通りに動作する事を検証します。 MPLAB X IDE は、ほとんどの PIC MCU と全ての dsPIC DSC をサポートします。 DS50002027D_JP - p.20 2016 Microchip Technology Inc. MPLAB X IDE とは 1.3 開発サイクル アプリケーション コードを作成するプロセスは、しばしば開発「サイクル」と呼ばれ ます。これは、設計から実装までの一連のステップを 1 回で問題なく完了できる事は 稀なためです。正しく動作するアプリケーションを開発するには、コードの記述 / テスト / 修正を何度も繰り返す必要があります。 統合開発環境は、このような開発において複数のツールを何度も切り換える煩わしさ からエンジニアを解放します。全ての機能を統合する MPLAB X IDE を使えば、ツール や動作モードの切り換えのたびに作業を中断する必要がなくなるため、アプリケー ション開発に集中できます。 図 1-7: 設計サイクル Compile/Assemble/ Link Code Edit/Create/Design Source Code Download Code to Debugger Analyze/Debug Code MPLAB X IDE は、共通のグラフィカル ユーザ インターフェイスを介して全てのツール を ( 通常は自動的に ) 連動させる「ラッパー」として機能します。例えば、ソースコード を記述し、これを実行可能なマシンコードに変換し、マイクロコントローラに書き込み、 その動作を確認するといった一連の作業を共通の環境内で実行できます。開発プロセス では、コードを記述するためのエディタ、ファイルと設定を管理するためのプロジェ クト マネージャ、ソースコードをマシンコードに変換するためのコンパイラまたは アセンブラ、マイクロコントローラと接続またはマイクロコントローラの動作を シミュレートするための各種ハードウェア / ソフトウェア等、複数のツールが必要です。 2016 Microchip Technology Inc. DS50002027D_JP - p.21 MPLAB® X IDE ユーザガイド 1.4 プロジェクト マネージャ プロジェクト マネージャは、編集したファイルを他の関連ファイルと一緒にまとめて、 アセンブルまたはコンパイル用の言語ツールに渡します。これらのファイルは最終的 にリンカへ渡されます。 リンカは、アセンブラ / コンパイラ / ライブラリから受け取った複数のオブジェクト コードを組み込みコントローラのメモリ空間に適切に配置して、各モジュールが相互 に機能できるようにリンクさせます。 このようなアセンブル / コンパイルからリンクまでのプロセス全体を、プロジェクト の「ビルド」と呼びます。必要に応じて、ファイルごとに異なる言語ツール向けの プロパティを呼び出す事ができます。このような場合でも、ビルドプロセスが全ての 言語ツールの動作を統合します。 図 1-8: MPLAB® X IDE のプロジェクト マネージャ Source Files Individual Build Options Assembler Object File Libraries Compiler Linker Script Linker Debug File Executable File ソースファイルは、アセンブラまたはコンパイラの規則に従って書かれたテキスト ファイルです。アセンブラとコンパイラは、これらのソースファイルを複数の中間的 なマシンコード モジュールに変換します。この際、関数とデータを参照するために プレースホルダも生成されます。 リンカはこれらのプレースホルダを解決し、全てのモジュールから実行可能なマシン コード ファイルを生成します。リンカはデバッグファイルも生成します。MPLAB X IDE は、このデバッグファイルに基づいて、実行用マシンコードを元のソースファイル に関連付けます。 コードの作成にはテキストエディタを使います。このエディタはテキストの構造を認 識し、命令ニーモニック、C 言語の構造体、コメント等の各種エレメントを色分け表 示します。エディタは、ソースコードの作成に必要な一般的な機能を備えています。 コード作成後、エディタは他のツールと連携してデバッガ内でのコードの実行状態を 表示します。エディタでブレークポイント ( コードの実行を一時停止 ( ブレーク ) す る位置 ) を設定してプログラムを実行し、変数名の上にマウスポインタを置くと変数 値を表示できます。変数名をソーステキスト ウィンドウからウォッチ ウィンドウに ドラッグ & ドロップすると、各ブレークポイントで停止した時またはコード実行中に 変数値の変化を観察できます。 DS50002027D_JP - p.22 2016 Microchip Technology Inc. MPLAB X IDE とは 1.5 言語ツール 「言語ツール」とは、クロスアセンブラやクロスコンパイラ等のプログラムを指します。 Visual Basic や C コンパイラのように、PC 上で動作する言語ツールが一般的によく 知られていますが、 組み込みシステムでは「クロスアセンブラ」または「クロスコンパイラ」を言語ツール として使います。これらのツールも PC 上で動作しますが、その PC ではなく別の マイクロプロセッサ ( またはマイクロコントローラ ) 上で動作するコードを生成します。 これらの言語ツールはデバッグファイルも生成します。MPLAB X IDE は、デバッグ ファイルを使って、マシン語命令とメモリ領域をソースコードに関連付けます。この 関連付けにより、MPLAB X IDE エディタによるブレークポイントの設定とウォッチ ウィンドウによる変数の表示が可能となり、ソースコードをシングルステップ実行して アプリケーションの動作を観察できるようになります。 組み込みシステムの言語ツールは、コードサイズが非常に重要視されるという点でも、 一般的なコンパイラと異なります。これは、コードサイズを小さくできればマイクロ コントローラのメモリサイズを小さくでき、それだけコストを削減できるからです。 このため、ターゲット デバイスを熟知してコードを最適化するための技量が求められ ます。 一般的な PC 用プログラムの場合、ある程度複雑なプログラムになると、そのサイズ は数 MB に達します。これに対し、単純な組み込みシステムのプログラムであれば、 1 KB 以下に収める事ができます。比較的複雑な機能を実行する中規模の組み込み システムになると、32K または 64K のメモリサイズが必要になる場合もあります。 組み込みシステムの中には、大規模なテーブル、ユーザテキスト メッセージ、データ のロギングに何 MB ものストレージを使うものもあります。 図 1-9: コンパイラによるソースコードからマシンコードへの変換 int main (void) { counter = 1; TRISB =0; while (input1 = 0) { PORTB = count; counter++; } } 2016 Microchip Technology Inc. COMPILER 01101111 10001000 11001101 10100001 00110011 01011101 00110001 11100101 DS50002027D_JP - p.23 MPLAB® X IDE ユーザガイド 1.6 デバッグ アプリケーション開発では、コードの動作をテストするためにデバッガを使います。 デバッガには、マイクロコントローラの動作を PC 上でシミュレートするソフトウェア プログラム ( シミュレータ ) と、実際のアプリケーション内でプログラムの動作を 解析できるハードウェア デバイス ( ハードウェア デバッガ ) があります。 1.6.1 ソフトウェア デバッガ MPLAB X IDE はシミュレータを内蔵しているため、ハードウェアを追加しなくても、 PC 上でプログラムをテストできます。シミュレータはソフトウェア デバッガとも 呼ばれ、その機能はハードウェア デバッガとほぼ同じです。このためシミュレータの 使い方を習得すれば、ハードウェア デバッガも容易に使えます。シミュレータは PC の CPU を使ってマイクロコントローラの動作をシミュレートするため、通常は実際 のマイクロコントローラよりも低速で動作します。 1.6.2 ハードウェア デバッガ MPLAB X IDE で使えるハードウェアには、プログラマとハードウェア デバッガの 2 種類があります。プログラマは、PC 上で作成したマシンコードを、マイクロコン トローラの内部メモリに書き込みます。これにより、アプリケーションに組み込んだ マイクロコントローラ上でプログラムを実行できるようになります。 しかし、最初からコードが期待通りに機能する事はきわめて稀です。そこで実際の アプリケーションでプログラムの動作をよく観察して、期待通りの動作が得られるよう にソースコードを修正する必要があります。このプロセスを「デバッグ」と呼びます。 既に説明した通り、シミュレータは PC 上でコードの動作をテストできますが、マイク ロコントローラにプログラムを書き込んで実際のアプリケーションで動作させると、 シミュレータでは見つからなかった問題が多数発生します。プログラマだけでも、 コードを変更してマイクロコントローラにプログラムし直し、ターゲットにプラグイン して再テストできますが、コードが複雑な場合、長い時間と労力を要するサイクルに なる可能性があります。また、ハードウェア内の問題を正確に理解する事が困難です。 このような場合、ハードウェア デバッガが有効です。ハードウェア デバッガには、 特殊なデバッグ用回路を内蔵したマイクロコントローラを使うインサーキット エミュレータまたはインサーキット デバッガがあります。ハードウェア デバッガは、 この特殊な回路を使う事により、シミュレータと同様にコード内の任意ステップでの 変数の観察や、シングルステップ実行を可能にします。 1.6.3 統合開発環境 通常、プロジェクトの設計サイクルが最終段階に近づくと、デバッグは緊急の問題に なります。製品化の最終ステップでは、アプリケーションを当初の設計通りに機能さ せる必要がありますが、多くの場合この段階が製品の完成に遅れを生じる最大の要因 となります。このような製品開発において、統合開発環境がきわめて重要な役割を果 たします。コードの「微調整」、リコンパイル、ダウンロード、テストは全てそれな りに時間を要します。全て同じ環境内のツールを使う事で、サイクル時間を短縮でき ます。致命的なバグを全て取り除く必要がある最終ステップでは、組み込みエンジニア の腕が試されます。適切なツールはエンジニアを支援して開発期間を短縮します。 MPLAB X IDE では、各種ツールを共通のインターフェイスで使えるため、ソフトウェア シミュレータから低コストのインサーキット デバッガへ、さらには強力なインサー キット エミュレータへとツールをアップグレードする際にも習熟が容易です。 DS50002027D_JP - p.24 2016 Microchip Technology Inc. MPLAB X IDE とは 1.7 デバイスのプログラミング アプリケーションのデバッグが終わって、開発環境で完全に動作する事を確認できたら、 今度は実際のデバイス上で動作をテストする必要があります。デバイスのプログラ ミングには、インサーキット エミュレータ、インサーキット デバッガ、開発用プロ グラマ、デバイス プログラマを使えます。MPLAB X IDE をプログラマとして設定し、 デバイスにプログラムを書き込む事ができます。これにより、アプリケーションを完 成品とほぼ同じ状態で観察できるようになります。エンジニアリング プロトタイプ プログラマを使うと、プロトタイプを素早く作成して評価できます。アプリケーション によっては、デバイスをプリント基板にはんだ実装後でもプログラミングできます。 In-Circuit Serial Programming™ (ICSP™) プログラミング機能を使うと、製造時に ファームウェアを書き込み、さらに後から書き直す事もできます。インサーキット デバッグをサポートしているデバイスなら、完成品をインサーキット デバッガに接続 して製造後の品質検査とファームウェアの改良開発が可能です。 量産時のプログラミングには量産プログラマと MPLAB IPE を使います。MPLAB IPE は MPLAB X IDE と共にインストールされます。 2016 Microchip Technology Inc. DS50002027D_JP - p.25 MPLAB® X IDE ユーザガイド 1.8 MPLAB X IDE の構成要素 MPLAB X IDE は以下の要素で構成されています。 • プログラマ用テキストエディタ : このエディタはデバッガ用のウィンドウとしても 機能します。 • プロジェクト マネージャ ( プロジェクト ウィンドウとして表示 ): IDE と言語ツール 間の統合と通信を提供します。 • 各種アセンブラ / リンカパッケージ : ターゲット デバイスのファームウェアの開発用 です。 • デバッガエンジン : ブレークポイント、シングルステップ実行、ウォッチ ウィンドウ等、 今日のデバッガが備えるべき全ての機能を提供します。デバッガは、ソフトウェア およびハードウェア デバッグツールと連携して機能します。 • ソフトウェア シミュレータ : 全ての PIC MCU と dsPIC DSC に対応します。シミュ レータの実行ファイルは、デバイス別に用意しています。MPLAB X IDE は、それ らのファイルの中から、ターゲット デバイスに適合するファイルを選択します。 以下の MPLAB X IDE 用オプション コンポーネントもご利用またはご購入頂けます。 • コンパイラ言語ツール Microchip 社の MPLAB XC C コンパイラは、PIC MCU と dsPIC DSC 向けに、完全に 統合および最適化したコードを提供します。microEngineering Labs、CCS、SDCC が 提供するコンパイラを MPLAB X IDE のプロジェクト マネージャから起動してコードを コンパイルする事もできます。コンパイルしたコードは自動的にターゲット デバッガに 読み込まれ、即座にテストおよび検証できます。 • プログラマ MPLAB ICD 3 インサーキット デバッガ、MPLAB REAL ICE™ インサーキット エミュ レータ、MPLAB PM3 プログラマを使うと、ターゲット デバイスの量産プログラミング が可能です。PICkit™ 3 インサーキット デバッガを使うと、ターゲット デバイスへ のコードの開発プログラミングが可能です。 これらのツールは全て MPLAB X IDE と組み合わせて使う事で、コードとデータの プログラミングだけでなく、ターゲット デバイスの各種動作モードを設定するコン フィグレーション ビットも制御できます。 また、これらのツールは全て MPLAB IPE と組み合わせて使う事で、コード、データ、 コンフィグレーション ビットをプログラミングできます。MPLAB IPE は、量産プロ グラミング向けに設計されており、そのインターフェイスは単純化されています。 • インサーキット デバッガ / エミュレータ PICkit 3/MPLAB ICD 3 インサーキット デバッガ、MPLAB REAL ICE インサーキット エミュレータを使うと、ターゲット デバイス上でアプリケーション コードをデバッグ できます。これらのツールは、一部のデバイスが内蔵する特殊なリソースを使って、 アプリケーションに実装済みのターゲット マイクロコントローラにコードをダウン ロードし、ブレークポイントの設定、コードのシングルステップ実行、レジスタと 変数の監視を可能とします。エミュレータでは、その他のデバッグ機能 ( トレース等 ) も利用できます。 • プラグインツール MPLAB X IDE に機能を追加するために、各種のプラグインを利用できます。例えば、 DMCI (Data Monitor and Control Interface) を使うと、コード内の変数を表示およ び制御し、それらの値をリアルタイムに変更できます。また、DMCI を使うと、出力 データをグラフィカルに表示する事もできます。 サポートするプラグインツールの詳細はセクション 5.22「プラグインツールの追加」 を参照してください。 DS50002027D_JP - p.26 2016 Microchip Technology Inc. MPLAB X IDE とは 1.9 MPLAB X IDE オンラインヘルプ MPLAB X IDE は、NetBeans プラットフォームに基づいて構築されています。従って、 多くの NetBeans 機能を MPLAB X IDE の機能として利用できます。 NetBeans に関する情報は、[Help] ウィンドウの左の [Contents] タブ内で、[NetBeans Help] の下に表示される各種のオンラインヘルプ ファイルを参照してください。 MPLAB X IDE 開発ツールに関する情報は、[Help] ウィンドウの左の [Contents] タブ 内で、[MPLAB X IDE Help] の下に表示される各種のオンラインヘルプ ファイルを参 照してください。 MPLAB X IDE と MPLAB IDE v8 の相違点は第 10 章「MPLAB X IDE と MPLAB IDE v8 の相違点」を参照してください。 1.9.1 ヘルプ MPLAB X IDE の挙動を完全に理解するには、全てのヘルプファイルを参照してくだ さい。ヘルプを開くには [Help] > [Help Contents] を選択します。この操作により全 ヘルプファイルが 1 つに結合されます。そのため開くのに少し時間がかかります。 1.9.2 ツールのヘルプ [Help] > [Tool Help Contents] で選択したツールの個別のヘルプファイルを参照する事 もできます。個別のヘルプファイルを開く事で、素早く範囲を絞って内容を検索でき ます。 2016 Microchip Technology Inc. DS50002027D_JP - p.27 MPLAB® X IDE ユーザガイド 1.10 その他の MPLAB X IDE 関連文書 ヘルプ以外の文書、ビデオとフォーラムへのリンク、Wiki は [Start Page] から利用できます ( 図 1-10)。 図 1-10: MPLAB X IDE の [Start Page] DS50002027D_JP - p.28 2016 Microchip Technology Inc. MPLAB X IDE とは Microchip Wiki は、先進機能のヒントを探すのに便利です ( 図 1-11)。 このリンクをクリックすると Wiki を閲覧できます。https://microchip.wikidot.com 図 1-11: Microchip Wiki 2016 Microchip Technology Inc. DS50002027D_JP - p.29 MPLAB® X IDE ユーザガイド 1.11 ウェブサイト Microchip 社は自社が運営するウェブサイト (www.microchip.com) を通してオンライン サポートを提供しています。 http://www.microchip.com/devtools このウェブサイトを通じて、お客様はファイルと情報を簡単に入手できます。詳細は 本書の「サポート」を参照してください。 1.12 MPLAB X ストア MPLAB X IDE v3.xx を入手するには、開発ツール ソフトウェア / ハードウェア製品の Microchip 社のストアに IDE 経由でアクセスしてください。 ストアのアイコン • [MPLAB X Store] タブ – [Start Page] タブの隣がこのタブです。このタブは各種製品 へのリンクを提供します。 • [Help] > [MPLAB X Store] – [Help] メニューの下に [MPLAB X Store] タブを開くリンクが あります。 • [MPLAB X Store] ツールバー アイコン – [MPLAB X IDE] ツールバー上のアイコンで [MPLAB X Store] タブが開きます。 セクション 2.8「[MPLAB X Store] での購入」も参照してください。 1.13 MPLAB X IDE の更新 MPLAB X IDE はユーザの皆様にお使い頂くだけでなく、Microchip 社内でも新機能を 採用した新型マイクロコントローラの開発に使っています。MPLAB X IDE の新機能 の多くは、お客様からのご要望と Microchip 社内での使用経験を基に開発しています。 新設計のマイクロコントローラのリリースが続く限り、MPLAB X IDE も進化し続け ます。 新しいデバイスのサポートと新機能を追加するために、MPLAB X IDE のバージョン はほぼ数ヶ月に 1 回のペースで更新されます。 開発プロジェクトの途中で MPLAB X IDE の新バージョンがリリースされた場合、 特別な理由 ( 例 : 現在の作業を阻害しているバグの修正 ) がない限り、その時点での 新バージョンへの更新は推奨しません。新しいプロジェクトの開始時に更新する事を 推奨します。 新バージョンへの更新のたびに、MPLAB X IDE ソフトウェアに新機能が追加される ため、マニュアル等の印刷文書の更新はオンラインヘルプよりも遅れます。このため、 MPLAB X IDE で疑問が生じた場合、オンラインヘルプが最良の参照資料です。 MPLAB X IDE と関連要素の変更通知サービスをご希望のお客様は、myMICROCHIP Personalized Notification Service (http://www.microchip.com/pcn) で開発ツールのセク ションにご登録ください。 詳細は本書の「サポート」を参照してください。 DS50002027D_JP - p.30 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 2 章 使用前の準備 2.1 はじめに MPLAB X IDE を使う準備をする場合、以下の作業を行います。 • • • • • • • • • 2.2 JRE と MPLAB X IDE のインストール USB ドライバ ( ハードウェア ツール用 ) のインストール ターゲットとハードウェア ツールの接続 言語ツールのインストール MPLAB IDE の起動とデスクトップの表示 [Start Page] からのアクセス情報 [MPLAB X Store] での購入 IDE で複数のインスタンスを使う方法 IDE で複数のバージョンを使う方法 JRE と MPLAB X IDE のインストール MPLAB X IDE (NetBeansプラットフォーム ベース)をインストールする際、Windows® または Linux® 用の Java Runtime Environment (JRE) もインストールされます。Mac OS® の場合、適切な JRE が既にインストールされていれば、MPLAB X IDE のインス トールはそのまま進行します。JRE がインストールされていない場合、その適切な バージョンの入手先を示すダイアログが表示されます。表示される指示に従って JRE をインストールしてから、MPLAB X IDE をインストールします。 2016 Microchip Technology Inc. DS50002027D_JP - p.31 MPLAB® X IDE ユーザガイド 2.3 USB ドライバ ( ハードウェア ツール用 ) のインストール ツールを正しく動作させるために、USB ドライバをインストールする必要があります。 2.3.1 Mac または Linux 用 USB ドライバのインストール Mac または Linux PC に MPLAB X IDE をインストールする場合、インストーラは 自動的に USB ドライバもインストールします。特別な操作は不要です。 2.3.2 Windows® XP/7/8 OS 用の USB ドライバのインストール MPLAB X IDE を Windows PC にインストールする場合、以下の手順で USB ドライバを インストールする必要があります (Note: MPLAB IDE v8.xx 用の USB ハードウェア ツールドライバは、MPLAB X IDE 用とは異なります )。 これらの手順は以下のツールを使う場合に必要です。 • • • • MPLAB REAL ICE インサーキット エミュレータ MPLAB ICD 3 インサーキット デバッガ MPLAB PM3 デバイス プログラマ PIC32 スタータキット PICkit 2、PICkit 3、上記以外の MPLAB スタータキットに対しては、以下の操作は 不要です。 以下の説明に従い、インストール方法を決定してください。 2.3.2.1 ドライバのインストール前に Switcher ユーティリティを使う場合、またはプリインストーラを起動してドライバを インストールする場合 ( どちらも後続セクションで詳述 )、既存の WinUSB ドライバ のシステム バージョンが、Switcher またはプリインストーラのバージョンより古いと、 新しいものに置き換えられる事に注意してください。WinUSB ドライバの既存のバー ジョンを残しておきたい場合、Microchip 社のデバイスドライバをインストールする 前に、これらのファイルの名前を変更します。 WinUSB ドライバファイルは以下の場所に保存されています。 32 ビット OS の場合 : C:\Windows\system32\WinUSB.dll (32 ビット ) C:\Windows\system32\drivers\WinUSB.sys (64 ビット ) 64 ビット OS の場合 : C:\Windows\SysWOW64\WinUSB.dll (32 ビット ) C:\Windows\system32\WinUSB.dll (64 ビット ) C:\Windows\system32\drivers\WinUSB.sys (64 ビット ) 2.3.2.2 手動切り換え (Windows XP 64 の場合 ) Windows XP 64 ビット OS を使っている場合、デバイスドライバを手動で切り換える 必要があります。セクション 2.3.2.6「ドライバの手動インストールが必要な場合」を 参照してください。 DS50002027D_JP - p.32 2016 Microchip Technology Inc. 使用前の準備 2.3.2.3 管理者モードの使用 (Windows 7 または 8 OS の場合 ) Windows 7 または 8 OS 上で Switcher の実行ファイルを使ってデバイスドライバを インストールする場合、管理者モードで実行する必要があります。 「Device Driver Switcher」GUI アプリケーションを管理者として実行するには、実行 ファイル (MPDDSwitch.exe または MPDDSwitch64.exe) を右クリックして [ 管理 者として実行 ] を選択します。 ドライバの切り換えには、この GUI アプリケーションを推奨します。このアプリケー ションで問題が生じた場合にのみ、コマンドライン アプリケーションを使ってください。 コマンドライン アプリケーション (mchpdds32.exe または mchpdds64.exe) を 管理者として実行するには、まずコマンド プロンプトを管理者モードで起動します。 [ スタート ] > [ 全てのプログラム ] > [ アクセサリ ] > [ コマンド プロンプト ] を右 クリックして [ 管理者として実行 ] を選択します。これにより管理者用コマンド プロン プト画面が開きます。ここで、ReadMe32.txt または ReadMe64.txt ファイルに記 載されているコマンドを入力してドライバを切り換えます。 2.3.2.4 MPLAB IDE v8.xx がシステムにインストールされている場合 コンピュータに MPLAB IDE v8.xx 以前のバージョンがインストール済みの場合、 Switcher プログラムを実行して MPLAB IDE v8 ドライバから MPLAB X IDE ドライバ に切り換えます。MPLAB X IDE ドライバは、最初に切り換えを実行した時にインス トールされます。 Switcher プログラムは、「MPDDSwitch」(32 ビット OS) または「MPDDSwitch64」 (64 ビット OS) という名の GUI アプリケーションです。このアプリケーションは、 デスクトップ アイコン [MPLAB Driver Switcher] から起動できます。 図 2-1: 2016 Microchip Technology Inc. Swithcer ユーティリティ DS50002027D_JP - p.33 MPLAB® X IDE ユーザガイド 1. ツール ハードウェアを PC の USB コネクタに接続します。 2. PC の [ デバイス マネージャ ] ウィンドウを開きます。Windows XP PC を例に取 ると、[ マイコンピュータ ] アイコンを右クリックして [ プロパティ ] を選択する と表示されます。[ システムのプロパティ ] ダイアログ内の [ ハードウェア ] タブ を選択し、[ デバイス マネージャ ] ボタンをクリックします。 3. [Microchip Tools] セクションを展開して、接続したツールに現在割り当てられて いるドライバを表示します。ドライバは、「Microchip ツール名」というフォー マットで表示されます。 4. MPLAB X IDE インストール先フォルダにある「Swithcer」サブフォルダを開きま す。このフォルダの既定値のパスは以下の通りです。 32 ビット OS の場合 : C:\Program Files\Microchip\MPLABX\vx.xx\Switcher 64 ビット OS の場合 : C:\Program Files (x86)\Microchip\MPLABX\vx.xx\Switcher (vx.xx は MPLAB X IDE のバージョンです。) 5. 「Switcher」フォルダで OS に対応したサブフォルダ (「32Bit」または「64Bit」) を開きます。 6. その中の MPDDSwitch.exe (32 ビット OS) または MPDDSwitch64.exe (64 ビット OS) を起動します。 7. MPLAB IDE v8 または MPLAB X IDE を既定値とは異なるフォルダにインストールし ている場合、[ 詳細 ] をクリックして、ドライバファイルの格納場所を指定します。 8. USB ドライバのインストールまたは切り換え方法 a) [Tool Group and Action] の下で、ドライバを切り換える接続済みのツールを クリックして選択する。 b) ラジオボタンで [MPLAB 8] または [MPLAB X] のどちらかを選択する。 c) [Apply All] をクリックする。切り換えの進捗状況が大きなテキスト ウィン ドウに表示されます。切り換えには若干の時間を要します。 Note: Switcher 実行時にツールを接続していないと、ツールに対応するドラ イバはインストールまたは切り換えが行われません。 9. GUI によるドライバのインストールに失敗した場合、[Advanced] をクリックし てドライバファイルへのパスを確認した上で、Switcher を再度実行します。 10. それでも GUI からドライバをインストールできない場合、手動でインストールする 必要があります。その手順とドライバの保存場所はセクション 2.3.2.6「ドライバ の手動インストールが必要な場合」を参照してください。 11. プログラムまたはバッチの実行が完了したら、[ デバイス マネージャ ] ウィンドウ にドライバの名前が表示される事を確認します。 「Microchip WinUSB Device」と 表示されるはずです。 MPLAB X IDE 用ドライバをインストールした後は、ドライバを MPLAB IDE v8.xx 用 と MPLAB X IDE 用の間で切り換える事ができます。 2.3.2.5 MPLAB IDE v8.xx がシステムにインストールされていない場合 特別な操作は必要ありません。MPLAB X IDE のインストール時に USB ドライバも インストールされます。PC の USB ポートにツールを接続すると、[ 新しいハードウェア が見つかりました ] というバルーン メッセージが表示されます。次に、ドライバが 自動的にインストールされます。またはウィザードに従い [ 自動的にドライバを選択 する ] ように設定します。しかし、どちらの手順も失敗した場合、手動でインストール する必要があります。その手順とドライバの保存場所はセクション 2.3.2.6「ドライバの 手動インストールが必要な場合」を参照してください。 DS50002027D_JP - p.34 2016 Microchip Technology Inc. 使用前の準備 2.3.2.6 ドライバの手動インストールが必要な場合 ドライバの手動インストールが必要な場合、以下の手順を実行します。 1. [ コントロール パネル ] の [ デバイス マネージャ ] を開きます。[Microchip Tools] の下に対象のツールを探します。見つからない場合、[ その他のデバイス ] の下の [ 不明なデバイス ] を探します。 2. ツール名または [ 不明なデバイス ] を右クリックして、[ ドライバ ソフトウェアの 更新 ] を選択します。 3. [ ドライバ ソフトウェアの更新 ] ダイアログで [ コンピュータを参照してドライバ ソフトウェアを検索します ] を選択します。 Note: [ ドライバ ソフトウェアの最新版を自動検索します ] は選択しないで ください。誤ったデバイスドライバがインストールされます。誤って 選択した場合、元に戻るかダイアログを終了し、上記の手順を再度実 行して正しいドライバをインストールしてください。 4. デバイスドライバの正しい保存場所を参照します。デバイスドライバの既定値の 保存場所は以下の通りです。 C:\Program Files\Microchip\MPLABX\vx.xx\Switcher\32Bit\ winusb\x86\MCHPWinUSBDevice.inf または C:\Program Files\Microchip\MPLABX\vx.xx\Switcher\64Bit\ winusb\amd64\MCHPWinUSBDevice.inf vx.xx は、MPLAB X IDE のバージョン番号です。 Windows 8 の場合、ドライバは x86_Windows8 サブフォルダまたは amd64_Windows8 サブフォルダのどちらかにあります。 5. Windows のセキュリティ ダイアログが表示された場合、[ このドライバ ソフト ウェアをインストールします ] を選択してドライバをインストールします。 2.3.2.7 ツールの通信の問題 1. ドッキング ステーションまたはハブを介してツールを接続すると問題が生じる 場合、PC の USB ポートに直接ツールを接続する必要があるかもしれません。 これは WinUSB ドライバの既知の問題です。 2. ドライバを手動で再インストールする必要がある場合、 「32Bit」または「64Bit」 フォルダ内の INF ファイルを指定する必要があります : 詳細はセクション 2.3.2.6 「ドライバの手動インストールが必要な場合」を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.35 MPLAB® X IDE ユーザガイド 2.4 ターゲットとハードウェア ツールの接続 インサーキット デバッガやエミュレータを使う場合、以下を参照してハードウェア ツールをターゲットに接続します。 • 開発ツールの設計注意書 • ヘッダの仕様書 ( ヘッダを使う場合 ) • ツールのマニュアル プログラマ専用機の場合、プログラマのマニュアルを参照してください。 Microchip 社のデモボード、評価用キット、リファレンス デザインをターゲットとして 使う場合、セットアップに関する情報は、それらに付属する文書を参照してください。 2.5 言語ツールのインストール MPLAB X IDE をインストールする際に、言語ツールの MPASM ツールチェーンも 一緒にインストールされます (ASM30 ツールチェーンは付属しません )。 MPLAB X IDE では、各種の C コンパイラツール パッケージ ( コンパイラ、アセンブラ、 リンカ等 ) を使えます。Microchip 社のウェブサイト http://www.microchip.com/xc からインストールするコンパイラを入手できます。後ほど、無償のコンパイラ (Free、 Evaluation) またはコードを最適化できる有償のコンパイラ (Standard、Pro) として、 それらのライセンスを取得できます。 コンパイラを選ぶ際には、設計に使うデバイスがサポートされているか注意します。 必要なコンパイラのインストールとライセンス取得の方法は『Installing and Licensing MPLAB XC C Compilers』(DS50002059) を参照してください。MPLAB X IDE は、 インストール済みコンパイラのライセンス取得とネットワーク ライセンスの取得 / 返却 の機能を備えています。セクション 11.2.10「[Tools] メニュー」の [Licenses] の メニュー項目を参照してください。 DS50002027D_JP - p.36 2016 Microchip Technology Inc. 使用前の準備 2.6 MPLAB IDE の起動とデスクトップの表示 [MPLAB X IDE] アイコンをダブルクリックするとプログラムが起動します。 MPLAB X IDE は、NetBeans プ ラ ッ ト フ ォ ー ム に 基 づ い て 構 築 さ れ て い ま す。 NetBeans IDE を使い慣れていれば、MPLAB X IDE デスクトップはすぐに使えます。 しかし、以下のタブと図 2-2 に示すタブは MPLAB X IDE に特有です。 • [Start Page] • [MPLAB X Store] 図 2-2: MPLAB X IDE のデスクトップ 2016 Microchip Technology Inc. DS50002027D_JP - p.37 MPLAB® X IDE ユーザガイド 2.7 [Start Page] からのアクセス情報 [Start Page] は、各種のリンクを収めた 3 つのタブで構成されます。下表に各タブの 内容を示します。 起動時に [Start Page] を表示しない場合、各タブの下部の [Show on Startup] のチェック を外します。 表 2-1: [Learn & Discover] タブ Getting Started Quick Start プロジェクトを作成およびセットアップして、すぐに使えるよう にします。 Get Started Microchip Wiki に掲載されている MPLAB X IDE の使用方法です。 MPLAB® IDE v8 Users – IMPORTANT ハードウェア ツール向けの WinUSB ドライバをインストールし ます。 Download Compilers and Assemblers MPLAB XC C コンパイラとその他の言語ツールのダウンロード とインストールについて学べます。 MPLAB® Harmony PIC32 MCU 向けアプリケーションの開発において MPLAB Harmony がどのように役立つかについて学べます。 User’s Guide, Release Notes and Support Docs MPLAB X IDE インストーラに含まれている文書へのリンクです。 ユーザガイド、ツールのリリースノート、デバイスの予約済み リソース ( ツールごと )、デバイスのサポート文書を含みます。 Dive In Open Sample Project 実行可能なサンプル プロジェクトを開きます。 Create New Project 新しい MPLAB X IDE プロジェクトを作成します。初めてプロ ジェクトを作成する場合、「Quick Start」をご覧になる事を推奨 します。 Import Legacy Project 既存の MPLAB IDE v8 プロジェクトをインポートします。イン ポートしたプロジェクトで作業を始める前に、「Quick Start」を ご覧になる事を推奨します。 Import Hex (Prebuilt) Project 別のツールでプリビルドしたプロジェクトから HEX ファイルを インポートします。 What’s New & Tutorials MPLAB X IDE Developer Help Microchip Wiki のページに移動し MPLAB X IDE アプリケーション 開発に関する情報を入手します。 MPLAB Harmony PIC32 MCU 向けの柔軟で包括的なファームウェア統合開発 プラットフォームであるMPLAB Harmonyについて学び、MPLAB Harmony をダウンロードおよびインストールします。 MPLAB Code Configurator 周辺モジュールを設定し、 設定済み周辺モジュールのコードを生成 できる MPLAB Code Configurator (MCC) について学び、MCC を ダウンロードおよびインストールします。8 ビットおよび 16 ビット MCU に対応します。 Microchip Libraries for MLA のスタックとライブラリを使うプリビルドしたアプリケー Applications ションに便利な MLA について学び、MLA をダウンロードおよび インストールします。 Difference from MPLAB v8 MPLAB X IDE と MPLAB IDE v8 の相違点をご覧になれます。 New Features in v3 MPLAB X IDE v3.00 で利用できる新機能の一覧をご覧になれます。 Community Forums Microchip 社のフォーラム ウェブページを開きます。 MPLAB X IDE Forum MPLAB X IDE フォーラムに登録します。 MPLAB Harmony Forum MPLAB Harmony フォーラムに登録します。 MPLAB Code Configurator MPLAB Code Configurator フォーラムに登録します。 Forum DS50002027D_JP - p.38 2016 Microchip Technology Inc. 使用前の準備 表 2-2: [My MPLAB X IDE] タブ Recent Projects MyProject.c: 最近開いたプロジェクトの一覧を表示します。 Extend MPLAB Selecting Simple or Full Featured Menus MPLAB X IDE を初めて起動した時は、一部の項目を省略した メニューが表示されますが、全ての項目を含むメニューを選択する 事もできます。 Download Compilers and Assemblers MPLAB XC C コンパイラとその他の言語ツールのダウンロード とインストールについて学べます。 Install More Plug-Ins プラグイン用のダイアログを開きます。 Notes & Newsletters ANxxxx, TBxxxx 推奨のアプリケーション ノートと技術概要を表示します。 microSOLUTIONS E-newsletter 推奨のニュースレターを表示します。 All App Notes/ Newsletters 全てのアプリケーション ノートとニュースレターを表示します。 References & Featured Links Data Sheets 等 表 2-3: リンクをクリックしてデータシート等の参考文書を閲覧できます。 [What's New] タブ Data Sheets & Errata 推奨のデータシートとエラッタの一覧を表示します。[All Data Sheets] または [All Errata] をクリックすると、全てのデータシート またはエラッタを表示します。 Reference Manuals & Programming Spec データシートとエラッタ ファミリ リファレンス マニュアル、デバイス プログラミング仕様 推奨のリファレンス マニュアルとプログラミング仕様の一覧を 表示します。[All Reference Manuals] または [All Programming Specs] をクリックすると、これらの全ての文書を含む一覧を表示 します。 Recently Released Software Microchip 社のデバイスを使った開発をサポートする最新のソフト ウェアの一覧を表示します。[All Recently Released Software] を クリックすると、これらの全てのソフトウェアを含む一覧を表示 します。 Product & Corporate News ソースコード 新規資料、新規ニュース 2016 Microchip Technology Inc. 推奨 Microchip 社製品とニュースを表示します。[All News] を クリックすると、これら全てのニュースを表示します。 DS50002027D_JP - p.39 MPLAB® X IDE ユーザガイド 2.8 [MPLAB X Store] での購入 [MPLAB X Store] タブをクリックすると Microchip 社のストアからツールを購入でき ます。このタブは MPLAB X IDE に関する最新の商品を紹介するように構成されてい ます。各種カテゴリを参照して他の商品を見つける事もできます。 このタブは [Help] メニューまたはツールバー アイコンから直接アクセスする事もで きます。 図 2-3: [MPLAB X Store] 追加の機能が予定されています。[Start Page] の [My MPLAB IDE] から microchipDIRECT へのログインが可能になる予定です。その場合、 • ソフトウェアに関する警告 (HPA の失効等 ) をご覧になれます。 • ユーザの mySoftware アカウントにアクセスできます。mySoftware アカウントでは 各種ライセンスを登録およびダウンロードし、HPA を更新できます。 DS50002027D_JP - p.40 2016 Microchip Technology Inc. 使用前の準備 2.9 IDE で複数のインスタンスを使う方法 MPLAB X IDE の各インスタンスでハードウェア ツール (PICkit 3 等 ) を使うには、 事前に設定が必要です。ハードウェア ツールの準備が完了したら、IDE のインスタンス を IDE と同じフォルダから起動できます。 • 複数のインスタンスを使うためのハードウェア ツールの設定方法 • IDE のインスタンスの呼び出し方 2.9.1 複数のインスタンスを使うためのハードウェア ツールの設定方法 既定値では、IDE で最大 5 つのインスタンスが使えます。それ以上のインスタンスを 使う場合、「mchpdefport」ファイルを手動で変更する必要があります。 2.9.1.1 「mchpdefport」ファイルの使い方とフォーマット 「mchpdefport」ファイルは、IDE とローレベル USB ライブラリ (DLL、so、dylib ファイル ) の両方に利用するツールのホットプラグに必要な情報を提供します。この ファイルのフォーマットを以下に示します。 localhost 30000 30002 30004 30006 30008 1 行目は IDE を実行するホスト名を示します。 その他の行は、ローレベルのライブラリがハイレベルの IDE と通信するポートまたは ソケットの番号を表します。IDE のインスタンスは、それぞれ異なるポートまたは ソケットに割り当てられます。IDE のインスタンス間の通信は全てユーザからは見え ません。 MPLAB X IDE のインスタンスは最大 5 つまでこのファイルを変更する必要はありま せん。5 つより多いインスタンスを使う場合、このファイルを編集する事でポート またはソケットの数を追加できます。 2.9.1.2 「mchpdefport」ファイルの位置 IDE の既定値のインストール内で、 「mchpdefport」ファイルはオペレーティング シス テムに応じて以下の場所に保存されます。 OS Windows (64 ビット ) Windows (32 ビット ) Linux Mac (OS X) 2016 Microchip Technology Inc. 場所 C:\Windows\system32 と C:\Windows\SysWOW64 (Note: 両方の「mchpdefport」を変更する必要があります。) C:\Windows\system32 /etc/.mplab_ide /etc/.mplab_ide DS50002027D_JP - p.41 MPLAB® X IDE ユーザガイド 2.9.2 IDE のインスタンスの呼び出し方 MPLAB X IDE では、各インスタンスが独自のユーザフォルダを持つ必要があります。 従って、あるインスタンスに対するプリファレンスの設定またはプラグインの追加は、 他のインスタンスには反映されません。 複数のインスタンスを使い分けるには、[–-userdir] オプションでフォルダを指定し て IDE を起動する必要があります。 2.9.2.1 Windows OS [–-userdir] オプションを使ってショートカットを作成します。例 : Windows 7 OS: 1. デスクトップで右クリックし、[ 新規作成 ] > [ ショートカット ] を選択します。 2. [ 参照 ] をクリックして、インストールした MPLAB X IDE の実行ファイルを指定 します ( 以下は既定値 )。 C:\Program Files (x86)\Microchip\MPLABX\vx.xx\mplab_ide\ bin\mplab_ide.exe (vx.xx は MPLAB X IDE のバージョンです。) 3. その行の末尾にユーザフォルダの場所を入力します。このタイプの MPLAB X IDE 情報の場合、既定値の場所の下にユーザ フォルダを置く事ができます。 --userdir "C:\Users\MyFiles\AppData\Roaming\.mplab_ide\ dev\anydir" または、任意の場所に置いてもかまいません。 --userdir anydir 4. [OK] をクリックします。 2.9.2.2 Linux OS インストールしたバージョンを、パラメータを何も指定せずに実行 ( デスクトップ アイ コンをクリックして実行 ) した場合、ユーザフォルダとして「$(HOME)/.mplab_ide」 を使います。ユーザフォルダを変更するには、シェルスクリプト 「$InstallationDir/mplab_ide/bin/mplab_ide」に引数 [--userid anydir] を指定して実行します。以下は、MPLAB X IDE を 2 つの異なるイ ンスタンスで実行する場合の例です。 $ /opt/microchip/mplabx/vx.xx/mplab_ide/bin/mplab_ide --userdir ~/.anydir1 & $ /opt/microchip/mplabx/vx.xx/mplab_ide/bin/mplab_ide --userdir ~/.anydir2 & (vx.xx は MPLAB X IDE のバージョンです ) ユーザ ID を埋め込んだデスクトップ アイコンを作成する事もできます。 2.9.2.3 Mac OS シェルウィンドウを開き、以下のコマンド行をタイプ入力して、インストールした MPLAB X IDE を別のユーザフォルダで実行します。このタイプの MPLAB X IDE 情報 の場合、既定値の場所の下にユーザフォルダを置く事ができます。 $/bin/sh /Applications/microchip/mplabx/vx.xx/mplab_ide.app/Contents/ Resources/mplab_ide/bin/mplab_ide --userdir "${HOME}/Library/ Application Support/mplab_ide/dev/anydir" または、任意の場所に置いてもかまいません。 $/bin/sh /Applications/microchip/mplabx/vx.xx/mplab_ide.app/Contents/ Resources/mplab_ide/bin/mplab_ide --userdir anydir DS50002027D_JP - p.42 2016 Microchip Technology Inc. 使用前の準備 2.10 IDE で複数のバージョンを使う方法 MPLAB X IDE v3.00 がリリースされる前は、異なるバージョンの MPLAB X IDE を インストールする場合、異なるフォルダにインストールする必要がありました。 MPLAB X IDE v3.00 からは、これは既定値で行われます。例を以下に示します。 C:\Program Files (x86)\Microchip\MPLABX\v3.00 複数のバージョンを同時に起動および実行できます。各バージョンは独自のユーザ フォルダを持ちます。 任意のバージョンの MPLAB X IDE と MPLAB IDE (v8 以前 ) を同一 PC 上で実行でき ます。しかし、セクション 2.3.2「Windows® XP/7/8 OS 用の USB ドライバのイン ストール」に記載した USB ハードウェア ドライバの制約に留意する必要があります。 2016 Microchip Technology Inc. DS50002027D_JP - p.43 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.44 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 3 章 チュートリアル 3.1 はじめに チュートリアルでは、例を示しながら MPLAB X IDE の使い方を説明します。 • ハードウェアとソフトウェアのセットアップ - チュートリアルで使うツール - インストールと設定 • プロジェクトの作成と設定 - 新規プロジェクトの作成 - プロジェクト作成後のデスクトップ画面 – [File] および [Navigation] ペイン - プロジェクト プロパティの表示と変更 - デバッガ / プログラマツール オプションを設定または変更する方法 - 言語ツールオプションを設定または変更する方法 - 言語ツールのパスの指定 - プロジェクトへの新規ファイルの追加 - プロジェクト作成後のデスクトップ画面 – [Editor] ペイン - コンフィグレーション ビット - プロジェクト作成後のデスクトップ画面 – [Task] ペイン • コードの実行とデバッグ - プロジェクトのビルド - コードの実行 - コードのデバッグ実行 - ブレークポイントによるプログラム実行の制御 - コードのステップ実行 - シンボル値の変化の観察 - デバイスメモリ ( コンフィグレーション ビットを含む ) の表示 - デバイスのプログラミング 2016 Microchip Technology Inc. DS50002027D_JP - p.45 MPLAB® X IDE ユーザガイド 3.2 ハードウェアとソフトウェアのセットアップ ここでは MPLAB X IDE を使い始める際の準備に関して説明します。 3.2.1 チュートリアルで使うツール チュートリアルでは下表の製品を使います。 ツール ウェブページ MPLAB® X IDE 注文番号 http://www.microchip.com/mplabx 無償 MPLAB XC32 C コンパイラ * http://www.microchip.com/xc SW006023-1 ( 標準 バージョン ) MPLAB® REAL ICE™ インサーキット エミュレータ http://www.microchip.com/realice DV244005 Explorer 16 開発ボード http://www.microchip.com/explorer16 DM240001 ® PIC32MX360F512L PIM http://www.microchipdirect.com/productsearch.aspx?Keywords=MA320001 MA320001 * このコンパイラの Free または Evaluation エディションは Microchip 社のウェブサイトからダウンロードできます。 コンパイラをダウンロードしてインストールする際は、ライセンス番号を入力しないでください。 3.2.2 インストールと設定 第 2 章「使用前の準備」に従って MPLAB X IDE をインストールし、エミュレータを セットアップし (USB ドライバをインストールしてターゲットに接続 )、32 ビット言語 ツールをインストールします。次に MPLAB X IDE を起動して、このチュートリアル を始めます。 DS50002027D_JP - p.46 2016 Microchip Technology Inc. チュートリアル 3.3 プロジェクトの作成と設定 ここでは MPLAB X IDE 内で、アプリケーション コード開発に必要となるプロジェクト を設定する方法を解説します。 3.3.1 新規プロジェクトの作成 MPLAB X IDE はプロジェクトを基本とするため、アプリケーションごとにプロジェ クトを作成する必要があります。 以下の操作のどちらかを実行してプロジェクトを新規作成します。 • [Start Page] の [Learn & Discover] タブで、[Dive In] の下の [Create New Project] を選択する • ウィンドウ上部のメニューバーから [File] > [New Project] をクリックする ( または <Ctrl>+<Shift>+<N>) [New Project] ウィザードが起動し、新規プロジェクトの作成を支援します。 STEP 1 Step 1 では、プロジェクト カテゴリを選びます。本チュートリアルでは [Microchip Embedded] を選びます。 次にプロジェクト タイプを選びます。本チュートリアルでは [Standalone Project] を 選びます。 [Next>] をクリックして次のダイアログへ進みます。 図 3-1: 2016 Microchip Technology Inc. プロジェクト ウィザード – プロジェクトの選択 DS50002027D_JP - p.47 MPLAB® X IDE ユーザガイド STEP 2 Step 2 では、デバイスを選びます。この例では PIC32MX360F512L です。デバイス を選択したら [Next>] をクリックします。 図 3-2: プロジェクト ウィザード – デバイスの選択 STEP 3 Step 3 は、選 択 し た デ バ イ ス で ヘ ッ ダ が 利 用 可 能 で あ る 場 合 に 表 示 さ れ ま す。 PIC32MX360F512L にはヘッダがないため、MPLAB X IDE は自動的にこのステップ をスキップします。 DS50002027D_JP - p.48 2016 Microchip Technology Inc. チュートリアル STEP 4 Step 4 ではツールを選択します。 選択したデバイスをサポートしているツールは、ツール名の左側の丸いマーク ( 信号灯 ) の色で識別できます。色を識別できない場合、マウスカーソルをマークの上に置くと、 サポートに関する情報を表示できます。 マーク 色 サポート 緑 完全サポート ( 実装と完全なテスト済み ) 黄 ベータ版サポート ( 実装済み、ただし完全なテスト は未完 ) 赤 未サポート ツールの中には 2 つのツール名の左に 2 つマークが表示されるものがあります。左側 のマークがマーク番号 1、その右隣のマークがマーク番号 2 です。 マーク番号 デバッグツール シミュレータ 1 デバッガのサポート コア ( 命令セット ) のサポート 2 プログラマのサポート 周辺モジュールのサポート ハードウェア ツール接続時、ツール名の下にシリアル番号 (SN) が表示されます。 これにより、同じハードウェア ツールを複数接続していても個別のツールを識別でき ます。 ツールを選択して [Next>] をクリックします。 図 3-3: 2016 Microchip Technology Inc. プロジェクト ウィザード – ツールの選択 DS50002027D_JP - p.49 MPLAB® X IDE ユーザガイド STEP 5 Step 5 は、ツールとして MPLAB REAL ICE インサーキット エミュレータを選んだ場合 のみ表示されます。 MPLAB REAL ICE インサーキット エミュレータを使う場合、プラグインボードを指定 できます。プラグインボードとはエミュレータのドライバボード スロットに挿入する 回路基板です。Explorer 16 ボードは標準通信ドライバボードまたは高速通信ドライバ ボードで動作するため、[Supported Plugin Board] は [None] のままにします。 ツールを選択して [Next>] をクリックします。 図 3-4: DS50002027D_JP - p.50 プロジェクト ウィザード – プラグインボードの選択 2016 Microchip Technology Inc. チュートリアル STEP 6 Step 6 では、言語ツール (C コンパイラまたはアセンブラ ) を選択します。ここでも、 コンパイラ名の左側のマーク ( 信号灯 ) の色で、選択したデバイスに対するサポート レベルを識別できます。マウスカーソルをマークの上に置くと、サポートに関する説 明を表示できます。 インストールされている各ツール名の右側に、バージョンとインストール先のパスも 表示されます。これにより、インストールされている複数の言語ツールから必要な ツールを選択できます。 ツールを選択して [Next>] をクリックします。 図 3-5: 2016 Microchip Technology Inc. プロジェクト ウィザード – 言語ツールの選択 DS50002027D_JP - p.51 MPLAB® X IDE ユーザガイド STEP 7 Step 7 では、プロジェクトの名前と保存場所、その他のプロジェクト設定を選択します。 プロジェクト名として「MyProject」と入力します。 既定値では、プロジェクトは以下のパスに保存されます。 • Windows XP – C:\Documents and Settings\UserName\MPLABXProject • Windows 7/8 – C:\Users\UserName\MPLABXProjects • Linux – /home/UserName/MPLABXProjects • Mac – /Users/UserName/MPLABXProjects [Project Location] の右にある [Browse...] ボタンをクリックすると上記以外のフォルダ を指定できます。 [Set as main project] を選択して、このプロジェクトをメイン プロジェクトに設定し ます。[Use project location as project folder] はチェックを外したままにします。 このチュートリアルは ISO-8859-1 (Latin 1) エンコードセットで作成されているため、 [Encoding] の設定を変更する必要はありません。 上記完了後に [Finish] をクリックすると、新規プロジェクトの作成が完了します。 図 3-6: DS50002027D_JP - p.52 プロジェクト ウィザード – プロジェクト名と保存先フォルダの選択 2016 Microchip Technology Inc. チュートリアル 3.3.2 プロジェクト作成後のデスクトップ画面 – [File] および [Navigation] ペイン プロジェクトの作成が完了すると、プロジェクト ツリーが [File] ペイン内の [Projects] ウィンドウに表示されます。プロジェクトの情報を表示する [Dashboard] ウィンドウ はその下の [Navigation] ペイン内に表示されます。 • [File] ペイン – 4 つのウィンドウを含みます。このチュートリアルでは、ファイル をカテゴリごとにグループ化したプロジェクト ツリーが表示される、[Projects] ウィンドウに注目します。 - [Projects] - [Files] - [Classes] および [Services] ウィンドウ ( 自動的には表示されません ) • [Navigation]ペイン – 選択中のファイルまたはプロジェクトに関する情報を表示し ます。プロジェクトについては、[Dashboard] に詳細な情報が表示されます。 図 3-7: MPLAB X IDE のデスクトップ [File] ペインでファイルをダブルクリックすると、そのファイルの内容が [Editor] ペイン に表示されます(セクション3.3.8 「プロジェクト作成後のデスクトップ画面 – [Editor] ペイン」参照 )。タブを閉じるには、[x] をクリックします。 [File] ペインの [Projects] ウィンドウ内でプロジェクト名を右クリックすると、コンテク スト メニューが開きます。プロジェクトのサブフォルダに対しても同様の操作が可能です。 2016 Microchip Technology Inc. DS50002027D_JP - p.53 MPLAB® X IDE ユーザガイド 3.3.3 プロジェクト プロパティの表示と変更 プロジェクト作成後は、[Project Properties] ダイアログを開いてプロパティを編集で きます。 このダイアログは以下のどちらかの方法で開く事ができます。 • [File] ウィンドウの [Projects] ウィンドウ内でプロジェクト名を右クリックし、 [Properties] を選択する • [File] ウィンドウの [Projects] ウィンドウ内でプロジェクト名を左クリックし、 メニューから [File] > [Project Properties] を選択する 開いたダイアログで、[Conf: [default]] カテゴリをクリックすると、プロジェクト コンフィグレーション ( デバイス、デバッガ / プログラマツール、言語ツール等 ) が 表示されます。前章までに説明したセットアップ手順に誤りがなければ、チュートリ アルでこれらのコンフィグレーションを変更する必要はありません。 [Apply] をクリックして、このダイアログの内容を適用します。 図 3-8: DS50002027D_JP - p.54 [Project Properties] ダイアログ 2016 Microchip Technology Inc. チュートリアル 3.3.4 デバッガ / プログラマツール オプションを設定または変更する方法 デバッガ / プログラマツール オプションを設定または変更する方法 [REAL ICE] をクリックして、セットアップ オプションを表示します。これらのオプ ションの意味は、エミュレータのマニュアルを参照してください。 このチュートリアルでは何も変更しないでおきます。 図 3-9: 2016 Microchip Technology Inc. ツールの設定ページ DS50002027D_JP - p.55 MPLAB® X IDE ユーザガイド 3.3.5 言語ツールオプションを設定または変更する方法 言語ツールオプションを設定または変更する方法 言語ツールをクリックして、設定オプションを表示させます。これらのオプションの 機能は、言語ツールの文書を参照してください。 このチュートリアルでは何も変更しないでおきます。 図 3-10: DS50002027D_JP - p.56 言語ツールの設定ページ 2016 Microchip Technology Inc. チュートリアル 3.3.6 言語ツールのパスの指定 MPLAB X IDE で利用できる言語ツールとそれらのパスを表示 / 変更する方法 • Mac OS X の場合 : メイン メニューバーから [mplab_ide] > [Preferences] > [Embedded] > [Build Tools] を選択してビルドツールにアクセスする • その他の OS の場合 : [Tools] > [Options] > [Embedded] > [Build Tools] を選択してビルドツールにアクセス する ウィンドウには、インストールされている全てのツールチェーンが自動的に表示され ます。インストール済みのツールが表示されない場合、以下を試します。 • [Scan for Build Tools] ボタン – 環境パスをスキャンし、PC にインストールされて いる言語ツールの一覧を表示します。 • [Add] ボタン – ツールの実行ファイルを格納したフォルダ ( ベースフォルダ ) への パスを入力する事により、手動でリストにツールを追加します。一般的に実行 ファイルは、ツールをインストールしたフォルダ内の「bin」サブフォルダに保存 されています。 同じコンパイラの複数のバージョンをインストールしている場合、リストからいずれ か 1 つのバージョンを選択します。 このチュートリアルでは XC32 ツールチェーンが選択されている事を確認します。 図 3-11: 2016 Microchip Technology Inc. 言語ツール ( コンパイラ ) のパス DS50002027D_JP - p.57 MPLAB® X IDE ユーザガイド 3.3.7 プロジェクトへの新規ファイルの追加 このチュートリアルでは、以下のコードを含む新規ファイルを作成します。 1. [Projects] ウィンドウ内のプロジェクト ツリーの Source Files フォルダの上で右 クリックし、[New] > [C Main File] を選択する。 2. [New C Main File] ウィンドウで、ファイル名として led_message.c を入力し [Finish] をクリックする ( すると、そのファイルは Source Files の下に表示され ます。また、タブにそのファイル名が付いたエディタ ウィンドウが表示されます )。 3. エディタ ウィンドウのコードを削除し、以下に示すコードをペーストする ( これは「PIC32 Explorer 16 LED サンプル アプリケーション」のコードです )。 Led_message.c: のコード : /********************************************************************* * * Message via 8 LEDs * ********************************************************************* * FileName: led_message.c * Dependencies: xc.h * * * Processor: PIC32 * * Complier: MPLAB XC32 v1.40 * MPLAB X IDE v3.05 * Company: Microchip Technology, Inc. * * Software License Agreement * * The software supplied herewith by Microchip Technology Incorporated * (the “Company”) for its PIC32 Microcontroller is intended * and supplied to you, the Company’s customer, for use solely and * exclusively on Microchip PIC32 Microcontroller products. * The software is owned by the Company and/or its supplier, and is * protected under applicable copyright laws.All rights are reserved. * Any use in violation of the foregoing restrictions may subject the * user to criminal sanctions under applicable laws, as well as to * civil liability for the breach of the terms and conditions of this * license. * * THIS SOFTWARE IS PROVIDED IN AN “AS IS” CONDITION.NO WARRANTIES, * WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED * TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A * PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.THE COMPANY SHALL NOT, * IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL OR * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. * * $Id: led_message.c 5898 2007-10-23 19:39:48Z rajbhartin $ * ********************************************************************/ /* ** Message in a bottle ** ** Explorer 16 version (long delays) ** ** Thanks to Lucio DiJasio for letting us use this example. ** DS50002027D_JP - p.58 2016 Microchip Technology Inc. チュートリアル ** Run this example on Explorer 16 board with a PIC32MX PIM. ** Hold the board vertically from the PICtail connector size ** and wave the board back-and-forth to see message "HELLO" on LEDs */ #include <xc.h> // // // // // // Config settings POSCMOD = HS, FNOSC = PRIPLL, FWDTEN = OFF PLLIDIV = DIV_2, PLLMUL = MUL_16 PBDIV = 8 (default) Main clock = 8MHz /2 * 16 = 64MHz Peripheral clock = 64MHz /8 = 8MHz // Configuration Bit settings // SYSCLK = 64 MHz (8MHz Crystal/ FPLLIDIV * FPLLMUL / FPLLODIV) // PBCLK = 8 MHz // Primary Osc w/PLL (XT+,HS+,EC+PLL) // WDT OFF // Other options are don't care // #pragma config FPLLMUL = MUL_16, FPLLIDIV = DIV_2, FPLLODIV = DIV_1, FWDTEN = OFF #pragma config POSCMOD = HS, FNOSC = PRIPLL, FPBDIV = DIV_8 // 1. define timing constant #define SHORT_DELAY (50*8) #define LONG_DELAY(400*8) // 2. declare and initialize an array with the message bitmap char bitmap[30] = { 0xff,// H 0x08, 0x08, 0xff, 0, 0, 0xff,// E 0x89, 0x89, 0x81, 0, 0, 0xff,// L 0x80, 0x80, 0x80, 0, 0, 0xff,// L 0x80, 0x80, 0x80, 0, 0, 0x7e,// O 0x81, 0x81, 2016 Microchip Technology Inc. DS50002027D_JP - p.59 MPLAB® X IDE ユーザガイド 0x7e, 0, 0 }; // 3. the main program main() { // disable JTAG port DDPCONbits.JTAGEN = 0; // 3.1 variable declarations int i; // i will serve as the index // 3.2 initialization TRISA = 0; // all PORTA as output T1CON = 0x8030; // TMR1 on, prescale 1:256 PB // 3.3 the main loop while( 1) { // 3.3.1 display loop, hand moving to the right for( i=0; i<30; i++) {// 3.3.1.1 update the LEDs PORTA = bitmap[i]; // 3.3.1.2 short pause TMR1 = 0; while ( TMR1 < SHORT_DELAY) { } } // for i // 3.3.2 long pause, hand moving back to the left PORTA = 0; // turn LEDs off TMR1 = 0; while ( TMR1 < LONG_DELAY) { } } // main loop } // main DS50002027D_JP - p.60 2016 Microchip Technology Inc. チュートリアル 3.3.8 プロジェクト作成後のデスクトップ画面 – [Editor] ペイン このファイルは、[File] ペインでプロジェクトの下に表示されると共に、[Editor] ペイン にこのファイルと同名のタブが開きます。 [Editor] ペイン – プロジェクト ファイルの内容を表示して編集します。ここには [Start Page] も表示されます。 図 3-12: MPLAB X IDE のデスクトップ – [File] および [Editor] ペイン 2016 Microchip Technology Inc. DS50002027D_JP - p.61 MPLAB® X IDE ユーザガイド 3.3.9 エディタの使い方 このサンプルコードを編集する必要はありません。しかし実際にコードを編集する場合、 NetBeans エディタを使います。エディタに関連する C コンパイラ情報は、NetBeans ヘ ル プ ト ピ ッ ク ([C/C++/Fortran Development] > [C/C++/Fortran Project Basics] > [Navigating and Editing C/C++/Fortran Source Files]) を参照してください。エディタ 機能の一覧は、第 7 章「エディタ」に記載しています。 エディタの各種機能は以下からアクセスします。 • [Edit] メニュー ( セクション 11.2.2「[Edit] メニュー」参照 ) • 各ファイルのエディタ ウィンドウの上にあるエディタ用ツールバー • ウィンドウ内で右クリックして開くコンテクスト メニュー 図 3-13: 3.3.10 エディタ用ツールバー コンフィグレーション ビット Microchip 社製デバイスには、正しく動作させるための設定が必要です。これには、 デバイスメモリの特殊な部分 ( コンフィグレーション メモリ ) に格納されているレジ スタ内のコンフィグレーション ビットを使います。コンフィグレーション ビットは コードで設定する必要があります。しかし、デバッグ セッションで [Configuration Bits] ウィンドウを使うと、コンフィグレーション ビットを一時的に変更できます ([Window] > [PIC Memory Views] > [Configuration Bits])。変更後、ウィンドウ内を右 クリックして [Generate Source Code to Output] を選ぶと、その設定をエクスポート できます。コードが [Output] ウィンドウにエクスポートされますので、これをアプリ ケーション コードにコピーできます。 このサンプルコードでは、コンフィグレーション ビットを設定済みです。実際のコード 作成では、自分でコンフィグレーション ビットを設定する必要があります。 各種デバイスのコンフィグレーション ビットの設定に関するまとめは、本書の補遺 A 「コンフィグレーション設定のまとめ」に記載しています。 DS50002027D_JP - p.62 2016 Microchip Technology Inc. チュートリアル 3.3.11 プロジェクト作成後のデスクトップ画面 – [Task] ペイン [PIC Memory Views] で [Configuration Bits] 等のウィンドウを開いた場合、[Task] ペイン内 に表示されます。 [Task] ペイン – アプリケーションのビルド、デバッグ、実行からのタスク出力を表示 します。 図 3-14: MPLAB X IDE のデスクトップ – [Task] ペイン 2016 Microchip Technology Inc. DS50002027D_JP - p.63 MPLAB® X IDE ユーザガイド 3.4 コードの実行とデバッグ ここではコードを実行またはデバッグする際のMPLAB X IDEの使い方を検討します。 3.4.1 プロジェクトのビルド MPLAB X IDE では、実行またはデバッグの前にプロジェクトをビルドしておく必要 はありません。ビルドは、実行とデバッグの一部として処理されます。しかし、開発 の初期段階または既存プロジェクトの大幅変更時には、プロジェクトを実行または デバッグする前に、プロジェクトのビルドを確認する場合もあります。 プロジェクトのビルド方法 • [Projects] ウィンドウのプロジェクト名を右クリックして [Build] を選択するか、 [Clean and Build] を選択して中間ファイルを削除してからビルドする • ツールバーの [Build Project] または [Clean and Build Project] アイコンをクリックする [Build] アイコン [Clean and Build] アイコン ビルドの進捗状況は [Task] ペイン内の [Output] ウィンドウに表示されます。本チュー トリアルのコードは問題なくビルドされるはずです。 図 3-15: ビルドに成功した場合の出力 チェックサム情報の表示方法 ビルド後のチェックサムは [Dashboard] ウィンドウに表示されます。このウィンドウ が開いていない場合、[Window] > [Dashboard] を選択して開きます。 DS50002027D_JP - p.64 2016 Microchip Technology Inc. チュートリアル 3.4.2 コードの実行 コードのビルドに成功すれば、アプリケーションを実行できます。プログラムを実行 するには、[Make and Program Device Project] アイコンをクリックするか [Run] > [Run Project] を選択します。 [Make and Program Device Project] アイコン プログラムを実行すると、デモボード上のランプが点滅します。ボードを左右に振る と「Hello」という文字が浮かび上がります。 実行の進捗状況も [Output] ウィンドウに表示されます。 [Hold in Reset] ボタンを使うと、デバイスをリセットと実行の間で交互に切り換え る事ができます。 [Hold in Reset] アイコン [Run Project] アイコンをツールバーに追加する事も可能です ([View] > [Toolbars] > [Customize])。 [Run] アイコン 3.4.3 コードのデバッグ実行 本チュートリアルで使うコードの動作はテスト済みです。しかし、アプリケーション を開発する場合、コードをデバッグする必要があります。 チュートリアルのコードをデバッグ実行するには、[Debug Project] アイコンをクリック するか、[Debug] > [Debug Project] または [Debug] > [Step Into] を選択して、デバッグ セッションを始めます。 [Debug Run] アイコン デバッグ実行の進捗状況は [Output] ウィンドウに表示されます。 アプリケーション コードの実行を一時停止する方法 [Pause] アイコンをクリックするか、[Debug] > [Pause] を選択すると、プログラムの 実行が一時停止する。 コードの実行を再開する方法 [Continue] アイコンをクリックするか、[Debug] > [Continue] を選択すると、プログラム の実行が再開する。 コードの実行を終了する方法 [Finish] アイコンをクリックするか、[Debug] > [Finish Debugger Session] を選択すると、 プログラムの実行が終了する。 C コ ー ド プ ロ ジ ェ ク ト の デ バ ッ グ に 関 す る 詳 細 は NetBeans ヘ ル プ ト ピ ッ ク ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications with gdb]) を 参照してください。 通常の実行とデバッグ実行の違いは、セクション 3.4.4「ブレークポイントによるプロ グラム実行の制御」以降で説明します。 2016 Microchip Technology Inc. DS50002027D_JP - p.65 MPLAB® X IDE ユーザガイド 3.4.4 ブレークポイントによるプログラム実行の制御 コードをデバッグする際に、コードの特定位置で実行を一時停止して、変数値を調べ る事ができると便利です。そのためにブレークポイントを使います。 例として、コードの以下の行にブレークポイントを設定します。 PORTA = bitmap[i]; 以下のどちらかの方法により、コード行にブレークポイントを設定できます。 • ソースエディタで左側の余白をクリックする • <Ctrl>+<F8> を押す 図 3-16: コードのブレークポイントの設定 ブレークポイントを設定した後に、チュートリアルのプログラムを再度デバッグ実行 すると、プログラムはブレークポイントの位置で一時停止します。bitmap[] 変数の 上にマウスカーソルを置くと、その値が表示されます。 図 3-17: DS50002027D_JP - p.66 ブレークポイントで一時停止したプログラム 2016 Microchip Technology Inc. チュートリアル 以下のどちらかの方法により、設定したブレークポイントをクリアできます。 • ブレークポイント設定の時と同じ操作を繰り返す • [Debug] > [Toggle Breakpoint] を選択する ブレークポイントの詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications with gdb] > [Setting C/C++/Fortran Breakpoints]) を参照してください。 3.4.5 コードのステップ実行 [Debug] メニューと [Debug] ツールバーのステップ実行機能を使うと、コードの先頭 またはブレークポイントでの停止状態からコードをステップ実行できます。これにより、 変数値の変化を観察 ( 次セクション参照 )、プログラムフローが正しいかどうかを判断 できます。 コードのステップ実行は、以下の方法で行えます。 • Step Over – プログラムのソースを 1 行実行します。その行が関数コールである場合、 呼び出した関数全体を実行した後に停止します。 • Step Into – プログラムのソースを 1 行実行します。その行が関数コールである場合、 呼び出した関数の先頭の命令文を実行した後に停止します。 • Step Out - プログラムのソースを 1 行実行します。関数をステップ実行中である場合、 関数の残りを全て実行した後に、呼び出し元のルーチンに戻って停止します。 • Run to Cursor - プロジェクトをカーソル位置まで実行して、停止します。 ステップ実行の詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications with gdb] > [C/C++/Fortran Debugging Sessions] > [Stepping Through Your C/C++/Fortran Program]) を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.67 MPLAB® X IDE ユーザガイド 3.4.6 シンボル値の変化の観察 選択したシンボルの値の変化を [Watches] ウィンドウで観察します。これらの値が プログラム実行中に予測通りに変化するか確認する事により、コードのデバッグに 役立てる事ができます。 ウォッチの新規作成方法 1. [Debug] > [New Watch] を選択する。[New Watch] ダイアログ ( 以下を参照 ) が開く。 2. ウォッチ式 ( この例では「PORTA」) を入力し、[OK] をクリックする。デスクトップ に [Watches] ウィンドウが開き、指定したシンボルが表示される。 または 1. コード内の PORTA を右クリックし、[New Watch] を選択する。 2. PORTA が含まれた [Watches] ウィンドウが開く。 または 1. [Window] > [Debugging] > [Watches] を選択する。 2. エディタ ウィンドウから [Watches] ウィンドウに PORTA をドラッグ & ドロップ する。 図 3-18: [Watches] ウィンドウに表示されたシンボル シンボル値の変化を観察する方法 1. プログラムをデバッグ実行し、一時停止する。 2. [Watches] タブをクリックしてウィンドウを開くと、シンボル値が表示される ( 変化 した値は赤字で示されます )。 ウォッチの詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications with gdb] > [Viewing C/C++/Fortran Program Information] > [Creating a C/C++/Fortran Watch]) を 参照してください。 DS50002027D_JP - p.68 2016 Microchip Technology Inc. チュートリアル 3.4.7 デバイスメモリ ( コンフィグレーション ビットを含む ) の表示 MPLAB X IDE は柔軟で簡潔な [Memory] ウィンドウを備えています。このウィンドウ には、デバッグ中に各種タイプのデバイスメモリの内容を表示できます。[Memory] ウィンドウでは、メモリのタイプとメモリのフォーマットをドロップダウン ボックス で選択します。 まずフラッシュメモリを表示します。 1. [Window] > [PIC Memory Views] > [Execution Memory] を選択する。 2. [Execution Memory] ウィンドウが開き、直前の一時停止位置が表示される。 図 3-19: [Memory] ウィンドウの内容 以下の方法により、[Memory] ウィンドウの表示を変更できます。 • [Window] > [PIC Memory Views] を選択してリストを開き、そこで別のウィンドウ を選択する • ウィンドウ上でドロップダウン [Memory] メニューを使う [Memory] ウィンドウのオプションを設定する方法 [Memory] ウィンドウ内で右クリックすると、各種オプション ( 表示オプション、メモリ の書き込み、テーブルのインポート / エクスポート、ファイルへの出力等 ) を含む コンテ クスト メ ニューが 開きます。このメニ ューの 詳細はセ クション 12.9.13 「[Memory] ウィンドウのメニュー」を参照してください。 [Flash Memory] ウィンドウは、以下の方法で更新できます。 1. プログラムを一時停止する ( デバッガのセッションを終了する )。 2. [Read Device Memory] アイコンをクリックする。 [Read Device Memory] アイコン 2016 Microchip Technology Inc. DS50002027D_JP - p.69 MPLAB® X IDE ユーザガイド 3.4.8 デバイスのプログラミング コードのデバッグ後は、そのコードをターゲット デバイスにプログラミングします。 まず、[Project Properties] ウィンドウでプログラミング オプションを確認します。本 チュートリアルではオプションは変更しません。 次に、以下の 2 つの方法のどちらかでデバイスをプログラミングします。 • [Run] をクリックする : プロジェクトがビルドされ ( 必要な場合のみ )、デバイスが プログラミングされます。プログラミングが完了すると、即座にプログラムの実行 が始まります。 • [Make and Program Device] をクリックする : プロジェクトがビルドされ ( 必要な 場合のみ )、デバイスがプログラミングされます。プログラミングが完了すると、 即座にプログラムの実行が始まります。プログラム端子がアプリケーション使われ る場合、ターゲットボードからハードウェア ツールを取り外してリセットします。 その他のプログラミング関連の機能 : • [Hold in Reset]: デバイスをリセットと実行の間で交互に切り換えます。 • [Read Device Memory]: ターゲット デバイスのメモリの内容を MPLAB X IDE に転 送します。 プログラミング関連のアイコンには以下のようなものがあります。 [Run] アイコン [Hold in Reset] アイコン [Make and Program Device] アイコン [Read Device Memory] アイコン Note: DS50002027D_JP - p.70 MPLAB X IDE は、全てのプログラミング機能を備えている訳ではありま せん。その他のプログラミング機能のサポートについては、MPLAB X IDE に付属してインストールされる MPLAB IPE を参照してください。 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 4 章 基本作業 4.1 MPLAB X IDE プロジェクトの作業手順 MPLAB X IDE におけるプロジェクトの作業手順は以下の通りです。 準備 プロジェクトの作成と ビルド 1. MPLAB X IDE をインストールし、ハードウェア ツールをセットアップし (USB ドライバをインストールしてターゲットを正しく接続し )、選択した デバイス向けの言語ツールをインストールする。次に MPLAB X IDE を起動 して、チュートリアルを始める ( 使用前の準備 )。 1. [New Project] ウィザードを使って新しいプロジェクトを作成する ( 新規プロ ジェクトの作成 )。デスクトップ表示に切り換わる ( プロジェクト作成後の デスクトップ ペイン )。 2. [Project Properties] ダイアログでプロジェクトのプロパティを確認または編集 する ( プロジェクト プロパティの表示と変更 )。同じダイアログでデバッガ、 プログラマ、言語ツールも設定する ( デバッガ / プログラマツール オプション をセットアップまたは変更する方法、言語ツールオプションを設定または変 更する方法 )。 3. [Options] ダイアログ ([Tools] > [Options]) で、言語ツールのパスと、追加の ツールオプションを設定する ( 言語ツールのパスの指定、その他のツール オプションの設定 )。 4. ファイルを新規作成してプロジェクトに追加します ( ファイルの新規作成 )。 または、既存のファイルをプロジェクトに追加する ( 既存ファイルのプロ ジェクトへの追加 )。追加したファイルは [File] ウィンドウに表示され、 エディタを使ってアプリケーション コードを入力または編集できる。 5. エディタの機能については「エディタの使い方」を参照してください。 6. ライブラリ、オブジェクト ファイルを追加および設定する ( ライブラリや オブジェクト ファイルの追加と設定 )。 7. 各ファイルまたはフォルダ全体のプロパティ ( ビルドに含めるかどうか ) を 設定する ( ファイルおよびフォルダ プロパティの設定 )。 8. プロジェクトのコンフィグレーション タイプ、ビルド前後のステップ、 ユーザ ID としてのチェックサムの使用、ビルド完了時の代替 HEX ファイルの 読み込みに関するビルドプロパティを設定する ( ビルドプロパティの設定 )。 9. プロジェクトのビルド 1. [Run] メニューを使ってコードを実行する ( コードの実行 )。 2. [Debug]メニューを使ってコードをデバッグ実行する(コードのデバッグ実行)。 コードの実行 コードのデバッグ 1. ブレークポイントは、エディタ内で行を選択して設定するか、[Breakpoint] ウィンドウを使って設定する(ブレークポイントによるプログラム実行の制御)。 2. コードをステップ実行する ( コードのステップ実行 )。 3. [Watches] および [Variables] ウィンドウでシンボルと変数の値の変化を観察 する ( シンボル値の変化の観察 )。 4. デバイスメモリ ( コンフィグレーション ビットを含む ) を表示または変更する。 メモリタイプはデバイスによって異なる ( デバイスメモリ ( コンフィグレー ション ビットを含む ) の表示 / 変更 )。 1. ツールバーボタンを使ってデバイスをプログラミングする ( デバイスのプロ グラミング )。 デバイスのプログラミング 2016 Microchip Technology Inc. DS50002027D_JP - p.71 MPLAB® X IDE ユーザガイド 4.2 新規プロジェクトの作成 MPLAB X IDE はプロジェクトを基本とするため、アプリケーションごとにプロジェ クトを作成する必要があります。 プロジェクトは以下のどちらかの方法で作成できます。 • [Start Page] の [Learn & Discover] タブで、 「Dive In」の下の [Create New Project] を選択する • [File] > [New Project] を選択する ( または <Ctrl>+<Shift>+<N>) [New Project] ウィザードが起動し、新規プロジェクトの作成を支援します。 4.2.1 Step 1: Choose Project Step 1 では、プロジェクト カテゴリを選びます。ほとんどの場合、以下を含む [Microchip Embedded] のプロジェクト タイプを選択します。 以下のオプションを使ってプロジェクト カテゴリを選択できます。 • Standalone Project – 新しいプロジェクト (C 言語またはアセンブリコード ) を作成 します。本セクションでは、このプロジェクト タイプを解説します。 • Existing MPLAB IDE v8 Project – 既存の MPLAB IDE v8 用プロジェクトを MPLAB X IDE 用に変換します。詳細はセクション 5.2「レガシー MPLAB プロジェクトの インポート」を参照してください。 • Prebuilt (Hex, Loadable Image) Project – 既存のプロジェクト イメージを MPLAB X IDE に読み込みます。詳細はセクション 5.3「プリビルド プロジェクト」を参照し てください。 • User Makefile Project – 外部 make ファイルを使うプロジェクトを作成します。詳 細はセクション 6.5「ユーザ Makefile プロジェクトの作成」を参照してください。 • Library Project – 実行用 HEX ファイルではなくライブラリをビルドする新しいプロ ジェクト (C 言語および / またはアセンブリコード ) を作成します。詳細はセクション 5.6「ライブラリ プロジェクト」を参照してください。 その他に以下を選択できます。 • その他の組み込みプロジェクト - 他ベンダーのプロジェクトを基にプロジェクトを 新規作成します。 • サンプル プロジェクト - 各種デバイスファミリ向けの既製のプロジェクトやプロ ジェクト テンプレートを選ぶ事ができます。 項目を選択したら、[Next>] をクリックして次のダイアログへ進みます。 DS50002027D_JP - p.72 2016 Microchip Technology Inc. 基本作業 図 4-1: 2016 Microchip Technology Inc. プロジェクト ウィザード – プロジェクトの選択 DS50002027D_JP - p.73 MPLAB® X IDE ユーザガイド 4.2.2 Step 2: Select Device Step 2 では、アプリケーションで使う予定のデバイスを [Device] ドロップダウン リストから選択します。選択肢を絞り込むために、最初にデバイスファミリを選択し ます。 LF デバイスの場合、デバイスに「F」タイプより低い電圧 (5.0 V ではなく 3.3 V (typ.)) を供給するように設定する必要があります。今の設定では過電圧でデバイスを損傷し てしまう場合、MPLAB X IDE は警告ダイアログを表示して注意を喚起します。 [Next>] をクリックします。 図 4-2: DS50002027D_JP - p.74 プロジェクト ウィザード – デバイスの選択 2016 Microchip Technology Inc. 基本作業 4.2.3 Step 3: Select Header Step 3 は、選択したデバイスでヘッダが利用可能である場合に表示されます。デバイス がヘッダを必要とするか、またはデバッグ回路を内蔵しているかどうかは、以下のど ちらかの文書 (PDF またはオンラインヘルプ バージョン ) で確認できます。 •『Processor Extension Pak and Debug Header Specification』(DS51292) •『エミュレーション拡張パック (EEP) およびエミュレーション ヘッダ ユーザガイド』 (DS50002243) 上記を確認してからヘッダを使うかどうかを選択します。選択したら [Next>] を クリックします。 Note: 図 4-3: 2016 Microchip Technology Inc. ヘッダは [Project Properties] ウィンドウを使って、後で選択する事もでき ます ( ヘッダが使える場合 )。 プロジェクト ウィザード – ヘッダの選択 DS50002027D_JP - p.75 MPLAB® X IDE ユーザガイド 4.2.4 Step 4: Select Tool Step 4 ではツールを選択します。 選択したデバイスをサポートしているツールは、ツール名の左側の丸いマーク ( 信号灯 ) の色で識別できます。色を識別できない場合、マウスカーソルをマークの上に置くと、 サポートに関する情報を表示できます。 マーク 色 サポート 緑 完全サポート ( 実装と完全なテスト済み ) 黄 ベータ版サポート ( 実装済み、ただし完全なテストは未完 ) 赤 未サポート ツールの中には 2 つのツール名の左に 2 つマークが表示されるものがあります。左側 のマークがマーク番号 1、その右隣のマークがマーク番号 2 です。 マーク番号 デバッグツール シミュレータ 1 デバッガのサポート コア ( 命令セット ) のサポート 2 プログラマのサポート 周辺モジュールのサポート ハードウェア ツール接続時、ツール名の下にシリアル番号 (SN) が表示されます。これ により、同じハードウェア ツールを複数接続していても個別のツールを識別できます。 お使いのサードパーティ製ハードウェア ツールがここに表示されない場合、そのツール が適切にインストールされているかどうか確認します。詳細はセクション 6.7「サー ドパーティ製ハードウェア ツール」を参照してください。 ツールを選択して [Next>] をクリックします。 図 4-4: DS50002027D_JP - p.76 プロジェクト ウィザード – ツールの選択 2016 Microchip Technology Inc. 基本作業 4.2.5 Step 5: Select Plug-In Board Step 5 ではプラグインボードを選択します。 MPLAB REAL ICE インサーキット エミュレータを使う場合、プラグインボードを指定 できます。プラグインボードとはエミュレータのドライバボード スロットに挿入する 回路基板です。 表 4-1: エミュレータ プラグインボード 「Supported Plugin Board」 ボードの説明 None 標準通信ドライバボード None 高速通信ドライバボード JTAG Driver Board JTAG アダプタボード Power Monitor Board 電源モニタボード ( ロジックプローブ コネクタにも挿入する必要 があります ) ツールを選択して [Next>] をクリックします。 図 4-5: 2016 Microchip Technology Inc. プロジェクト ウィザード – プラグインボードの選択 DS50002027D_JP - p.77 MPLAB® X IDE ユーザガイド 4.2.6 Step 6: Select Compiler Step 6 では、言語ツール (C コンパイラまたはアセンブラ ) を選択します。ここでも、 コンパイラ名の左側のマーク ( 信号灯 ) の色で、選択したデバイスに対するサポート レベルを識別できます。マウスカーソルをマークの上に置くと、サポートに関する説 明を表示できます。 ここに必要な言語ツールが表示されない場合、またはサポートツールが 1 つも表示さ れない場合、ツールがインストール済みであるかどうか確認します。次に、[Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択し、[Embedded] ボタンをクリックし、[Build Tools] タブを確認して、MPLAB X IDE がツールを認識 するようにしてください。[Build Tools] タブにツールが表示されている場合、選択し たデバイスがそのツールによってサポートされていない可能性があります。そのデバ イスをサポートする他の言語ツールを選ぶかインストールする必要があります。 現行の言語ツールは新規デバイスをサポートします。レガシーツールは新規デバイス をサポートしません。 表 4-2: Microchip 社製言語ツール – 現行 ツールチェーン サポートする デバイス 正式名 XC8 MPLAB XC8 C Compiler 8 ビット XC16 MPLAB XC16 C Compiler 16 ビット XC32 MPLAB XC32 C Compiler 32 ビット MPASM MPASM Assembler, MPLINK Object Linker and Utilities 8 ビット 表 4-3: Microchip 社製言語ツール – レガシー ツールチェーン 正式名 8 ビットデバイス向け言語ツール C18* MPLAB C Compiler for PIC18 MCUs HI-TECH PICC HI-TECH C Compiler for PIC10/12/16 MCUs HI-TECH PICC18 HI-TECH C Compiler for PIC18 MCUs 16 ビットデバイス向け言語ツール ASM30** MPLAB Assembler, Object Linker and Utilities for PIC24 MCUs and dsPIC DSCs C30 MPLAB C Compiler for PIC24 MCUs and dsPIC DSCs C24 MPLAB C Compiler for PIC24 MCUs (C30 のサブセット ) dsPIC MPLAB C Compiler for dsPIC DSCs (C30 のサブセット ) HI-TECH C Compiler for PIC24 MCUs and dsPIC DSCs HI-TECH DSPICC 32 ビットデバイス向け言語ツール C32 MPLAB C Compiler for PIC32 MCUs HI-TECH PICC32 HI-TECH C Compiler for PIC32 MCUs * ほとんどのコンパイラには、アセンブラ、リンカ、ユーティリティが付属しています。 しかし、MPLAB C18 は MPASM ツールチェーンでサポートされています。 ** MPLAB X IDE の v1.30 以降には付属していません。16 ビットコンパイラに付属するアセン ブラをお使いください。 各言語ツールの詳細はそれぞれの文書を参照してください。 サードパーティ製言語ツールチェーン (CCS 等 ) については、[Start Page] の「Release Notes and Support Documentaion」より [Readme for Third Party Tools.htm] ファイルを 参照してください。 DS50002027D_JP - p.78 2016 Microchip Technology Inc. 基本作業 ツールを選択して [Next>] をクリックします。 図 4-6: 2016 Microchip Technology Inc. プロジェクト ウィザード – 言語ツールの選択 DS50002027D_JP - p.79 MPLAB® X IDE ユーザガイド 4.2.7 Step 7: Select Project Name and Folder Step 7 では、プロジェクトの名前と保存場所、その他のプロジェクト設定を選択します。 [Finish] をクリックすると、新規プロジェクトの作成が完了します。 プロジェクト名、保存場所、フォルダ プロジェクト名を入力します。既定値では、名前の後ろに .X が付加されます。これ は必須ではなく、便宜的なものです。不要なら [Project Folder] テキストボックスで削 除できます。 フォルダの場所を参照します。必要に応じてプロジェクト フォルダを新規作成する事 もできます。既定値では、プロジェクトは以下のパスに保存されます。 • Windows XP – C:\Documents and Settings\UserName\MPLABXProject • Windows 7/8 – C:\Users\UserName\MPLABXProjects • Linux – /home/UserName/MPLABXProjects • Mac – /Users/UserName/MPLABXProjects しかし、既定値以外のパスを選択する事もできます。 メイン プロジェクト [Set as main project] を選択して、このプロジェクトをメイン プロジェクトに設定し ます。 プロジェクトの保存場所、フォルダ [Use project location as project folder] にチェックを入れて、プロジェクトの格納場所 と同じフォルダ内にプロジェクトを作成します。 これは、MPLAB IDE v8 プロジェクトをインポートする際、MPLAB X IDE のプロジェ クトを同じフォルダにする場合 ( ビルドも同様にする場合 ) に便利です。 MPLAB IDE v8 が .mcp ファイルを使ってプロジェクト情報を保存するのに対し、 MPLAB X IDE はフォルダを使います。従って、MPLAB IDE v8 プロジェクト (.mcp ファイル ) とフォルダを共有させる事ができる MPLAB X IDE プロジェクトは 1 つだ けです。 エンコード プロジェクトのエンコードを選択します。既定値の文字セットは ISO-8859-1 (Latin 1) です。 この 選 択に よっ て、コ ード 構 文の 色分 け設 定 が決 まり ます。色分 けは [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択し、[Fonts and Colors] ボタンをクリックして、[Syntax] タブより編集できます。 DS50002027D_JP - p.80 2016 Microchip Technology Inc. 基本作業 図 4-7: 4.2.8 プロジェクト ウィザード – プロジェクト名と保存先フォルダの選択 プロジェクト コンフィグレーション タイプの変更 コンフィグレーション タイプを変更する事でスタンドアロン ( アプリケーション ) プロジェクトをライブラリ プロジェクトに変更できます。詳細はセクション 4.14.1 「プロジェクト コンフィグレーション タイプの変更」を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.81 MPLAB® X IDE ユーザガイド 4.3 プロジェクト作成後のデスクトップ ペイン プロジェクトの作成が完了すると、プロジェクト ツリーが [File] ペイン内の [Projects] ウィンドウに表示されます。プロジェクトの情報を表示する [Dashboard] ウィンドウ も [Navigation] ペイン内に表示されます。後述のようにプロジェクトにファイルを 追加すると、[Editor] ペイン内のエディタ ウィンドウにファイルの内容が開きます。 デバッグおよびメモリ ウィンドウは [Task] ペイン内に表示されます。 • [File] ペイン – ファイルに関連する 4 つのタブを表示します。 - [Projects] ウィンドウには、ファイルがカテゴリごとにグループ分けされたプロ ジェクト ツリーが表示されます。 - [Files] ウィンドウには、コンピュータ上のフォルダ構成に従って、プロジェクト ファイルが表示されます。 - [Classes] ウィンドウには、コード内の全てのクラスと、それらの関数、変数、定数 が表示されます。その宣言部分を見るには、項目をダブルクリックします。 - [Services] ウィンドウには、コード開発に使えるサービスが表示されます。 • [Navigator] ペイン – [File] ペインで選択されているファイル内のシンボルと変数に 関する情報を表示します。 • [Editor] ペイン – プロジェクト ファイルの内容を表示して編集します。ここには [Start Page] と [MPLAB X Store] も表示されます。 • [Task] ペイン – アプリケーションのビルド、デバッグ、実行からのタスク出力を 表示します。 図 4-8: MPLAB X IDE のデスクトップ DS50002027D_JP - p.82 2016 Microchip Technology Inc. 基本作業 [File] ペインでファイルをダブルクリックすると、そのファイルの内容が [Editor] ペイン に表示されます。タブを閉じるには、[x] をクリックします。 [File] ペインの [Projects] ウィンドウ内でプロジェクト名を右クリックすると、コンテ クスト メニューが開きます。プロジェクトのサブフォルダに対しても同様の操作が可能 です。 4.4 プロジェクト プロパティの表示と変更 プロジェクト作成後は、[Project Properties] ダイアログを開いてプロパティを編集で きます。このダイアログは以下のどちらかの方法で開く事ができます。 • [File] ペインの [Projects] ウィンドウ内でプロジェクト名を右クリックし、 [Properties] を選択する • [File] ペインの [Projects] ウィンドウ内でプロジェクト名を左クリックし、メニュー から [File] > [Project Properties] を選択する 開いたダイアログで、[Conf: [default]] カテゴリをクリックすると、プロジェクト コンフィグレーション ( デバイス、デバッガ / プログラマツール、言語ツール等 ) が 表示されます。これらの項目を変更するには、セクション 4.2「新規プロジェクトの 作成」の Step 4 および 5 を参照してください。 図 4-9: 2016 Microchip Technology Inc. [Project Properties] ダイアログ DS50002027D_JP - p.83 MPLAB® X IDE ユーザガイド 4.5 デバッガ / プログラマツール オプションをセットアップまたは変更する方法 [Project Properties] ウィンドウでは、ツールのオプションも設定します。 ハードウェア ツールまたはシミュレータ (Conf: [default] の下 ) をクリックして、関連 するオプション メニューを表示させます。これらのオプションの意味は、各ツールの 文書を参照してください。 図 4-10: DS50002027D_JP - p.84 ツールの設定ページ 2016 Microchip Technology Inc. 基本作業 4.6 言語ツールオプションを設定または変更する方法 [Project Properties] ウィンドウの言語ツールをクリックして、設定オプションを表示 させます。これらのオプションの意味については、言語ツールの文書を参照してくだ さい。 その他のヘルプについては、NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Working with C/C++/Fortran Projects] > [Setting Project Properties]) を参照してくだ さい。 図 4-11: 4.6.0.1 言語ツールの設定ページ IDE オプションとコマンドライン オプション IDE に入力するオプションは、コマンドラインで入力するオプションとフォーマット が異なる場合があります。[Option Description] タブのオプション名をクリックする とオプションの詳細が表示されます。また、オプションデータを入力または選択して から、[Generated Command Line] タブをクリックして内容を表示させ、オプション で生成されたコマンドライン コードが正しい事を確認します。 4.6.0.2 グローバル オプション グローバル オプションを設定すると、言語ツールスイート内の全ての言語ツールに適用 されます。また、[User Comments] タブを使うと特定のオプションを選択した理由 を入力できます。 2016 Microchip Technology Inc. DS50002027D_JP - p.85 MPLAB® X IDE ユーザガイド 4.7 言語ツールのパスの指定 MPLAB X IDE で利用できる言語ツールとそれらのパスを表示 / 変更するには、以下 の手順に従います。 • Mac OS X の場合 : メイン メニューバーから [mplab_ide] > [Preferences] > [Embedded] > [Build Tools] を選択してビルドツール にアクセスする • その他の OS の場合 : [Tools] > [Options] > [Embedded] > [Build Tools] を選択してビルドツールにアクセスする ウィンドウには、インストールされている全てのツールチェーンが自動的に表示されます。 図 4-12: 4.7.1 言語ツール ( コンパイラ ) のパス ツールチェーンの追加または変更 [Toolchain] 欄にインストール済みのツールが表示されない場合、以下を試します。 • [Scan for Build Tools] ボタン – 環境パスをスキャンし、PC にインストールされて いる言語ツールの一覧を表示します。 • [Add] ボタン – ツールの実行ファイルを格納したフォルダ ( ベースフォルダ ) への パスを入力する事により、手動でリストにツールを追加します。一般的に、実行 ファイルは、ツールをインストールしたフォルダ内の「bin」サブフォルダに保存 されています。 同じコンパイラの複数のバージョンをインストールしている場合、リストからいずれか 1 つのバージョンを選択します。 ツールのパスを変更するには、新しいパスを手入力するか、[...] ボタンをクリックして 選択します。 DS50002027D_JP - p.86 2016 Microchip Technology Inc. 基本作業 4.7.2 ツールチェーンの削除 既存のツールチェーンを削除するには、以下の手順に従います。 1. リストからツールチェーンをクリックして選択する。 2. [Remove] ボタンをクリックする。 この操作では、コンパイラは PC からアンインストールされません。MPLAB X IDE が このコンパイラを認識しなくなるだけです。ツールチェーンを元に戻すにはセクション 4.7.1「ツールチェーンの追加または変更」を参照してください。 コンパイラを PC からアンインストールする場合、上記のように MPLAB X IDE 内の コンパイラの参照を最初に削除します。その後、コンパイラをアンインストールします。 コンパイラを先にアンインストールし、MPLAB X IDE を起動した場合、ツールチェーン パスが赤で表示されます。このアンインストール済みコンパイラへの参照を削除する には、既述の手順で行います。 4.7.3 ツールチェーン パス MPLAB X IDE は、既定値のインストールパスと PATH 環境変数でツールチェーンを 検索します。Windows 64 ビット OS における MPLAB XC16 の既定値のパスの例を 以下に示します。 C:\Program Files (x86)\Microchip\xc16\vx.xx\bin コンパイラをインストールする際、インストール先を選択できます。以下のどちらか を行う事ができます。 • 既定値の場所またはそれ以外の場所にインストールする または • PATH にインストール場所を追加する 既定値以外の場所にインストールする場合、その場所を PATH に追加する必要があり ます。 PATH に新規の場所を追加しない場合、MPLAB X IDE でコンパイラの場所を指定でき ます([Tools] > [Options]で[Build Tools]タブを開き、[Embedded]ボタンをクリック)。 最後に、インストール場所を PATH 変数に手動で追加できます。 MPLAB X IDE がツールチェーンを認識しているにもかかわらずパスが見つからない 場合、そのパスは赤の文字で表示されます。 2016 Microchip Technology Inc. DS50002027D_JP - p.87 MPLAB® X IDE ユーザガイド 4.8 その他のツールオプションの設定 ビルド用パス以外のオプションも設定できます。[Options] ウィンドウの [Embedded] カテゴリでは、以下のタブを選択できます。 • Project Options – プロジェクト関連のオプション (make オプション、ファイルパス オプション ( 自動 / 相対 / 絶対 ) 等 ) を設定します ( セクション 12.14.2「[Project Options] タブ」参照 )。 • Generic Settings – ログファイル等のプロジェクト機能を設定します ( セクション 12.14.1「[Generic Settings] タブ」参照 )。 • Suppressible Messages – 抑止するメッセージを選択します ( セクション 12.14.5 「[Suppressible Messages] タブ」参照 )。 • Diagnostics – エラーとその他の問題を詳しく調べるために記録します ( セクション 12.14.6「[Diagnostics] タブ」参照 )。 • Other – C ソースファイルとヘッダファイルに使えるファイル拡張子のリストを編 集します ( セクション 12.14.7「[Other] タブ」参照 )。 DS50002027D_JP - p.88 2016 Microchip Technology Inc. 基本作業 4.9 ファイルの新規作成 新しいファイルは、以下のいずれかの方法で作成できます。 • [File] > [New File] を選択する ( または <Ctrl>+<N>) • [Project/File] ウィンドウ内のプロジェクトを右クリックし、[New] > [Other] を選択 する • [Project/File] ウィンドウ内の論理フォルダ ( 例 : Source Files) を右クリックし、[New] > [Other] を選択する [New File] ウィザードが起動し、ファイルの新規作成を支援します。 Step 1. Choose File Type [Microchip Embedded] を展開して、その中のファイルカテゴリを選択します。次に ファイルタイプを選択します。 図 4-13: 2016 Microchip Technology Inc. ファイル ウィザード – カテゴリとタイプの選択 DS50002027D_JP - p.89 MPLAB® X IDE ユーザガイド Step 2. Name and Location ファイルに名前を付け、そのファイルをプロジェクト フォルダに格納します。 図 4-14: ファイル ウィザード – 関連付けるプロジェクトの選択 このファイルは、[File] ペインでプロジェクトの下に表示されると共に、[Editor] ペイン にこのファイルと同名のタブが開きます。このタブでファイルを編集します。ファイル 内のテキストは、構文に基づいて色分け表示されます ( 色分けはファイルタイプに よって異なります )。 図 4-15: DS50002027D_JP - p.90 新規ファイル – MyFile.c 2016 Microchip Technology Inc. 基本作業 4.10 既存ファイルのプロジェクトへの追加 以下のどちらかの方法により、既存ファイルをプロジェクトに追加できます。 • [Project/File] ウィンドウ内のプロジェクトを右クリックし、[Add Existing Item] を選 択する • [Project/File] ウィンドウ内の論理フォルダ ( 例 : Source Files) を右クリックし、[Add Existing Item] を選択する 4.10.1 プロジェクト フォルダ内のファイル ファイルを追加する際に、パスの指定方法を以下から選択できます。 • Auto – MPLAB X IDE がファイルのパスの指定方法を自動的に選択します。 • Relative – ファイルのパスをプロジェクト フォルダに対して相対的に指定します ( 最も移植性に優れます )。 • Absolute – ファイルのパスを絶対パスで指定します。 • Copy – 指定したファイルをプロジェクト フォルダにコピーします。 このファイルは、[File] ペインでプロジェクトの下に表示されると共に、[Editor] ペイン にこのファイルと同名のタブが開きます。 4.10.2 プロジェクト フォルダ外のファイル プロジェクト フォルダ以外の場所に保存されているソースファイルは、 「Relative」と して追加します。これにより、外部ファイル用フォルダ (_ext) が作成され、プロジェ クトはビルド時にそのファイルを見つける事ができるようになります。 //TODO やファイル コンテクスト メニュー等のナビゲーション機能を使えるように するために、ファイルの格納場所をプロジェクト内で指定しておく必要があります。 このために、以下を行います。 1. [Projects] ウィンドウ内のプロジェクト名の上で右クリックして、[Properties] を 選択する。 2. [Categories] の下で [General] をクリックする。 3. [Source Folders] の横の [Add] をクリックする。 4. プロジェクトに追加した外部ファイルのパスを表示させ、[Select] をクリックする。 5. [Apply] または [OK] をクリックして、プロジェクトをリビルドする。 MPLAB IDE v8 プロジェクトをインポートした場合、ソースファイルはプロジェクト フォルダ内に保存されません。自動的にファイルをインポートするには、[File] > [Import] > [MPLAB IDE v8 Project] を使います。 4.10.3 プロジェクト内のファイルの順序 リンク処理の順序は、プロジェクトにファイルを追加した順序で決まります。MPLAB IDE v8 からプロジェクトをインポートする場合、その順序は .mcp ファイルで決まり ます。 プロジェクトに新規に追加したファイルが最後にリンクされます。ファイルを削除した 後で再度追加した場合、そのファイルはリンクリストの末尾に移動します。 2016 Microchip Technology Inc. DS50002027D_JP - p.91 MPLAB® X IDE ユーザガイド 4.11 エディタの使い方 コードの編集には、NetBeans エディタを使います。エディタに関連する C コンパイラ 情報は、NetBeans ヘルプトピック ([C/C++/Fortran Development] > [C/C++/Fortran Project Basics] > [Navigating and Editing C/C++/Fortran Source Files]) を参照してく ださい。エディタ機能の一覧は、第 7 章「エディタ」に記載しています。 エディタの各種機能は以下からアクセスします。 • [Edit] メニュー ( セクション 11.2.2「[Edit] メニュー」参照 ) • 各ファイルのエディタ ウィンドウの上にあるエディタ用ツールバー • ウィンドウ内で右クリックして開くコンテクスト メニュー 図 4-16: エディタ用ツールバー エディタ プロパティの設定方法 1. [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択して [Options] ダイアログを開く。 2. [Editor] ボタンをクリックする。タブをクリックしてエディタ機能を設定する。 3. [Fonts and Colors] ボタンをクリックする。タブをクリックして色オプションを 設定する。 ファイルをナビゲートする方法とコードをフォーマットする方法 1. [Navigate] メニューから項目を選択し、ファイルの内外を検索して移動する。 2. [Source] メニューから項目を選択して、コードのフォーマット、コメント化、オート コンプリートを実行する。 コード折り畳みの使い方 コード折り畳みの詳細はセクション 7.6「コード折り畳み」を参照してください。 DS50002027D_JP - p.92 2016 Microchip Technology Inc. 基本作業 4.12 ライブラリやオブジェクト ファイルの追加と設定 リンカが使うライブラリ ファイルは以下の場所より参照できます。 • [Projects] ウィンドウの [Libraries] フォルダ • [Project Properties] ダイアログ 言語ツールのライブラリアンを使えば、その他のライブラリ ファイルも設定できます。 4.12.1 [Libraries] フォルダ [Projects] ウィンドウで [Libraries] フォルダを右クリックすると、以下の項目が表示さ れます。 • [Add Library Project] プロジェクトに必要なライブラリを出力として生成するプロジェクトを作成します ( 依存性の確立 )。詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [C/C++/Fortran Project Basics] > [Building C/C++/Fortran Projects] > [Creating Dependencies Between C/C++/Fortran Projects]) を参照してください。 • [Add Library/Object File] 既存のライブラリ ファイルまたはプリビルド ( オブジェクト ) ファイルをプロジェ クトに追加します。 • [Properties] その他の設定を行う[Project Properties]ウィンドウを開きます(次セクション参照)。 4.12.2 [Project Properties] ウィンドウ : [Libraries] カテゴリ [Project Properties]ウィンドウを開き、[Libraries]カテゴリをクリックします。[Projects] ウィンドウの [Libraries] フォルダに追加した全てのファイルが表示されます。ウィンドウ 右側のボタンを使って、さらにファイルを追加したり、表示されているファイルを管理 する事ができます。 ライブラリリスト内のファイルの順序でリンクの順序が決まります。これは、プロ ジェクト内のライブラリが相互参照している場合、重要です。セカンダリ ライブラリ のオブジェクトを参照するライブラリは、リンク順のリスト内でより上位に位置して い る必 要 が あり ま す。リ ン ク順 が 正 しく な い 場合、リン ク 処 理中 に「undefined reference to」エラーが発生する場合があります。リンク処理の順序の詳細は『MPLAB XC16 Assembler, Linker and Utilities User’s Guide』(DS50002106) のセクション 8.4.16 「--library libname (-l libname)」を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.93 MPLAB® X IDE ユーザガイド 図 4-17: 4.12.3 ライブラリ / オブジェクト ファイルの管理とリンク順の設定 [Project Properties] ウィンドウ : ライブラリアン カテゴリ [Project Properties] ウィンドウを開き、使う言語ツールのカテゴリの下のライブラリ アンをクリックします。ライブラリアンの実行ファイル名は、言語ツールのマニュアル で調べます。 左側のペイン内で、[Option categories] で [Libraries] を選択します。このリストから ライブラリのオプションを選択します。 DS50002027D_JP - p.94 2016 Microchip Technology Inc. 基本作業 図 4-18: 2016 Microchip Technology Inc. ライブラリアンのライブラリ オプションの設定 DS50002027D_JP - p.95 MPLAB® X IDE ユーザガイド 4.13 ファイルおよびフォルダ プロパティの設定 [File Properties] ダイアログを使うと、プロジェクト ファイルを、プロジェクト内の 他のファイルとは異なる方法でビルドできます。このダイアログは、[File] ペインの [Projects] ウィンドウ内でファイル名を右クリックし、[Properties] を選択すると開き ます。[Exclude from build] にチェックを入れると、このファイルをプロジェクト のビルドから除外できます。[Override build options] にチェックボックスを入れると、 プロジェクト コンフィグレーション内のビルドオプションよりもここで選択した オプションを優先させる事ができます。[Override build options] にチェックを入れて から [Apply] をクリックすると、選択したオプションが [Categories] の下に表示され ます。 図 4-19: DS50002027D_JP - p.96 ファイル プロパティ 2016 Microchip Technology Inc. 基本作業 ( 仮想 ) フォルダ全体は、 [File] ウィンドウの [Projects] タブ内でフォルダ名を右クリックし、 [Properties] を選択する事でビルドプロセスから除外できます。フォルダまたは個々 のファイルを選択してビルドから除外します。上位のフォルダを選択すると、その フォルダの内容全体が選択されます。ファイルまたは他のフォルダは自由に選択を解 除できます。 図 4-20: 2016 Microchip Technology Inc. フォルダ プロパティ DS50002027D_JP - p.97 MPLAB® X IDE ユーザガイド 4.14 ビルドプロパティの設定 プロジェクトをビルドする前に、必要に応じて以下のビルドプロパティを設定できます。 • • • • プロジェクト コンフィグレーション タイプの変更 ビルド前後でのスクリプト / マクロ実行 ユーザ ID メモリへのチェックサムの挿入 HEX ファイルの正規化 図 4-21: 4.14.1 ビルドプロパティ - make オプション プロジェクト コンフィグレーション タイプの変更 MPLAB X IDE v2.15 では、[New Project] ウィザードでスタンドアロンまたはライブ ラリ プロジェクトを作成する場合、 「application」と「library」のどちらかのコンフィグ レーション タイプのプロジェクトが作成されます。これは、以下のセクションで示す 事項に注意した上で、既存のプロジェクトのコンフィグレーション タイプを必要に応 じて切り換える事ができる事を意味しています。 プリビルドおよびユーザ Makefile プロジェクトは、この機能によって影響されません ( これらは一度作成すると別のタイプのプロジェクトには変更できません )。 図 4-22: DS50002027D_JP - p.98 コンフィグレーション タイプ ドロップダウン ボックス 2016 Microchip Technology Inc. 基本作業 4.14.1.1 スタンドアロン プロジェクトからライブラリ プロジェクトへの切り換え プロジェクト コンフィグレーション タイプを「application」から「library」に切り換 える場合、ユーザが main() を削除する必要があります。コンフィグレーション タイプが「library」になると、「application」プロジェクト内の全ての読み込み可能 ファイルはビルド / リンクされません。読み込み可能ファイルの詳細はセクション 5.4 「読み込み可能なプロジェクト、ファイル、シンボル」を参照してください。 ツールチェーン (XC8) がライブラリをサポートしていない場合、コンボボックスは無効 になりコンフィグレーションを「library」に切り換える事はできません。 4.14.1.2 ライブラリ プロジェクトからスタンドアロン プロジェクトへの切り換え プロジェクト コンフィグレーション タイプを「library」から「application」に切り換 える場合、ユーザが main() を追加する必要があります。 4.14.2 ビルド前後でのスクリプト / マクロ実行 ビルドプロセスの先頭または末尾に実行するコマンドを入力します。これらのコマンド を nbproject/Makefile-$CONF.mk ファイルに挿入すると、ビルドプロセスを カスタマイズできます。呼び出すスクリプトまたはプログラム内でプロジェクト関連 のアイテム ( 画像名等 ) を参照する必要がある場合、マクロを使います。 マクロを直接入力するか、[Insert Macro] をクリックして編集ボックス内の現在の 位置にマクロ名をコピーします。コマンドは、カレントフォルダを MPLAB X IDE プロジェクト フォルダに設定して、make プロセスで実行されます。プロジェクト フォルダは、nbproject フォルダを含むプロジェクトとして定義されます。 表 4-4: マクロ 名前 * 機能 Device 現在選択中のプロジェクト コンフィグレーションのデバイス IsDebug デバッグ実行は「true」、それ以外は「false」 ProjectDir PC 上のプロジェクト ファイルの位置 ConfName 現在選択中のプロジェクト コンフィグレーションの名前 ImagePath ビルドイメージへのパス ImageDir ビルドイメージを含むフォルダ ImageName ビルドイメージの名前 * 使うコンパイラによっては、その他のマクロも選択できる場合があります。 2016 Microchip Technology Inc. DS50002027D_JP - p.99 MPLAB® X IDE ユーザガイド 例 4-1: デバッグ中にのみプロセスを実行する 以下に示すウィンドウ上で、IsDebug マクロをクリックして選択し、次に [Insert Macro] をクリックしてスクリプトに挿入します。 図 4-23: ビルドプロパティ - プリ / ポストビルド 実行するスクリプトで、$1 (Linux または Mac OS) または %1 (Windows OS) の値に チェックを入れます。 Bash のサンプルコード #!/bin/bash echo is $1 if [ "$1" == "true" ]; then echo We are in debug else echo We are in production fi Batch のサンプルコード @echo off if "%1" == "true" goto debug :production @echo We are in production goto end :debug @echo We are in debug :end 4.14.3 ユーザ ID メモリへのチェックサムの挿入 チェックボックスをクリックすると、ビルドで生成されるチェックサムをユーザ ID として使います ( デバイスがサポートしている ( 灰色表示されていない ) 場合 )。 PIC32 ファミリのデバイスでは、チェックサムはユーザ ID によって異なります。従って、 PIC32 デバイスはこの機能をサポートしていません。 DS50002027D_JP - p.100 2016 Microchip Technology Inc. 基本作業 4.14.4 HEX ファイルの正規化 行アドレスが昇順であり、データが 1 サイズ (16 バイト ) にバッファリングされている 場合、可能であれば HEX ファイルは正規化されます。 例えば、myfile.hex ファイルの行 ( レコード ) と MPLAB XC16 C コンパイラ / リンカの出力を以下に示します。 :0801f800361e0000361e000057 :020000040000fa :10020800361e0000361e0000361e0000361e000096 このファイルを正規化した場合、ファイルのデータは以下のようになります。 :10022800361E0000361E0000361E0000361E000076 :10023800361E0000361E0000361E0000361E000066 :10024800361E0000361E0000361E0000361E000056 フォーマットは以下の通りです。 :bbaaaarrdd...ddcc : 開始レコード bb バイトカウント aaaa アドレス rr レコードタイプ dd データ cc チェックサム MPLAB X IDE では、HEXMATE と呼ぶアプリケーションを使って Intel HEX ファイル を正規化します。[Normalize hex file] オプションにチェックを入れると、ビルド後に 以下が呼び出されます。 hexmate myfile.hex -omyfile.hex 基本的に、HEXMATE は HEX ファイル全体を解凍し HEX ファイルで指定したアドレス にデータを配列します。次に、結果のメモリイメージを新規 HEX ファイルに圧縮し 直します。結果ファイルでは全データは昇順であり、かつ連続しています。アドレス に隙間がある場合、出力ファイルにも隙間ができます ( 未使用アドレスは埋め込まれ ません )。 HEXMATE の使い方の詳細はインストールした MPLAB XC8 C コンパイラの docs フォルダにある『MPLAB XC8 C Compiler User’s Guide』(DS50002053) を参照してく ださい。HEXMATE は MPLAB XC8 の文書に記載されていますが、どのコンパイラと 組み合わせても使えます。 正規化された HEX ファイルは、レコードバイトのばらつきが最小化されているため、 シリアル接続でのブートローダ等のプログラミング コードとして便利です。 2016 Microchip Technology Inc. DS50002027D_JP - p.101 MPLAB® X IDE ユーザガイド 4.15 プロジェクトのビルド MPLAB X IDE では、実行またはデバッグの前にプロジェクトをビルドしておく必要 はありません。ビルドは、実行とデバッグの一部として処理されます。しかし、開発 の初期段階または既存プロジェクトの大幅変更時には、プロジェクトを実行または デバッグする前に、プロジェクトのビルドを確認する場合もあります。 プロジェクトのビルド方法 • [Projects] ウィンドウのプロジェクト名を右クリックして [Build] を選択するか、 [Clean and Build] を選択して中間ファイルを削除してからビルドする • ツールバーの [Build Project] または [Clean and Build Project] アイコンをクリックする ビルドの進捗状況は [Output] ウィンドウに表示されます。 ビルドには以下の機能があります。 表 4-5: ツールバーボタンのビルドオプション ボタン アイコン 機能 説明 Build Project プロジェクト内の全ファイルに対して make を 実行します。 Build for Debugging プロジェクト内の全ファイルに対して make を 実行し、ビルドされたイメージにデバッグ実行 ファイルを追加します。 Clean and Build 前回のビルドファイルを削除してから、プロ ジェクト内の全ファイルに対して make を実行 します。 Clean and Build for Debugging 前回のビルドファイルを削除してから、プロ ジェクト内の全ファイルに対して make を実行 します。ビルドされたイメージにデバッグ実行 ファイルを追加します。 [Output] ウィンドウへのエラーの表示方法 1. [Output] ウィンドウを右クリックして [Filter] を選択する。 2. [Filter] ダイアログの [Match] にチェックを入れて「: error」と入力すると、ビルド を停止させたエラーだけが [Output] ウィンドウに表示される。 3. フィルタの ON/OFF 切り換えには <Ctrl>+<G> を使う。 エラーに関する詳細は言語ツールのマニュアルを参照してください。 チェックサム情報の表示方法 • [Dashboard] ウィンドウ ( セクション 5.18「ダッシュボードの表示」参照 ) を開い て、ビルド後のチェックサムを確認する。 プロジェクトのビルドに関する詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [C/C++/Fortran Project Basics] > [Building C/C++/Fortran Projects]) も 参照してください。 DS50002027D_JP - p.102 2016 Microchip Technology Inc. 基本作業 4.16 コードの実行 コードのビルドに成功すれば、アプリケーションを実行できます。 4.16.1 コード実行時の動作 [Run Project] ツールバーボタンをクリックすると以下の動作が実行されます。 • make 処理がビルドを必要と判断した場合、ビルドを実行します。 • インサーキット デバッガ / エミュレータまたはプログラマを使う場合、ターゲット デバイスには自動的にイメージ ( デバッグ実行ファイルは含まず ) がプログラミング され、次いでデバイスが実行に向けてリリースされます。この場合、ブレーク ポイント等のデバッグ機能は有効になりません。 Note: プログラミング後にデバイスをリセット状態に保持するには、[Run Project] ではなく [Hold in Reset] をクリックします。 [Hold in Reset] アイコン • シミュレータの場合、アプリケーションは一切のデバッグ機能を使わずコードを実行 します。 コード実行の進捗状況が [Output] ウィンドウに表示されます。 4.16.2 実行に関する注意事項 プログラムを実行する場合、MPLAB X IDE は実行時 (Run または Debug Run) のみ ハードウェア ツールに接続する事に注意してください。従って、MPLAB X IDE の 設定は、実行時にのみツールに反映します。停止中に変更された設定は、実行が再開 した時にのみ更新されます。 MPLAB IDE v8 のように常時ハードウェア ツールに接続するには、[Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択し、[Embedded] ボタンを クリックし、[Generic Settings] タブで [Maintain active connection to hardware tool] にチェックを入れます。 セクション 4.23「デバイスのプログラミング」を参照してください。 4.16.3 アプリケーション コードの実行 1. [Projects] ウィンドウでプロジェクトを選択するか、そのプロジェクトをメイン プロジェクトに指定する ( 右クリックして [Set as main] を選択 )。 2. プログラムを実行するには、[Make and Program Device] アイコンをクリックするか [Run] > [Run Project] を選択する。 [Make and Program Device] アイコン コード実行の進捗状況が [Output] ウィンドウに表示されます。 2016 Microchip Technology Inc. DS50002027D_JP - p.103 MPLAB® X IDE ユーザガイド 4.17 コードのデバッグ実行 コードが正常に動作しない場合、デバッグが必要です。デバッグモードでコードを実行 する事を「デバッグ実行」と呼びます。 4.17.1 デバッグ実行時の動作 [Debug Project] ツールバーボタンをクリックすると以下の動作が実行されます。 • make 処理がビルドを必要と判断した場合、ビルドを実行します。 • インサーキット デバッガ / エミュレータを使う場合、ターゲット デバイスまたは ヘッダは自動的にイメージ ( デバッグ実行ファイルを含む ) がプログラミングされ、 デバッグ セッションが始まります。 • シミュレータの場合、即座にデバッグ セッションが始まります。 デバッグ実行の進捗状況は [Output] ウィンドウに表示されます。 4.17.2 デバッグ用マクロの生成 MPLAB X IDE は、Microchip 社製言語ツール向けのデバッグ用マクロを生成します。 Microchip 社製コンパイラおよびアセンブラで使うマクロを表 4-6 に示します。 表 4-6: Microchip 社製ツールのデバッグ用マクロ マクロ名 関連 ツール 機能 __DEBUG 全て デバッグ用のビルドである事を示します。 __MPLAB_REAL_ICE__ __MPLAB_ICD3__ __MPLAB_PK3__ __MPLAB_PICKIT2__ XC8 使用中のハードウェア デバッグツールを示 します。 フォーマットは __MPLAB_xxx__ (xxx は ハードウェア ツールの指定子 ) です。 __MPLAB_DEBUGGER_REAL_ICE __MPLAB_DEBUGGER_ICD3 __MPLAB_DEBUGGER_PK3 __MPLAB_DEBUGGER_PICKIT2 XC16, XC32, MPASM 使用中のハードウェア デバッグツールを示 します。 フォーマットは __MPLAB_DEBUGGER_xxx (xxxはハードウェア ツールの指定子)です。 __MPLAB_DEBUGGER_PIC32MXSK XC32 使用中のスタータキットを示します。 これらのマクロはユーザコード内で使えます。例 : #ifdef __DEBUG fprintf(stderr,"This is a debugging message\n"); #endif 4.17.3 デバッグに関する注意事項 コードをデバッグする場合、以下の事項に注意します。 • デバッグ機能 ( ウォッチ ウィンドウやメモリ ウィンドウでの変数の値の表示等 ) の 多くは、デバッグ セッション ( デバッグモード ) 内でのみ使えます。 • MPLAB X IDE は実行時 (Run または Debug Run 時 ) にのみハードウェア ツールに接続 します。これは、MPLAB X IDE で行った設定が、実行時にのみツールに反映される事 を意味します。停止中に変更された設定は、実行が再開した時にのみ更新されます。 MPLAB IDE v8 のように常時ハードウェア ツールに接続するには、[Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択し、[Embedded] ボタン をクリッ クし、[Generic Settings] タブで [Maintain active connection to hardware tool] にチェックを入れます。 • アプリケーションによっては、個別に実行するためにデバッグステップの分割が必 要になる場合があります。それには、[Debug] > [Discrete Debugger Operation] に よる手順を使います。 DS50002027D_JP - p.104 2016 Microchip Technology Inc. 基本作業 4.17.4 アプリケーション コードのデバッグ アプリケーション コードをデバッグする方法 1. [Projects] ウィンドウでプロジェクトを選択するか、そのプロジェクトをメイン プロジェクトに指定する ( 右クリックして [Set as main] を選択 )。 2. [Debug Project] アイコンをクリックするか、[Debug] > [Debug Project] または [Debug] > [Step Into] を選択して、デバッグ実行を始める。 [Debug Project] アイコン アプリケーション コードの実行を一時停止する方法 [Pause] アイコンをクリックするか、[Debug] > [Pause] を選択すると、プログラムの 実行が一時停止する。 コードの実行を再開する方法 [Continue] アイコンをクリックするか、[Debug] > [Continue] を選択すると、プログラム の実行が再開する。 コードの実行を終了する方法 [Finish] アイコンをクリックするか、[Debug] > [Finish Debugger Session] を選択すると、 プログラムの実行が終了する。 通常の実行とデバッグ実行の違いは、セクション 4.18「ブレークポイントによるプロ グラム実行の制御」以降で説明します。 デバッガを起動する方法 コードがデバッグ用にビルドされたもので、単にデバッグツールを起動するだけならば、 [Debug Project] アイコン横の下矢印をクリックして、[Launch Debugger] を選択する。 2016 Microchip Technology Inc. DS50002027D_JP - p.105 MPLAB® X IDE ユーザガイド 4.18 ブレークポイントによるプログラム実行の制御 コードをデバッグする際に、コードの特定位置で実行を一時停止して、変数値を調べ る事ができると便利です。そのためにブレークポイントを使います。 ブレークポイントの詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications with gdb] > [Setting C/C++/Fortran Breakpoints]) を参照してください。 図 4-24: 4.18.1 [Breakpoints] ウィンドウ内のブレークポイント 単純なブレークポイントのセット / クリア 以下のどちらかの方法により、コード内にブレークポイントを設定できます。 • ソースエディタで左側の余白をクリックする • <Ctrl>+<F8> を押す 以下のどちらかの方法により、設定したブレークポイントをクリアできます。 • ブレークポイント設定の時と同じ操作を繰り返す • [Debug] > [Toggle Breakpoint] を選択する 4.18.2 [New Breakpoint] ダイアログによるブレークポイントの設定 [New Breakpoint] ダイアログを使ってブレークポイントを設定する方法 1. [Debug] > [New Breakpoint] を選択する。 2. [New Breakpoint] ダイアログで、ブレークポイント タイプおよびその他のオプ ションを設定する。 各ブレークポイント タイプで利用できるオプションの詳細はセクション12.5.1 「[New Breakpoint] ダイアログ」で説明しています。 DS50002027D_JP - p.106 2016 Microchip Technology Inc. 基本作業 4.18.3 [Breakpoints] ウィンドウによるブレークポイントのセット / クリア [Breakpoints] ウィンドウを使ってブレークポイントを表示し、有効 / 無効にするには 以下を実行します。 1. [Window] > [Debugging] > [Breakpoints] を選択する。 2. チェックボックスを使ってブレークポイントの有効 / 無効を切り換える。 [New Breakpoint] ダイアログを使ってブレークポイントを設定するには、ダイアログ の左上にあるアイコンをクリックします。 4.18.4 ブレークポイント シーケンスの設定 ( 一部デバイスのみ ) ブレークポイント シーケンスは複数のブレークポイントのリストです。プログラムの 実行は、各ブレークポイントでは停止せず、最後のブレークポイントの実行後に停止 します。ブレークポイント シーケンスは、特定の命令に至るまでに複数の実行パスが 存在する場合、その中の 1 つのパスの動作だけを調べる時に便利です。 ブレークポイント シーケンスの作成方法 1. 既存のブレークポイントを右クリックするか、複数の既存ブレークポイントを <Shift>+ クリックで選択して右クリックする。 2. コンテクスト メニューから [Complex Breakpoint] へ進み、[Add a New Sequence] を選択する。 3. ダイアログ ボックスにシーケンス名を入力し、[OK] をクリックする。 4. 新しく作成したシーケンスの下に、最初に選択したブレークポイントが表示される。 5. 別の既存ブレークポイントをシーケンスに追加するには、そのブレークポイント を右クリックし、[Complex Breakpoint] > [Add to Name] を選択する (Name はシー ケンス名 )。 6. シーケンスに既存ではない新しいブレークポイントを追加するには、シーケンス を右クリックし、コンテクスト メニューから [New Breakpoint] を選択する。 シーケンスの並び順を選択する方法 1. 全ての項目が表示されるように、シーケンスを展開する。 2. 項目を右クリックして、[Complex Breakpoints] > [Move Up] または [Complex Breakpoints] > [Move Down] を選択する ( ブレークポイントのシーケンスはボトム アップ方式で実行されます。つまり、シーケンスの最後のブレークポイントが 最初に発生します )。 シーケンスまたはブレークポイントの無効化 / 削除方法 1. 項目を右クリックし、[Disable] を選択すると、その項目は一時的に無効になる。 2. 項目を右クリックし、[Delete] を選択すると、その項目は完全に削除される。 4.18.5 ブレークポイント タプルの設定 ( 一部デバイスのみ ) MPLAB X IDE では、 「タプル」は AND 演算されるブレークポイントのリストを意味 します。ブレークポイントの AND 演算は、複数箇所で変更される変数が特定の箇所 で変更された時にだけブレークさせたい場合に便利です。 AND 演算は 2 点のみ可能です。1 つはプログラムメモリ ブレークポイント、もう 1 つ はデータメモリ ブレークポイントである事が必要です。両方のブレークポイントが 同時に発生した時にのみ、プログラムが一時停止します。 2016 Microchip Technology Inc. DS50002027D_JP - p.107 MPLAB® X IDE ユーザガイド ブレークポイント タプルの作成方法 1. [Breakpoints] ウィンドウの左上のアイコンをクリックすると、[New Breakpoint] ダイアログが開く。 2. アドレス ブレークポイントを作成する。[OK] をクリックして、作成したブレーク ポイントを [Breakpoints] ウィンドウに追加する。 3. 上記 1 と 2 を繰り返して、データ ブレークポイントを作成する。 4. いずれかのブレークポイントを右クリックし、[Complex Breakpoint] > [Add to New Tuple] を選択する。 5. ダイアログ ボックスにタプル名を入力し、[OK] をクリックする。 6. 新しく作成したタプルの下に、そのブレークポイントが表示される。 7. もう 1 つのブレークポイントを右クリックし、[Complex Breakpoint] > [Move to Name] を選択する (Name はタプル名 )。 タプルまたはブレークポイントを削除するには、以下のどちらかの操作を行います。 1. 項目を右クリックし、[Disable] を選択すると、その項目は一時的に無効になる。 2. 項目を右クリックし、[Delete] を選択すると、その項目は完全に削除される。 4.18.6 ハードウェア ブレークポイントの使い方 コードの行で一時停止する場合、以下のどちらかを実行します。 ソフトウェア ブレークポイントからハードウェア ブレークポイントへ切り換 える または ハードウェア ブレークポイントを設定する [Debug Run] を実行すると、同じコード行で停止する事に注意が必要です。[Debug Run] を再実行してプログラム実行を継続するか、シングルステップ実行でブレーク ポイント行のコードを実行します。 4.18.7 ブレークポイント用のアプリケーション ブレークポイントから次のブレークポイントまでの実行時間を計測するにはストップ ウォッチを使います ( セクション 5.14「ストップウォッチの使用」参照 )。 ブレークポイント リソースを確認するため、[Dashboard] ウィンドウ ( セクション 5.18「ダッシュボードの表示」参照 ) を開いて、ブレークポイントの利用可能数と使 用数、ソフトウェア ブレークポイントがサポートされているかどうかを調べます。 4.18.8 ブレークポイントの使用に関する注意事項 スタータキット、インサーキット デバッガ (PICkit 2 と 3 を含む )、MPLAB REAL ICE インサーキット エミュレータでは、使えるブレークポイントの数に制限があります。 利用可能なブレークポイントの数は、選択したデバイスによって異なります。利用可 能なブレークポイントの数と、既に使用中のブレークポイントの数は、[Dashboard] ウィンドウ ( セクション 5.18「ダッシュボードの表示」) で調べる事ができます。 以下の MPLAB X IDE 機能は、ブレークポイントを必要とします。 • Step Over • Step Out • Run to Cursor • Reset to Main 利用可能なブレークポイントが残っていない時にこれらの機能を使おうとすると、 ダイアログが開いて、全てのリソースが使用中である事を知らせます。 DS50002027D_JP - p.108 2016 Microchip Technology Inc. 基本作業 4.19 コードのステップ実行 [Debug] メニューと [Debug] ツールバーのステップ実行機能を使うと、コードの先頭 またはブレークポイントでの停止状態からコードをステップ実行できます。これにより、 変数値の変化を観察したり ( 次セクション参照 )、プログラムフローが正しいかどう かを判断したりできます。 コードのステップ実行は、以下の方法で行えます。 • Step Over – プログラムのソースを 1 行実行します。 その行が関数コールである場合、呼び出した関数全体を実行した後に停止します。 • Step Into – プログラムのソースを 1 行実行します。 その行が関数コールである場合、呼び出した関数の先頭の命令文を実行した後に停止 します。 • Step Out - プログラムのソースを 1 行実行します。 この行が関数コールの場合、実行後に呼び出し元に戻ります。 • Run to Cursor - プロジェクトをカーソル位置まで実行して、停止します。 [Editor] ウィンドウ以外に、[Disassembly] ウィンドウ ( セクション 5.15 「[Disassembly] ウィンドウの表示」) と、[Memory] ウィンドウ内のプログラムメモリでも、コードを シングルステップ実行できます。 ステップ実行の詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications with gdb] > [C/C++/Fortran Debugging Sessions] > [Stepping Through Your C/C++/Fortran Program]) を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.109 MPLAB® X IDE ユーザガイド 4.20 シンボル値の変化の観察 選択したシンボルの値の変化を [Watches] ウィンドウで観察します。これらの値が プログラム実行中に予測通りに変化するか確認する事により、コードのデバッグに役 立てる事ができます。 以下のシンボルを [Watches] ウィンドウに追加できます。 • グローバル シンボル – ビルド後に表示されます。 • SFR – 特殊機能レジスタ ( デバイスによって異なります ) • 絶対アドレス 一般的に、値の変化を観察するにはデバッグ実行を一時停止する必要があります。 しかし、ツールによっては実行時の更新が可能です ( プログラム実行中に値の変化を観 察できます )。この機能が使えるかどうかは、ツールのマニュアルを参照してください。 PIC32 MCU 以外のデバイスでは、ランタイム ウォッチに使うシンボルはデバイス メモリに適合したサイズである必要があります。つまり、8 ビットデバイスを使う場合、 8 ビットのシンボルを使う必要があります。 C 言語エニュメレート タイプでは、enum ラベル ( テキスト ) と整数値のどちらかを ウィンドウで入力できます。ラベルは、大文字と小文字を区別する事に注意します。 図 4-25: [Watches] ウィンドウ – プログラムの一時停止 [Watches] ウィンドウは、以下のどちらかの方法で表示できます。 • [Window] > [Debugging] > [Watches] を選択して、[Watches] ウィンドウを開く • [Watches] ウィンドウが既に開いている場合、[Output] ウィンドウ内の [Watches] タブ をクリックする 新規ウォッチを直接作成する方法 以下のいずれかの方法により、シンボルを [Watches] ウィンドウに直接追加できます。 • [Name] 列をダブルクリックして、グローバル シンボル、SFR、絶対アドレス (0x300) を入力する • [Editor] ウィンドウのグローバル シンボルまたは SFR を右クリックして、[New Watch] を選択する • [Editor] ウィンドウ内でグローバル シンボルまたは SFR を選択し、これを [Watches] ウィンドウにドラッグ & ドロップする [New Watches] ダイアログを使って新規ウォッチを作成する方法 以下のどちらかの方法により、シンボルまたは SFR を [Watches] ウィンドウに追加 できます。 • [Watches] ウィンドウ内で右クリックして [New Watch] を選択するか、[Debug] > [New Watch] を選択する。ラジオボタンで、[Global Symbols] または [SFRs] のどち らをリストに表示するのかを選択する。リスト内でいずれかの名前をクリックし、 [OK] をクリックする • [Editor] ウィンドウ内でシンボルまたは SFR 名を選択し、右クリックで開いた メニューから [New Watch] を選択すると、その名前がウィンドウに表示される。 [OK] をクリックする DS50002027D_JP - p.110 2016 Microchip Technology Inc. 基本作業 ランタイム ウォッチの新規作成方法 ランタイム ウォッチを [Watches] ウィンドウに追加する前に、クロックを以下のよう に設定する必要があります。 1. プロジェクト名の上で右クリックして [Properties] を選択する。 2. デバッグツールの名前 (REAL ICE 等 ) をクリックし、オプション カテゴリ [Clock] を選択する。 3. 命令実行速度を設定する。 グローバル シンボルまたは SFR をランタイム ウォッチとして追加する方法は、上記 の「[New Watches] ダイアログを使って新規ウォッチを作成する方法」と基本的に同 じですが、[New Watch] ではなく [New Runtime Watch] を選択する必要があります。 PIC32 MCU 以外のデバイスでは、ランタイム ウォッチに使うシンボルはデバイスメ モリに適合したサイズである必要があります。つまり、8 ビットデバイスを使う場合、 8 ビットのシンボルを使う必要があります。 シンボル値の変化を表示する方法 1. プログラムをデバッグ実行し、一時停止する。 2. [Watches] タブをクリックしてアクティブにする。 3. シンボルをウォッチする場合、コードをデバッグ実行し、一時停止して値の変化 を観察する ( シンボルをランタイム ウォッチする場合、コードをデバッグ実行す ると、プログラムを実行しながら値の変化を観察できます。 シンボル ( グローバル シンボル、SFR、配列、レジスタのビットフィールド等 ) の値 を表示するには、デバッグ セッションを実行している必要があります )。 ウォッチシンボルの基数を変更する方法 シンボルの行で右クリックし、[Display Value As] を選択する。 その他の作業の方法 ウォッチの詳細はセクション 12.16「[Watches] ウィンドウ」を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.111 MPLAB® X IDE ユーザガイド 4.21 ローカル変数値の変化の観察 ローカル変数の値の変化を [Variables] ウィンドウで観察します。これらの値がプログ ラム実行中に予測通りに変化するか確認する事により、コードのデバッグに役立てる 事ができます。 一般的に、値の変化を観察するにはデバッグ実行を一時停止する必要があります。 しかしツールによっては、実行中に値の変化を観察できます。この機能が使えるか どうかは、ツールのマニュアルを参照してください。 図 4-26: [Variables] ウィンドウ – プログラムの一時停止 [Variables] ウィンドウは、以下のどちらかの方法で開けます。 • [Window] > [Debugging] > [Variables] を選択して、[Variables] ウィンドウが開く • [Variables] ウィンドウが既に開いている場合、[Output] ウィンドウ内の [Variables] タブをクリックする 変数の変化を観察する方法 1. プログラムをデバッグ実行し、一時停止する。 2. [Variables] タブをクリックしてウィンドウを開くと、ローカル変数値が表示される。 変数の基数を変更する方法 • 変数の行で右クリックし、[Display Value As] を選択する。 その他の作業の方法 変数の詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications with gdb] > [Viewing C/C++/Fortran Program Information] > [C and C++ Variables and Expressions in the IDE]) を参照してください。 DS50002027D_JP - p.112 2016 Microchip Technology Inc. 基本作業 4.22 デバイスメモリ ( コンフィグレーション ビットを含む ) の表示 / 変更 MPLAB X IDE は柔軟で簡潔な [Memory] ウィンドウを備えています。このウィンドウ には、デバッグ中に各種タイプのデバイスメモリの内容を表示できます。このウィン ドウ内の値を更新するには、デバッグ実行を一時停止する必要があります。 4.22.1 デバイスメモリの表示 1. ペイン内のウィンドウをクリックしてペインをアクティブにする([Memory] ウィンドウはこのペイン内に開きます )。 2. [Window] > [PIC Memory Views] を選択する。選択肢を下表に示す。 表 4-7: メモリ画面 – 8/16 ビットデバイス タイプ 説明 Program Memory File Registers SFRs Peripherals Configuration Bits EE Data Memory User ID Memory 表 4-8: デバイス上の全てのプログラムメモリ (ROM) デバイス上の全てのファイルレジスタ (RAM) 全ての特殊機能レジスタ (SFR) 周辺モジュールごとの全ての SFR 全てのコンフィグレーション レジスタ デバイス上の全ての EE データメモリ ユーザ ID メモリ メモリ画面 – 32 ビットデバイス タイプ 説明 Execution Memory Data Memory Peripherals Configuration Bits CPU Memory User ID Memory デバイス上の全てのフラッシュメモリ デバイス上の全ての RAM 全ての特殊機能レジスタ (SFR) 全てのコンフィグレーション レジスタ 全ての CPU メモリ ユーザ ID メモリ 3. [Memory] ウィンドウでは、ドロップダウン ボックスからメモリタイプと表示形 式を選択できる。 図 4-27:メモリとメモリ フォーマットの選択 表 4-9: [Memory] ウィンドウのオプション – 8/16 ビットデバイス オプション 値 説明 Memory File Registers Program SFR Configuration Bits EEPROM User ID デバイス上の全てのファイルレジスタ メモリ デバイス上の全てのプログラムメモリ 全ての特殊機能レジスタ (SFR) 全てのコンフィグレーション レジスタ 全ての EEPROM メモリ ユーザ ID メモリ Format Data Code データメモリ (RAM) プログラムメモリ (ROM) 2016 Microchip Technology Inc. DS50002027D_JP - p.113 MPLAB® X IDE ユーザガイド 表 4-10: [Memory] ウィンドウのオプション – 32 ビットデバイス オプション 値 説明 Memory RAM Memory Flash Memory Peripheral Configuration Bits CPU Memory Memory User ID デバイス上の全ての RAM デバイス上の全てのフラッシュメモリ 全ての特殊機能レジスタ (SFR) 全てのコンフィグレーション レジスタ 全ての CPU メモリ 全てのメモリ ユーザ ID メモリ Format Data Code データメモリ (RAM) プログラムメモリ (ROM) 4. デバッグ実行を一時停止すると、選択したメモリの内容が [Memory] ウィンドウ に表示される。 5. ウィンドウを閉じるには、そのウィンドウのタブの [x] をクリックする。 図 4-28:[Memory] ウィンドウの内容 4.22.2 デバイスメモリの変更 メモリの値を変更するにはコードをデバッグ実行する必要があります。実行中はメモリ を変更できません。 Note: 変更したデータは、デバッグ実行にのみ反映されます。アプリケーション コードは変更されません。 メモリの値を変更するには以下の情報を使います。 • 列をクリックしてデータを選択または入力すると、[Memory] ウィンドウ内の値を 変更できます。ウィンドウによっては、変更されたデータを赤いテキストで表示し ます。 • [Fill Memory] 機能は、ほとんどの [Memory] ウィンドウのコンテクスト ( 右クリック ) メニューに表示されます。 • プログラムメモリの場合、変更を表示するにはリビルドする必要があります。変更 したデータをデバイスに書き込んでデバッガを起動するには、[Debug] > [Discrete Debugger Operation] を選択します。 DS50002027D_JP - p.114 2016 Microchip Technology Inc. 基本作業 4.22.3 コンテクスト メニューを使った [Memory] ウィンドウのオプション 設定 [Memory] ウィンドウ内で右クリックすると、各種オプション ( 表示オプション、メモリ の書き込み、テーブルのインポート / エクスポート、ファイルへの出力等 ) を含む コンテ クスト メ ニューが 開きます。このメニ ューの 詳細はセ クション 12.9.13 「[Memory] ウィンドウのメニュー」を参照してください。 4.22.4 コンフィグレーション ビットの設定 コンフィグレーション ビットはコードで設定する必要があります。[Configuration Bits] ウィンドウは、コンフィグレーション ビットの設定作業に役立ちます ( セクション 4.22.1「デバイスメモリの表示」参照 )。 デバッグ セッションで [Configuration Bits] ウィンドウを使うと、コンフィグレーション ビットを一時的に変更できます ( セクション 4.22.2「デバイスメモリの変更」参照 )。 設定が決まったら [Generate Source Code to Output] を選択します。コードが [Output] ウィンドウにエクスポートされますので、これをアプリケーション コードにコピーで きます。 コンフィグレーション ビットを編集できるのはデバッグ セッション中のみです。 リビルドすると [Configuration Bits] ウィンドウによる変更は全て失われます。 各種デバイスのコンフィグレーション ビットの設定に関するまとめは、本書の補遺 A 「コンフィグレーション設定のまとめ」に記載しています。 図 4-29: [Configuration Bits] ウィンドウ 2016 Microchip Technology Inc. DS50002027D_JP - p.115 MPLAB® X IDE ユーザガイド 4.22.5 [Memory] ウィンドウの更新 プログラムメモリ、EEPROM、ユーザ ID メモリ、コンフィグレーション ビットを表 示する [Memory] ウィンドウは、以下の方法で更新できます。 1. デバッグ中の場合、プログラムを一時停止する ( ただし、ツールとデバイスが デバッグ読み出し ( 以下参照 ) をサポートしている場合、一時停止の必要はあり ません )。 2. [Read Device Memory] アイコンをクリックする。 [Read Device Memory] アイコン デバッグ読み出し ほとんどのデバイスでは、デバイスメモリの読み出し前にプログラムを一時停止する ( デバッガ セッションを終了する ) 必要があります。しかし、中にはデバッグモード 中の読み出し ( デバッグ読み出し ) が可能なデバイスもあります。この機能を使える かどうかは、デバッグ中に [Read Device Memory] アイコンが灰色表示になるか否か によって判別できます。 現在、MPLAB REAL ICE インサーキット エミュレータと MPLAB ICD 3 がデバッグ 読み出しに対応しています。 デバッグ読み出しは、ターゲットのオシレータ速度で実行されるため、ターゲットが 非常に低速で動作している場合、読み出されるまでに長時間を要する可能性があります。 デバッグ セッションを終了してから読み出しを実行する事で、強制的に高速の ICSP 読み出しを使う事もできます。デバッグ セッション中以外は必ず ICSP 読み出しが実 行されるためです。 4.23 デバイスのプログラミング コードのデバッグ後は、そのコードをターゲット デバイスにプログラミングします。 4.23.1 プロジェクトのプログラミング プロパティの設定 [Project Properties] ウィンドウでプログラミング オプションを設定します。 1. [Projects]ウィンドウでプロジェクト名を右クリックして[Properties]を選択する。 2. [Categories] でプログラミングに使うハードウェア ツール ( 例 : PM3) を選択する。 3. [Option categories] で [Memories to Program] の設定を確認する。 ([Preserve Memory] オプションを使う場合、コード保護が有効でない事を確認し ます。プログラマが書き込みに必要なデータを読み出し、デバイスのバルク消去 を実行し、デバイスを再プログラミングして、保護する領域にデータを再度書き 込む事で、コードは保護されます。) 4. [Option categories] で [Program Options] の設定を確認する。 5. ハードウェア ツールによって、プログラミングのオプション カテゴリが異なる。 各オプション カテゴリを確認しプロジェクトに対して設定が正しい事を確かめる。 6. DMCI、モータ制御アプリケーション等と一緒に RTDM を使う場合、[Loading] カテゴリの [Load symbols when programming or building for production (slows process)] チェックボックスにチェックを入れる必要がある。 プログラミング オプションの詳細は、ハードウェア ツールの文書を参照してください。 必要なプログラミング オプションを設定したら、デバイスをプログラミングできます。 DS50002027D_JP - p.116 2016 Microchip Technology Inc. 基本作業 4.23.2 プログラミングの実行 デバッグ済みコードでターゲット デバイスをプログラミングするには、ツールバーの [Make and Program Device Project] ボタンをクリックします。 表 4-11 に、その他のプログラミング関連の機能を示します。各アイコンの先頭の機 能は、ボタンをクリックするだけで起動します。その他の機能を選択するにはボタン アイコン横の下矢印をクリックします。 表 4-11: ボタン アイコン プログラミング関連機能のツールバーボタン 機能 Make and Program Device 説明 プロジェクトがビルドされ ( 必要な場合のみ )、 デバイスがプログラミングされます。 プログラミングが完了すると、即座にプログ ラムの実行が始まります。 Program Device for Debugging デバイスがデバッグイメージに基づいてプロ グラミングされます。 プログラミングが完了すると、即座にプログ ラムの実行が始まります。 Program Device for Production デバイスが量産イメージに基づいてプログラ ミングされます。 プログラミングが完了すると、即座にプログ ラムの実行が始まります。 Programmer to Go PICkit 3 PICkit 3 の Programmer to Go 機能を使います。 Read Device Memory ターゲット デバイスのメモリの内容を MPLAB X IDE に転送します。 Read Device Memory to File ターゲット デバイスのメモリの内容を指定した ファイルに転送します。 Read EE/Flash Data Memory to ターゲット データメモリの内容を指定した a File ファイルに転送します。 Hold In Reset デバイスをリセットと実行の間で交互に切り 換えます。 4.23.3 MPLAB 統合量産環境を使ったプログラミング MPLAB X IDE は、全てのプログラミング機能を備えている訳ではありません。その 他のプログラミング機能のサポートについては、MPLAB X IDE に付属してインストール される MPLAB IPE を参照してください。 MPLAB IPE のデスクトップ アイコン 2016 Microchip Technology Inc. DS50002027D_JP - p.117 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.118 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 5 章 追加作業 5.1 追加作業の概要 以下は、MPLAB X IDE の追加作業の要約です。 プロジェクト関連作業 コードのデバッグ コードの管理 1. ウィザードを使って MPLAB IDE v8 のプロジェクトを MPLAB X IDE 内で開く ( レガシー MPLAB プロジェクトのインポート )。 2. ウィザードを使ってプリビルド イメージ (HEX, COF, ELF) を開く ( プリビ ルド プロジェクト )。 3. 読み込み可能なプロジェクトとファイルによってプロジェクトの HEX ファ イルを結合または置換する ( 読み込み可能なプロジェクト、ファイル、シン ボル )。( 一般的なアプリケーションでは、読み込み可能なプロジェクトと ファイル : ブートローダのように、読み込み可能なプロジェクト / ファイル を使ってブートローダとアプリケーション コードを結合しています。) 4. ライブラリ プロジェクトを作成し、その出力をライブラリとしてビルドする ( ライブラリ プロジェクト )。 5. その他の組み込みプロジェクトまたはサンプル プロジェクトからプロジェ クトを作成する ( その他の組み込みプロジェクト、サンプル プロジェクト )。 6. Microchip 社製に限らず他のタイプのファイルを使って作業する ( 他のタイプ のファイルを使った作業 )。プロジェクトで使う既定値のファイル テンプ レートを変更するためにコード テンプレートを変更または作成する ( コード テンプレートの変更または作成 )。 7. プロジェクトで使うハードウェアまたは言語ツールを切り換える ( ハード ウェア ツールまたは言語ツールの切り換え )。 8. 既存プロジェクトのプロジェクト フォルダとエンコードを変更する ( プロ ジェクト フォルダとエンコードの変更 )。 9. 並列 make を使ってビルド時間を短縮する ( ビルド時間の短縮 )。 1. ストップウォッチを使ってブレークポイント間のタイミングを調べる(ストップ ウォッチの使用 )。 2. ウィンドウに逆アセンブルコードを表示する([Disassembly]ウィンドウの表示)。 3. 関数コールをたどるため、コールスタックまたはコールグラフを表示する ( コールスタックの表示、コールグラフの表示 )。 4. ダッシュボード画面にブレークポイント リソース、チェックサム、メモリ 使用率等のプロジェクト情報を表示する ( ダッシュボードの表示 )。 1. ファクタリングおよびプロファイリング ツールを使ってコードを改良する ( コードの改良 *)。 2. ビルトイン ファイル履歴機能またはバージョン管理システムを使ってソース コードを管理する ( ソースコードの管理 )。 3. チームサーバと問題追跡システムを使って、コード開発とエラー追跡を連携 する ( コード開発とエラー追跡の連携 *)。 1. コード開発を支援するためにプラグインツールを追加する(プラグインツール の追加 )。 機能拡張 * この機能については、[Start Page] の [My MPLAB X IDE] タブを開き、[Extend MPLAB] セクションの [Selecting Simple or Full-Featured Menus] トピックを参 照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.119 MPLAB® X IDE ユーザガイド 5.2 レガシー MPLAB プロジェクトのインポート [Import Legacy Project] ウィザードを使うと、MPLAB IDE v8 プロジェクトを MPLAB X IDE プロジェクトにインポートできます。以下にその際の注意事項を示します。 • MPLAB IDE v8 のワークスペースの設定は転送されません。 MPLAB IDE v8 のワークスペースに保存されている設定 ( ツール設定等 ) は、 新しい MPLAB X IDE プロジェクトに転送されません。ワークスペースに保存さ れている情報の内容については、MPLAB IDE v8 ヘルプ ([MPLAB IDE Reference] > [Operational Reference] > [Saved Information]) を参照してください。 プロジェクトの設定 ( コンパイラ、リンカ、アセンブラの設定等 ) は、新しい MPLAB X IDE プロジェクトに転送されます。 • インポートする MPLAB IDE v8 プロジェクトが、「MPLAB C Compiler for PIC24 MCUs and dsPIC DSCs」(MPLAB C30とも呼ぶ)とCOFFデバッグファイル フォー マットを使っている場合、以下のように変換されます。 - MPLAB X IDE プロジェクトが COFF ライブラリを使わない場合、デバッグファ イル フォーマットは ELF/DWARF に変換されます。MPLAB X IDE プロジェクト が COFF ライブラリを使う場合、フォーマットは COFF のままとなります。 - MPLAB IDE v8 はファイル拡張子の大文字 / 小文字 (.c と .C 等 ) を区別しませんが、 MPLAB X IDE はこれらを区別し、.c を C のコードファイル、.C を C++ のコード ファイルに関連付けます。従って、.C 拡張子を持つ C コードを含む MPLAB IDE v8 プロジェクトをインポートすると、MPLAB X IDE はその .C ファイルを .c に リネームし、コンパイラの誤動作を防ぎます。 • MPLAB X IDE にインポートした MPLAB IDE v8 プロジェクトは元のプロジェクト と同じようにはビルドされません。 プロジェクト コード内で __FILE__, assert(), __TIME__, __DATE__ を使っては いけません。ビルド ( とチェックサム ) の結果が元のプロジェクトと異なってし まいます。 5.2.1 ウィザードを開く このウィザードは、以下 2 通りの方法で開く事ができます。 5.2.1.1 [Start Page] から開く方法 • [Start Page] で、[Learn & Discover] タブを開き、[Dive In] セクションで [Import MPLAB Legacy Project] へのリンクを選択する。または、[File] > [Import] > [MPLAB IDE v8 Project] を選択する。 • すると [Import Legacy Project] ウィザードが開く。 5.2.1.2 [New Project] ウィザードを使う方法 [New Project] ウィザードは、以下のどちらかの方法で開けます。 • [Start Page] で、[Learn & Discover] タブを開き、[Dive In] セクションで [Create New Project] へのリンクを選択する • [File] > [New Project] を選択する ( または <Ctrl>+<Shift>+<N>) [New Project] ウィザードが起動し、プロジェクトの新規作成を支援します。 • Step 1. Choose Project: [Microchip Embedded] カテゴリを選択し、プロジェクト タイプ [Existing MPLAB IDE v8 Project] からプロジェクトを選択します。 [Next>] をクリックします。 • すると [Import Legacy Project] ウィザードが開きます。 DS50002027D_JP - p.120 2016 Microchip Technology Inc. 追加作業 5.2.2 [Import Legacy Project] ウィザード 以下の手順により、MPLAB IDE v8 プロジェクトをインポートします。各ステップの 手順を終えたら、[Next>] をクリックして次のステップへ進んでください。 • Step 1 または 2. Import Legacy Project: レガシー プロジェクトを選択します。 • Step 2または3. Select Device: アプリケーションで使う予定のデバイスを[Device] ドロップダウン リストから選択します。 選択肢を絞り込むために、最初にデバイスファミリを選択します。 • Step 3 または 4. Select Header: このステップは、選択したデバイスでヘッダが利用可能である場合に表示されます。 デバイスがヘッダを必要とするか、またはデバッグ回路を内蔵しているかどうかは、 『Processor Extension Pak (PEP) およびデバッグヘッダ仕様』(DS51292 または オンラインヘルプ ) で確認できます。上記を確認してからヘッダを使うかどうかを 選択します。 • Step 4 または 5. Select Tool: アプリケーションの開発に使う開発ツールをリストか ら選択します。 選択したデバイスに対するツールのサポートレベルが、ツール名の横のマークで 色分け表示されます。緑は完全サポート、黄はベータサポート、赤は未サポート を意味します。 • Step 5 または 6. Select Compiler: アプリケーションの開発に使う言語ツール ( コンパイラ ) をリストから選択します。 選択したデバイスに対するツールのサポートレベルが、ツール名の横のマークで 色分け表示されます。緑は完全サポート、黄はベータサポート、赤は非サポート を意味します。 • Step 6 または 7. Select Project Name and Folder: 双方のプロジェクトの保守性を保つために、既定値の名前とフォルダは変更しない 事を推奨します。 File Locations: 新規プロジェクトは、ソースファイルをプロジェクト フォルダにコピーしません。 その代わりに、v8 フォルダ内のファイル格納場所を参照します。 独立した MPLAB X IDE プロジェクトを作成するには、新規プロジェクトを作成して、 MPLAB IDE v8 のソースファイルを、そのプロジェクトにコピーする必要があります。 Main Project: インポート時にこのプロジェクトをメイン プロジェクトとするために、チェックを 入れます。 File Formatting: MPLAB IDE v8 からプロジェクトをインポートする際に使う文字エンコードの既定 値は「ISO-8859-1」です。 インポート元のプロジェクトで実際に使っているエンコードを選択する必要が あります。例えば、MPLAB IDE v8 のフォーマットが「950 (ANSI/OEM – Traditional Chinese Big5)」である場合、ドロップダウン リストから [Big5] を選択します。 • Step 7 または 8. Summary: [Finish] をクリックする前に、設定した内容を確認します。不適切な設定が見つ かった場合、[Back] ボタンを使って以前のステップに戻って修正します。 • レガシー プロジェクトが [Projects] ウィンドウ内に開きます ( 図 5-1 参照 )。 2016 Microchip Technology Inc. DS50002027D_JP - p.121 MPLAB® X IDE ユーザガイド 図 5-1: DS50002027D_JP - p.122 [Import Legacy Project] ウィザード – プロジェクト名とフォルダの選択 2016 Microchip Technology Inc. 追加作業 5.3 プリビルド プロジェクト [Import Image File] ウィザードを使って、プリビルドした読み込み可能イメージ (HEX, COF, ELF ファイル ) からプロジェクトを作成します。 Note: デバイスにプリビルド イメージをプログラミングする場合、デバイスを プログラミングするだけで make は実行しないのですが、[Make and Program Device] ボタンをクリックします。 このウィザードは、以下の 2 通りの方法で開く事ができます。 5.3.1 [Start Page] から開く方法 • [Start Page] で、[Learn & Discover] タブを開き、[Dive In] セクションで [Import Hex (Prebuilt) Project] へのリンクを選択する。または、[File] > [Import] > [Hex/ELF (Prebuilt) File] を選択する。 • すると [Import Image File] ウィザードが開く。 5.3.2 [New Project] ウィザードを使う方法 [New Project] ウィザードは、以下のどちらかの方法で開けます。 • [Start Page] で、[Learn & Discover] タブを開き、[Dive In] セクションで [Create New Project] へのリンクを選択する • [File] > [New Project] を選択する ( または <Ctrl>+<Shift>+<N>) [New Project] ウィザードが起動し、プロジェクトの新規作成を支援します。 • Step 1. Choose Project: [Microchip Embedded] カテゴリを選択し、プロジェクト タイプ[Prebuilt (Hex, Loadable Image) Project]からプロジェクトを選択します。 [Next>] をクリックします。 • すると [Import Image File] ウィザードが開く。 5.3.3 [Import Image File] ウィザード 以下の手順により、イメージファイルをインポートします。各ステップの手順を終え たら、[Next>] をクリックして次のステップへ進んでください。 • Step 1または2. Import Image File: イメージファイルの名前と格納場所を選択します。 ダイアログを使って格納場所を選択できます。 • Step 2または3. Select Device: アプリケーションで使う予定のデバイスを[Device] ドロップダウン リストから選択します。 選択肢を絞り込むために、最初にデバイスファミリを選択します。 • Step 3 または 4. Select Header: このステップは、選択したデバイスでヘッダが利用可能である場合に表示されます。 デバイスがヘッダを必要とするか、またはデバッグ回路を内蔵しているかどうかは、 『Processor Extension Pak (PEP) およびデバッグヘッダ仕様』(DS51292 またはオン ラインヘルプ ) で確認できます。上記を確認してからヘッダを使うかどうかを選択 します。 • Step 4 または 5. Select Tool: アプリケーションの開発に使う開発ツールをリストか ら選択します。 選択したデバイスに対するツールのサポートレベルが、ツール名の横のマークで 色分け表示されます。緑は完全サポート、黄はベータサポート、赤は未サポート を意味します。 • Step 6 または 7.Select Project Name and Folder: 新規プロジェクトの名前と 格納場所を選択します。 • ダイアログを使って格納場所を選択できます。 • Step 7 または 8. Summary: [Finish] をクリックする前に、設定した内容を確認し ます。 不適切な設定が見つかった場合、[Back] ボタンを使って以前のステップに戻って修 正します。 • 作成したプロジェクトが [Projects] ウィンドウ内に表示されます。 プロジェクトを HEX ファイルとしてエクスポートする方法はセクション 12.13.2 「[Projects] ウィンドウ – [Project] メニュー」を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.123 MPLAB® X IDE ユーザガイド 5.4 読み込み可能なプロジェクト、ファイル、シンボル 複数のプロジェクトの結合、複数の HEX ファイルの結合、プロジェクトと HEX ファイルの結合、プロジェクト HEX ファイルの置換には、読み込み可能なプロジェ クトおよびファイルを使います。HEXMATE アプリケーションを使って、プロジェクト または読み込んだ HEX ファイルを 1 つのファイルにマージします。このアプリケー ションの使い方の詳細は、インストールした MPLAB XC8 C コンパイラの docs フォルダにある『MPLAB XC8 C Compiler User’s Guide』(DS50002053) を参照し てください。セクション 9.7.8「HEXMATE Conflict Report Address Error」も参照し てください。 RTDM (Real Time Data Monitoring) と DMCI (Data Monitoring and Control Interface) を使う場合 ( モータ制御アプリケーション等 ) のように、量産ビルドまたはプログラ ミング中にデバッグシンボルを読み込むには、読み込み可能なシンボルを使います。 読み込み可能なプロジェクトまたはファイルは、ブートローダとアプリケーションを 結合したコードを作成する場合に便利です。セクション 5.5「読み込み可能なプロジェ クトとファイル : ブートローダ」を参照してください。 以下に、現在のプロジェクトと読み込み可能なプロジェクトおよびファイルの組み合 わせを示します。 表 5-1: 読み込み可能プロジェクト / ファイルの組み合わせ 現在のプロジェクト 既存のスタンドアロン MPLAB IDE v8 ライブラリ ビルド済み (HEX) 読み込み可能プロ ジェクト / ファイル スタンドアロン なし HEX ファイル なし COF/ELF ファイル • デバッグできますがビルドはできません。 • エラーが [Output] ウィンドウに表示されます。 HEX ファイル • 重複しているメモリ領域は自動ではチェック しません。 • デバッグできますがビルドはできません。 • [Build] ボタンは無効になります。 COF/ELF ファイル ビルド済み (COF/ELF) 注意 HEX ファイル COF/ELF ファイル 以下にオプションを示します。 表 5-2: 読み込み可能プロジェクト / ファイルのオプション 読み込み可能 プロジェクト の追加 現在のプロジェクトに既存のプロジェクトを読み込みます。 現在のプロジェクトをビルドする際に、全てのプロジェクトがビルドされ HEX ファイルが 1 つに結合されます。デバッグファイルも全てが結合されます (COFF または ELF)。 読み込み可能 ファイルの 追加 現在のプロジェクトに既存の HEX ファイルを読み込みます。 現在のプロジェクトをビルドする際に、読み込んだ HEX ファイルとその他の HEX ファイルが 1 つのファイルに結合されます。 Note: HEX ファイルを読み込んだプロジェクトはデバッグできません。 デバッグが必要な場合、読み込み可能プロジェクトを使います。 代替ファイル の追加 代替 HEX ファイルを読み込みます。 このオプションを使うとビルド後の処理を設定できます。この処理では、 プロジェクトの HEX ファイルを別の場所にコピーまたは移動し、HEXMATE 等のツールを使ってファイルを別の HEX ファイルとマージし、IDE に読み戻す 事ができます。 読み込み可能プロジェクト / ファイルの設定については、以下を参照してください。 • [Projects] ウィンドウ – [Loadables] フォルダによる設定 • [Project Properties] ウィンドウ – [Loading] カテゴリによる設定 • 読み込み可能プロジェクト / ファイルの推奨使用法 DS50002027D_JP - p.124 2016 Microchip Technology Inc. 追加作業 5.4.1 [Projects] ウィンドウ – [Loadables] フォルダによる設定 [Projects] ウィンドウの [Loadables] フォルダを右クリックして、以下のオプションを 選択します ( 図 5-2)。 • Add Loadable Project – 既存のプロジェクトを選択して、現在のプロジェクトに追加 します。さらにプロジェクトを追加するには手順を繰り返します。 • Add Loadable Files – 既存の HEX ファイルを選択して、現在のプロジェクトに追加 します。さらに HEX ファイルを追加するには手順を繰り返します。 • Properties – 読み込みのために [Project Properties] ウィンドウを開きます。セクション 5.4.2「[Project Properties] ウィンドウ – [Loading] カテゴリによる設定」を参照し てください。 全てのプロジェクトをビルドして HEX ファイルを 1 つに結合するには、現在のプロ ジェクトをビルドします。デバッグファイルも全て結合されます。 図 5-2: 5.4.2 [Projects] ウィンドウ – [Loadables] フォルダ [Project Properties] ウィンドウ – [Loading] カテゴリによる設定 [Project Properties] ウィンドウを開き ([File] > [Project Properties])、[Loading] カテゴリを クリックします。 • • • • 現在のプロジェクトを他のプロジェクトと結合する方法 現在のプロジェクト HEX ファイルを他の HEX ファイルと結合する方法 代替 HEX ファイルを読み込む方法 プログラミング / ビルド中にデバッグシンボルを読み込む方法 セクション 9.6「MPLAB X IDE の問題」も参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.125 MPLAB® X IDE ユーザガイド 図 5-3: [Project Properties] ウィンドウ – [Loading] カテゴリ 5.4.2.1 現在のプロジェクトを他のプロジェクトと結合する方法 1. [Add Loadable Project] をクリックする ([Add Loadable Project] ダイアログが開 きます )。 2. プロジェクトを選択する。 3. [Configurations] からこのプロジェクトで使うビルド コンフィグレーションを選 択する ( このプロジェクトに他のコンフィグレーションを追加していなければ、 ここには [default] しか表示されません )。 4. [Store path as] から、読み込み可能プロジェクトへのパス情報の保存方法を選択 する。以下から選択する。 a) Auto – 読み込み可能プロジェクトへのパスを相対パスと絶対パスのどちらにす るかを、その格納場所に基づいて MPLAB IDE が決定できるようにします。 メイン プロジェクトのフォルダに読み込み可能プロジェクトが含まれている場合、 参照は相対パスになります。それ以外の場合、参照は絶対パスになります。 b) Relative – 読み込み可能プロジェクトを ( メイン プロジェクトへの ) 相対パス で参照します。 これは、パスを追加する際に推奨する方法です。 c) Absolute – 読み込み可能プロジェクトを絶対パスで参照します。 このモードが便利な場合もありますが、プロジェクトを別のシステムに移動 する場合、しばしばパスの修正が必要です。 5. [Add] をクリックしてダイアログを閉じる。 6. 現 在 の プ ロ ジ ェ ク ト の ビ ル ド に こ の プ ロ ジ ェ ク ト を 含 め る 場 合、[Project Properties] ウィンドウで [Build] にチェックを入れる。 7. 追加の順序を変更するには、[Up] および [Down] ボタンを使う ( 複数のプロジェ クトを追加した場合、ここに表示される順序が、現在のプロジェクトの HEX ファ イルにこれらの HEX ファイルが追加される順序を決定します )。 8. [Apply] または [OK] をクリックして変更を確定する。 次に現在のプロジェクトをビルドする際は、ここに表示されたプロジェクトも ([Build] がチェックされていれば ) ビルドされ、それらの HEX ファイルが現在のプロジェクトの HEX ファイルと結合されて、1 つの出力 HEX ファイルが生成されます。デバッグファ イルも全て結合されます。 DS50002027D_JP - p.126 2016 Microchip Technology Inc. 追加作業 図 5-4: 5.4.2.2 [Add Loadable Project] ダイアログ 現在のプロジェクト HEX ファイルを他の HEX ファイルと結合する方法 1. [Add Loadable File]をクリックする([Add Loadable File]ダイアログが開きます)。 2. HEX ファイルを選択する。 3. [Store path as] から、読み込み可能ファイルへのパス情報の保存方法を選択する。 以下から選択する。 a) Auto – 読み込み可能ファイルへのパスを相対パスと絶対パスのどちらにする かを、その格納場所に基づいて MPLAB IDE が決定できるようにします。 メイン プロジェクトのフォルダに読み込み可能ファイルが含まれている場合、 参照は相対パスになります。それ以外の場合、参照は絶対パスになります。 b) Relative – 読み込み可能ファイルを ( メイン プロジェクトへの ) 相対パスで参照 します。 これは、パスを追加する際に推奨する方法です。 c) Absolute – 読み込み可能ファイルを絶対パスで参照します。 このモードが便利な場合もありますが、プロジェクトをあるシステムから別 のシステムに移動する場合の多くで、これらのパスは修正が必要です。 4. [Add] をクリックしてダイアログを閉じる。 5. 追加の順序を変更するには、[Up]および[Down]ボタンを使う([Project Properties] ウィンドウで、複数のファイルを追加した場合、ここに表示される順序が、現在 のプロジェクトの HEX ファイルにこれらの HEX ファイルが追加される順序を決 定します )。 6. [Apply] または [OK] をクリックして変更を確定する。 次に現在のプロジェクトをビルドする際は、ここに表示された HEX ファイルが現在 のプロジェクトの HEX ファイルと結合されて、1 つの出力 HEX ファイルが生成され ます。 量産ビルドまたはプログラミング中にデバッグシンボルを読み込む方法 既 定 値 で は、[Load symbols when programming or building for production (slows process)] のチェックボックスはチェックが外れています。この場合、HEX ファイル のみが読み込まれます。 2016 Microchip Technology Inc. DS50002027D_JP - p.127 MPLAB® X IDE ユーザガイド このチェックボックスにチェックを入れると、HEX ファイルと全てのデバッグシン ボルが読み込まれます。この場合、プログラミング / ビルドの処理速度は遅くなります。 しかしこの方法は、RTDM と DMCI を使う場合 ( モータ制御アプリケーション等 ) に 必要です。 図 5-5: 5.4.2.3 読み込み可能ファイルの追加 代替 HEX ファイルを読み込む方法 1. [Use this .hex file instead of MainProjectHexFile] にチェックを入れます。 2. [...] をクリックして、[Add Loadable File] ダイアログを開きます。このダイアログを 使った HEX ファイルの追加の詳細はセクション 5.4.2.2「現在のプロジェクト HEX ファイルを他の HEX ファイルと結合する方法」を参照してください。 次に現在のプロジェクトをビルドする際、その完了時に代替 HEX ファイルが読み込 まれます。 5.4.2.4 プログラミング / ビルド中にデバッグシンボルを読み込む方法 RTDM と DMCI を使う場合 ( モータ制御アプリケーション等 )、[Load symbols when programming or building for production (slows process)] のチェックボックスにチェックを 入れると、プログラミング中にデバッグシンボルを読み込む事ができます。それ以外 の場合、チェックボックスのチェックは外したまま ( 既定値 ) にしてプログラミング とビルドの速度を向上させます。 5.4.3 読み込み可能プロジェクト / ファイルの推奨使用法 読み込み可能プロジェクト / ファイルは、以下の方法で使う事を推奨します。 1. デバイスのコンフィグレーション ビットの設定と初期化を行うプロジェクトを メイン プロジェクトとして選択します ( 右クリックして [Set as Main Project] を 選択 )。メイン プロジェクトと競合するため、読み込み可能プロジェクト / ファ イルにデバイス コンフィグレーション設定を持たせる事はできません。 2. 他のプロジェクトを、読み込み可能プロジェクト / ファイルとしてメイン プロジェ クトに追加します。読み込むプロジェクトに複数のプロジェクト コンフィグレー ションが設定されている場合、読み込む際にそれらを全て指定します。 読み込み可能プロジェクト/ファイルを含むプロジェクトをメイン プロジェクトに指定 しておく事で、どの読み込み可能プロジェクト / ファイルに変更が生じても、ビルドを 実行する際にその変更が確実に反映されるようにします。 DS50002027D_JP - p.128 2016 Microchip Technology Inc. 追加作業 5.5 読み込み可能なプロジェクトとファイル : ブートローダ ブートローダとアプリケーションのコードを結合する方法 1. アプリケーション用とブートローダ用にそれぞれ1つずつプロジェクトを作成する。 2. ブートローダのプロジェクトまたは HEX ファイルをアプリケーション プロジェ クトに読み込む ( その方法はセクション 5.4.1「[Projects] ウィンドウ – [Loadables] フォルダによる設定」またはセクション 5.4.2「[Project Properties] ウィンドウ – [Loading] カテゴリによる設定」を参照してください )。 次にアプリケーション プロジェクトをビルドすると、ブートローダとアプリケーション の HEX ファイルが結合されたものが生成されます。デバッグファイルも全て結合さ れます。 ビルドのエラーはセクション 5.4.3「読み込み可能プロジェクト / ファイルの推奨使用 法」または以下のセクションを参照してください。 注意事項 #1: PIC18 MCU (MPLAB C18) 向け MPLAB C コンパイラ このコンパイラはアプリケーションの起動コード (c018x.o) を生成します。リセット ベクタ ( アドレス 0) で始まるこの起動コードはソフトウェア スタックの初期化、必要 に応じて idata セクションの初期化、main() へのジャンプを含みます。この起動 コードがアプリケーション内に残っていると、ブートローダ コードリセットと競合が 生じ、データ競合に関するリンカエラー メッセージが表示されます。 解決策の 1 つは、0 以外のアドレスで始まるように起動コードを編集する事です。 注意事項 #2: MPLAB XC8 – PIC18 MCU の例 以下の Microchip 社ウェブセミナーでは、PIC18 MCU 向けにブートローダとアプリ ケーション コードを組み合わせる方法を、MPLAB XC8 と MPLAB X IDE を使って詳 しく説明しています。 「Linking PIC18 Bootloaders & Applications」 2016 Microchip Technology Inc. DS50002027D_JP - p.129 MPLAB® X IDE ユーザガイド 5.6 ライブラリ プロジェクト IDE が生成した makefile を使うライブラリ プロジェクトを新規作成し、プロジェクトを 実行ファイルではなくライブラリ ファイルとしてビルドします ( 赤のテキストを参照 )。 図 5-6: ライブラリ プロジェクトの例 まず、以下のどちらかの方法で [New Project] ウィザードを開きます。 • [Start Page] で、[Learn & Discover] タブを開き、[Dive In] セクションで [Create New Project] へのリンクを選択する • [File] > [New Project] を選択する ( または <Ctrl>+<Shift>+<N>) [New Project] ウィザードが起動し、プロジェクトの新規作成を支援します。[Next>] をクリックすると次のステップに進みます。 • Step 1. Choose Project: [Microchip Embedded] カテゴリを選択し、プロジェクト タイプ [Library Project] からプロジェクトを選択します。 • Step 2. Select Device: アプリケーションで使う予定のデバイスを [Device] ドロップ ダウン リストから選択します。選択肢を絞り込むために、最初にデバイスファミリ を選択します。 • Step 3. Select Header: このステップは、選択したデバイスでヘッダが利用可能である場合に表示されます。 デバイスがヘッダを必要とするか、またはデバッグ回路を内蔵しているかどうかは、 『Processor Extension Pak (PEP) およびデバッグヘッダ仕様』(DS51292 またはオン ラインヘルプ ) で確認できます。上記を確認してからヘッダを使うかどうかを選択 します。 • Step 4. Select Tool: アプリケーションの開発に使う開発ツールをリストから選択 します。 選択したデバイスに対するツールのサポートレベルが、ツール名の横のマークで 色分け表示されます。緑は完全サポート、黄はベータサポート、赤は未サポート を意味します。 • Step 5. Select Compiler: アプリケーションの開発に使う言語ツール ( コンパイラ ) を リストから選択します。 選択したデバイスに対するツールのサポートレベルが、ツール名の横のマークで 色分け表示されます。緑は完全サポート、黄はベータサポート、赤は非サポート を意味します。 • Step 6. Select Project Name and Folder: 新規プロジェクトの名前と格納場所を選択 します。ダイアログを使って格納場所を選択できます。 作成したプロジェクトが [Projects] ウィンドウ内に表示されます。 必要に応じてライブラリ プロジェクトをスタンドアロン ( アプリケーション ) プロ ジェクトに変更できます。詳細はセクション 4.14.1「プロジェクト コンフィグレー ション タイプの変更」を参照してください。 DS50002027D_JP - p.130 2016 Microchip Technology Inc. 追加作業 5.7 その他の組み込みプロジェクト MPLAB X IDE では、他の組み込みプロジェクトを選択して、そこからプロジェクト を作成できます。 1. [File] > [New Project] を選択します。 2. [Categories] の下の [Other Embedded] をクリックし、使用可能な組み込みプロ ジェクトのリストから選択します。 3. MPLAB X IDE プロジェクトの作成を継続します。 この機能は既存ファイルを MPLAB X IDE プロジェクトにインポートします。他の組 み込みプロジェクト設定の変換やコード変換には未対応です。 MPLAB X IDE の使い方の詳細は以下を参照してください。 • 第 3 章「チュートリアル」 • 第 4 章「基本作業」 使用可能なコンパイラの詳細は以下を参照してください。 http://www.microchip.com/xc 5.8 サンプル プロジェクト サンプル プロジェクトを作成すると、Microchip 社のデバイス、ツール、MPLAB X IDE の習得に役立ちます。 1. [File] > [New Project] を選択します。 2. [Categories] の下の [Samples]>[Microchip Embedded] をクリックし、使用可能な 組み込みプロジェクト ( デモボードのライトを点滅させるもの ) またはテンプレート プロジェクトのリストから選択します。詳細は説明を参照してください。 デモボードの製品番号は以下の通りです。 Explorer16 デモボード : DM240001 PICDEM 2 Plus: DM163022-1 5.9 他のタイプのファイルを使った作業 [File] > [New File] を選択すると、多くのタイプのファイルが提示されますここまでは、 Microchip 社のコンパイラ ファイルを使った作業を検討してきました。しかし、使う プロジェクト言語ツールや特定のファイルを作成する必要性に応じて、他のタイプの ファイルを選択する事もできます。 表 5-3: ファイルタイプ カテゴリ ファイルタイプ Microchip Embedded MPLAB X IDE がサポートする言語ツール用のファイルです。 利用可能なファイルタイプは、コンパイラ フォルダを選択すると表示されます。 C 汎用 C ファイル C++ 汎用 C++ ファイル Assembler 汎用アセンブリ ファイル Shell Scripts シェルスクリプト ファイル : Bash, C, Korn 等 Makefiles Makefile ファイル XML XML ファイル Other HTML、JavaScript 等の他のタイプのファイル 一覧に必要なファイルタイプが表示されない場合、[Empty File] を選択し、次の ウィンドウで、拡張子と共にファイルに名前を付けます。 2016 Microchip Technology Inc. DS50002027D_JP - p.131 MPLAB® X IDE ユーザガイド 5.10 コード テンプレートの変更または作成 プロジェクトに追加するファイルを作成 ( セクション 4.9「ファイルの新規作成」参照 ) する際に、新規ファイル用のテンプレートを使います。このテンプレートを編集する には、[Tools] > [Templates] から [Open in Editor] を選択します。このダイアログの [Add] または [Duplicate] ボタンを使って、テンプレートを新規作成する事もできます。 [New Folder] ボタンを使うと、テンプレートを保存する新しいフォルダを作成できます。 MPLAB X IDE は「Microchip Embedded」 、 「Shell Scripts」 、 「Makefiles」 、 「Other」以外の 全てのフォルダを無視するため、ファイルまたはフォルダは、これらのフォルダの下 に作成する必要がある事に注意してください。 図 5-7: テンプレート マネージャ テンプレート オプションは、[Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択し、[Editor] ボタンをクリックし、[Code Templates] タブで設定 できます ( 以下を参照 )。 「fcom」オプションは、C コード用のコメント オプションです。[Editor] ウィンドウ に「fcom」と入力して <Tab> キーを押すと、以下のテキストが挿入されます。 // <editor-fold defaultstate="collapsed" desc="${comment}"> ${selection}${cursor}// </editor-fold> このオプションを使うと、上記テキストで囲まれたコードセクションを非表示 ( 折り 畳み )/ 表示 ( 展開 ) できます。 DS50002027D_JP - p.132 2016 Microchip Technology Inc. 追加作業 図 5-8: テンプレート オプション 2016 Microchip Technology Inc. DS50002027D_JP - p.133 MPLAB® X IDE ユーザガイド 5.11 ハードウェア ツールまたは言語ツールの切り換え 現在接続しているものと異なるデバッグツールを選択しているプロジェクトを実行 またはデバッグ実行しようとした場合、接続中のハードウェア ツールをそのプロジェ クト用に使うかどうかを確認する以下のダイアログが表示されます。 図 5-9: [Switch Hardware Tool] ダイアログ 複数のハードウェア ツールを接続しておき、[Project Properties] ダイアログ ([File] > [Project Properties]) でそれらのツールを切り換える事もできます。 複数バージョンのコンパイラ ツールチェーン ( 言語ツール ) を切り換える場合も、 [Project Properties] ダイアログを使います。 DS50002027D_JP - p.134 2016 Microchip Technology Inc. 追加作業 5.12 プロジェクト フォルダとエンコードの変更 プロジェクトを作成した際、プロジェクト フォルダとエンコードを指定しました。 プロジェクト作成後は、[Project Properties] ウィンドウの [General] カテゴリを使っ てプロジェクト フォルダを追加または無視し、プロジェクト エンコードを変更でき ます。 表 5-4: [Project Properties] ウィンドウ – [General] カテゴリ オプション 説明 [Project Location] 現在のプロジェクトの格納場所を表示します。 プ ロ ジェクトの格納場所の変更は セクション 8.9「プロジェクトの移動、 コピー、リネーム」を参照してください。 [Source Folders] プロジェクト ファイルを探す際に MPLAB X IDE が検索するフォルダを追 加します。 Note: プロジェクト フォルダの外にファイルを追加するとプロジェクトの 移植性が損なわれる場合があります。 [Ignored 指定した正規表現パターンに従ってプロジェクト フォルダ内のフォルダを Folders Pattern] 無視します。 [Encoding] プロジェクト エンコードを変更します。 この選択によって、コード構文の色分け設定が決まります。色分けは [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択し、[Fonts and Colors] ボタンをクリックして、[Syntax] タブより編集できます。 図 5-10: [Project Properties] ウィンドウ – [General] カテゴリ 2016 Microchip Technology Inc. DS50002027D_JP - p.135 MPLAB® X IDE ユーザガイド 5.13 ビルド時間の短縮 PC によっては、並列 make( セクション 12.14.2「[Project Options] タブ」参照 ) を 使ってプロジェクトのビルド時間を短縮できる場合があります。並列 make をサポー トしていない言語ツールもあります。 オペレーティング システム (OS) の変更を検討する方法もあります。OS によっては、 より高速にファイルをアクセスできます。MPLAB X IDE は Windows, Linux, Mac OS をサポートしているため、その中でどれが適しているかを検討します。 5.14 ストップウォッチの使用 ストップウォッチを使うと、2 つのブレークポイント間のタイミングを調べる事がで きます。 ストップウォッチの使い方 1. ストップウォッチを開始するブレークポイントを追加する。 2. ストップウォッチを停止するブレークポイントを追加する。 3. [Window] > [Debugging] > [Stopwatch]を選択し、ウィンドウの左にある[Properties] アイコンをクリックし、開始および停止ブレークポイントを選択する。 4. その後にプログラムをデバッグ実行すると、ストップウォッチのタイミング結果 が表示される。 図 5-11: ストップウォッチの設定 図 5-12: [Stopwatch] ウィンドウの内容 DS50002027D_JP - p.136 2016 Microchip Technology Inc. 追加作業 [Stopwatch] ウィンドウの左側には以下のアイコンが表示されます。 表 5-5: ストップウォッチ アイコン アイコン 5.15 アイコンテキスト 説明 Properties ストップウォッチのプロパティを設定します。現在の ブレークポイントまたはトリガの 1 つを開始する時点、もう 1 つを停止する時点として選択します。 Reset Stopwatch on Run 実行開始時にストップウォッチの時間を 0 にリセットします。 Clear History [Stopwatch] ウィンドウをクリアします。 Clear Stopwatch ( シミュレータのみ ) デバイスのリセット後にストップ ウォッチをリセットします。 [Disassembly] ウィンドウの表示 このウィンドウは逆アセンブルコードを表示します。このウィンドウは、[Window] > [Debugging] > [Output] > [Disassembly Listing File] と選択して開きます。 この情報は、リンカが生成したリスティング ファイルにも含まれている場合があります。 このファイルを開くには、[File] > [Open File] を選択し、ProjectName.lst ファイルを 選択します。 逆アセンブル ファイル全体を素早く表示するには、[Disassembly] ウィンドウで右 クリックして [Disassembly Listing File] を選択します。 Note: 5.16 [Disassembly] ウィンドウは各命令を逆アセンブルします。しかし、命令に 関連したバンク切り換えの履歴は保持していません。従って、ウィンドウ に表示される SFR 名は Bank 0 用です。 コールスタックの表示 16/32 ビットデバイスでは、[Call Stack] ウィンドウを使って、実行中の C コード内の CALL と GOTO を表示できます。このウィンドウは、アセンブリコードには対応してい ません ( コールスタックを使う場合、コードの最適化を OFF にする事を推奨します )。 [Call Stack] ウィンドウは、関数とその引数を、実行中のプログラムで呼び出された順 番に一覧表示します。 コールスタックの表示方法 1. プログラムをデバッグ実行し、一時停止する。 2. [Window] > [Debugging] > [Call Stack] を選択して [Call Stack] ウィンドウを開く。 セクション 12.4「[Call Stack] ウィンドウ」も参照してください。 コールスタックの詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications With gdb] > [Using the C/C++/Fortran Call Stack]) を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.137 MPLAB® X IDE ユーザガイド 5.17 コールグラフの表示 [Call Graph] ウィンドウは、選択した関数からコールされている関数、または、選択 した関数をコールしている関数をツリー構造で表示します。 コールグラフの表示方法 選択 ( 強調表示 ) した関数を右クリックし、ドロップダウン メニューから [Show Call Graph] を選択する。 詳細 は NetBeans ヘ ルプ トピッ ク ([C/C++/Fortran Development] > [Working With C/C++/Fortran Projects] > [Navigating Source Files and Projects] > [Using the Call Graph]) を参照してください。 図 5-13: DS50002027D_JP - p.138 main 関数のコールグラフ 2016 Microchip Technology Inc. 追加作業 5.18 ダッシュボードの表示 [Window] > [Dashboard] を選択すると、プロジェクト情報を表示できます。 図 5-14: ダッシュボードの表示 ダッシュボードは、以下のどちらかのプロジェクトを表示します。 • メイン プロジェクトが未選択 ([Run] > [Set Main Project] > [None]) の場合、 [Projects] ウィンドウ内でアクティブなプロジェクト ([Projects] ウィンドウ内でいずれかのプロジェクトをクリックすると、そのプロジェ クトがアクティブになります ) • メイン プロジェクト ( 他のプロジェクトは、アクティブ / 非アクティブに関係なく表示されません ) 2016 Microchip Technology Inc. DS50002027D_JP - p.139 MPLAB® X IDE ユーザガイド 5.18.1 ダッシュボードのグループ [Dashboard] ウィンドウのプロジェクト情報はグループごとに表示されています。 表 5-6: ダッシュボードのグループ グループ 定義と説明 プロジェクト名 • アクティブ / メイン プロジェクトの名前 • プロジェクト タイプ ( アプリケーションまたはライブラリ ) とプロジェ クト コンフィグレーション ( 既定値またはユーザ定義 ) Device • プロジェクト デバイス • 実行またはデバッグ実行中に生成された全てのステータスフラグ • デバイスのメモリに読み込んだ内容のチェックサム ( チェックサムを表示するにはビルドする必要があります。) セクション 6.10「チェックサム」を参照してください。 Compiler Toolchain • プロジェクト ツールチェーン名 ( 例 : XC8)、( ツールのバージョン番号 )、 [ 実行ファイルへのパス ] • イメージタイプ ( 量産またはデバッグ )、ツールチェーンのライセンスタ イプに対応する最適化レベル ( 最適化の詳細は言語ツールの文書を参照してください。) • コンパイラ ライセンス * の情報 : ( コンパイラ ライセンスの詳細は http://www.microchip.com/mplabxc を参 照してください。) - license type: ワークステーションまたはネットワーク - license mode: FREE, STD, PRO - license seats: 利用できるシートの総数 - licenses available: 利用できるライセンスの数 - HPA – HPA が終了するまでの日数 - Expire – ライセンスが失効するまでの日数 - Press for status – [Output] ウィンドウにステータスを表示します。 * コンパイラ ライセンスを表示するには MPLAB XC8 v1.34, MPLAB XC16 v1.25, MPLAB XC32 v1.40 のいずれかを入手する必要があります。 Memory • Usage Symbols disabled. のアラートが出ている場合、アラートをクリック して有効にします。[Project Properties] ウィンドウの [Loading] カテゴリを クリックして開きます。[Load symbols when programming or building for production (slows process)] チェックボックスにチェックを入れます。 • メモリのタイプ (Data または Project) とデバイスでの利用可能容量 • 使用済みメモリは残りのメモリ容量の目安になります。 コンパイラはプログラム空間の使用率、コンフィグレーション ビット、 ID 位置、EEPROM( デバイスに内蔵されている場合 ) の詳細を記載した メモリ概要を出力します。 これらのメモリ空間の合計は、ワードサイズで考えると [Dashboard] の [Program Used] と一致します。メモリ容量が比較的少ないデバイスでは、 マップファイルを確認する必要があります。 Debug Tool ハードウェア デバッグツール • デバッグツールの名前とシリアル番号 • デバッグツールの接続接続はデバッグ実行、実行、プログラミング中に のみアクティブになります。その他の状態での接続は非アクティブです。 ツールの接続を常時アクティブにするには、[Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択し、[Embedded] ボタンを クリックし、[Generic Settings] タブを開いて、[Maintain active connection to hardware tool] にチェックを入れます。 • [Refresh Debug Tool Status] ボタンをクリックすると、ハードウェア デバッグツールのファームウェア バージョンと現在の電圧レベルが表示 されます。 シミュレータ • デバッグツールの名前 ( 例 : シミュレータ ) • シミュレートする周辺モジュールをクリックしてサポートされている周辺 モジュールを表示します。 DS50002027D_JP - p.140 2016 Microchip Technology Inc. 追加作業 表 5-6: ダッシュボードのグループ ( 続き ) グループ Debug Resources 5.18.2 定義と説明 ハードウェア ブレークポイント 現在使用中のブレークポイント数とプロジェクト デバイス向けに使用可能 なブレークポイント数を示します。 ソフトウェア ブレークポイント プロジェクト デバイスでソフトウェア ブレークポイントがサポートされ ているかどうかを示します。 デバッグツール アクセサリ このプロジェクトで使っているデバッグツール アクセサリ ( デバッグヘッダ 等 ) の種類を示します。 [Dashboard] アイコン [Dashboard] ウィンドウの左側のアイコンで、下表の各種機能にアクセスできます。 表 5-7: サイドバーのアイコン アイコン 機能 プロジェクト プロパティ : [Project Properties] ダイアログを表示します。 デバッグツールのステータス表示を更新する : クリックすると、ハードウェア デバッグツールの詳細を表示します。 ソフトウェア ブレークポイントをトグル ( 有効化 / 無効化 ) する : クリックするたびにソフトウェア ブレークポイントの有効 / 無効が切り換わり ます。 この機能の状態はアイコンに表示されています。 中心が赤 : 無効 中心が緑 : 有効 中心が黒 : サポートしていない – 使用中のデバイスまたはツールで利用できる ブレークポイント数を超えている場合 デバイス データシートを開く : Microchip 社ウェブサイトから (http://www.microchip.com/) デバイスのデー タシートを開きます。ローカルに保存したデータシートを開くか、ブラウ ザを開いて Microchip 社ウェブサイトでデータシートを検索できます。 コンパイラのヘルプ : クリックすると、コンパイラ インストール フォルダの「docs」フォルダ内の 文書の主索引 ( 利用できる場合 ) が開きます。 2016 Microchip Technology Inc. DS50002027D_JP - p.141 MPLAB® X IDE ユーザガイド 5.19 コードの改良 リファクタリングおよび / またはプロファイリングを使ってコードを改良します。 Note: この機能については、[Start Page] の [My MPLAB X IDE] タブを開き、 [Extend MPLAB] セクションの「Selecting Simple or Full-Featured Menus」 トピックを参照してください。 コードのリファクタリングは、コードの機能を変更せずにコードを単純化します。現在、 C コードでは以下を行えます。 • 複数ファイルを通して、関数の使用箇所を検出する • 複数ファイルを通して、関数とパラメータの名前を変更する 詳細はセクション 7.7「C コードのリファクタリング」を参照してください。 コードのプロファイリングは、プログラムの実行中に CPU 使用率、メモリ使用率、 スレッド使用率を常時監視します。プロファイリング ツールは、C プロジェクト実行 時に常時動作します。 5.20 ソースコードの管理 多数のファイルを含む複雑なアプリケーションをチームで開発する場合、ソースコード の変更管理が必要です。MPLAB X IDE はソースファイルのバージョン管理機能を備 えています。さらに、外部のリビジョン ( ソースまたはバージョン ) 管理プログラム もサポートしています。 5.20.1 ローカル履歴 MPLAB X IDE は、NetBeans プラットフォームの特長であるローカルファイル履歴機能 を内蔵しています。この機能は、ローカル プロジェクトおよびファイル向けの、従来の バージョン管理システムのようなバージョン管理機能です。これにはローカル DIFF およびファイル復元ツールが含まれます。 ファイルのローカル履歴を表示させるには、[Project] または [File] ウィンドウで ファイルを右クリックし、[History] > [Show History] を選択します。そのファイルの 全変更履歴が表示されます。 前のバージョンに戻すには、[Project] または [File] ウィンドウでファイルを右クリックし、 [History] > [Revert to] を選択します。すると、[Revert to] ダイアログが開き、そのファ イルの全変更履歴が表示されます。いずれかのバージョンを選択し、[OK] をクリック すると、そのバージョンが復元されます。 5.20.2 リビジョン ( ソース / バージョン ) 管理システム 各種のリビジョン管理システム (RCS) を MPLAB IX DE と組み合わせて使う事ができ ます。一度設定すると、リビジョン管理操作はコンテクスト メニューからアクセスで きます。 5.20.2.1 対応システム 現在サポートしているソース / バージョン管理システムは以下の通りです。 • Git – http://git-scm.com/ • Subversion – http://subversion.tigris.org/ • Mercurial – http://mercurial.selenic.com/ 5.20.2.2 リビジョン管理システムの使用 ソース / バージョン管理の使い方 1. [Team] メニューからバージョン管理プログラムのサブメニューを選択し、その バージョン管理プログラムを設定する。 2. [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択して [Options] ウ ィ ン ド ウ を 開 き、[Miscellaneous] ア イ コ ン を ク リ ッ ク し、 [Versioning] タブを開いてバージョン管理機能を設定する。 3. [Window] > [Versioning] を選択して [Version Control] ウィンドウを開く。 DS50002027D_JP - p.142 2016 Microchip Technology Inc. 追加作業 図 5-15: 5.20.2.3 バージョン管理のオプション リビジョン管理されたファイルの競合の解消 チェックインしようとするファイルと、リビジョン システムのリポジトリ内の他の人 が変更した同じファイルとの間に競合が発生する場合があります。 これらの問題の解決方法は以下の例を参照してください。 例 5-1: CONFIGURATIONS.XML の競合 configurations.xml ファイルの競合の解消方法 1. 競合は以下によって通知されます。 a) 警告ダイアログ b) [Output] ウィンドウ 2. [Projects] ウィンドウの [Files] タブをクリックし、nbproject フォルダを展開す る。configurations.xml という名前のファイルを見つける ( 競合を示す赤い フォントで表示 )。 3. configurations.xml を右クリックして [RCS] > [Resolve Conflicts] (RCS は リビジョン管理システム ) を選択すると、[Merge Conflicts Resolver] ウィンドウ が開く。 4. [Merge Conflicts Resolver] ウィンドウを使って競合を解消する。詳細は NetBeans ヘ ル プ ト ピ ッ ク ([IDE Basics] > [Using the IDE Help System] > [Versioning Applications with Version Control]) を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.143 MPLAB® X IDE ユーザガイド 5. エラーが解決したらプロジェクトを閉じる。右クリックのコンテクスト メニュー が動作しない場合、[File] > [Close Project] を使ってプロジェクトを閉じる。 6. 再度プロジェクトを開く ( 競合は解消済みのはずです )。 5.20.2.4 保存するプロジェクト ファイル リポジトリに保存する必要があるプロジェクト ファイル 下表に、プロジェクト ファイルをバージョン管理リポジトリにコミットする必要があ るかどうかを示します。 表 5-8: リポジトリに保存するプロジェクト ファイル フォルダまたはファイル コミットの要否 プロジェクト フォルダ make ファイル (Makefile) ソースファイル build フォルダ dist フォルダ nbproject フォルダ configurations.xml project.properties project.xml Makefile-* Package-* private フォルダ 緑のチェック : プロジェクトのイメージを生成する必要があります。 赤の X 印 : これらのフォルダ / ファイルは再生成されるため保存する必要はありません。 プロジェクトの構成の詳細はセクション 8.3「[Files] ウィンドウの表示」を参照して ください。 ローカルファイルの履歴およびソース管理機能の詳細は NetBeans ヘルプトピック ([IDE Basics] > [Using the IDE Help System] > [Versioning Applications with Version Control]) を参照してください。 5.20.2.5 読み出し専用ファイルを使ったプロジェクトのビルド ファイルがリポジトリにチェックイン済みであり、一部のファイルが読み出し専用で ある場合、プロジェクトをビルドするには以下の手順で行います。 1. 最小限のファイルをソース管理にコミットする ( セクション 5.20.2.4「保存する プロジェクト ファイル」参照 )。 2. ファイル nbproject/configurations.xml および nbproject/project.xml を書き込み可能にする。 DS50002027D_JP - p.144 2016 Microchip Technology Inc. 追加作業 5.21 コード開発とエラー追跡の連携 MPLAB X IDE は、チームサーバ (Kenai.com 等 ) によるグループ間で連携したコード 開発をサポートします。 Note: この機能については、[Start Page] の [My MPLAB X IDE] タブを開き、 [Extend MPLAB] セクションの [Selecting Simple or Full-Featured Menus] トピックを参照してください。 サポートするメニュー項目は以下の通りです。 • [Team] – チームサーバのメインメニューです ( アカウントへのログイン、プロジェ クトの作成または読み込み、プロジェクトの共有、リソースの取得、チャット メッ セージの送信、コンタクトリストの表示 )。 • [File] > [Open Team Project] – 既存のチーム プロジェクトを開きます。 問題追跡システム (Bugzilla™ と JIRA®、要プラグイン ) を使って、バグ追跡で連携し ます。 これに関しては、以下のメニュー項目をサポートします。 • [Windows] > [Services] – [Issue Tracker] を右クリックし、問題トラッカーを追加し ます。 • [Team] > [Find Issues] – [Issue Tracker] ウィンドウ内で、プロジェクトで使う問題 トラッカーと評価基準を選択し、[Search] をクリックします。 • [Team] > [Report Issues] – [Issue Tracker] ウィンドウで問題トラッカーを選択し、 問題の詳細を指定し、[Submit] をクリックします。 チーム プロジェクトと問題追跡の詳細は NetBeans ヘルプトピック ([IDE Basics] > [Using the IDE Help System] > [Working in a Collaborative Environment]) を参照して ください。 これらのツールの詳細は以下を参照してください。 • Kenai – http://kenai.com/ • Bugzilla – http://www.bugzilla.org/ • JIRA – http://www.atlassian.com/software/jira/ 2016 Microchip Technology Inc. DS50002027D_JP - p.145 MPLAB® X IDE ユーザガイド 5.22 プラグインツールの追加 DMCI 等の MPLAB X IDE のプラグインツールは、IDE のプラグイン マネージャと Embedded Code Source ウェブサイトのどちらからでも追加できます。 • • • • • デバイス マネージャからのプラグインの追加 組み込みコード集からのプラグインの追加 プラグインの更新 更新センターの設定 プラグインコードの格納場所 5.22.1 デバイス マネージャからのプラグインの追加 利用可能なプラグインを表示およびインストールする方法 1. MPLAB X IDEで[Tools] > [Plugins]を選択し、 [Available Plugins]タブをクリックする。 2. 追加したいプラグインにチェックを入れ、[Install] をクリックする ( 図 5-16)。 3. 画面の指示に従って、プラグインをダウンロードおよびインストールする。 Note: プラグインによっては、インストールされる機能が他のプラグイン内の モジュールに依存するものがあります。そのような場合、プラグイン マネージャは警告を表示します。 4. インストール後、プラグインは [Installed] タブに表示される ( このプラグインに 対して無効にする、再度有効にする、アンインストールする、のいずれかの操作 を実行できます )。 5. [Tools] > [Embedded] を選択して、追加したツールを確認する ( 追加したツールが 表示されない場合、MPLAB X IDE を一度終了してから再起動すると表示される 場合があります )。 [Help] ボタンをクリックすると、プラグインのインストールに関するヘルプを表示で きます。 図 5-16: 利用可能な Microchip 社製プラグインツール DS50002027D_JP - p.146 2016 Microchip Technology Inc. 追加作業 5.22.2 組み込みコード集からのプラグインの追加 利用可能なプラグインを表示、ダウンロード、インストールする方法 1. Embedded Code Source ウェブサイト http://www.embeddedcodesource.com/category/mplab-x-plugins を開く。 2. プラグインを選択し、ウェブページの指示に従ってローカルフォルダにダウン ロードする。 3. ダウンロードした ZIP ファイルを解凍して .nbm ファイルを復元する。 4. MPLAB X IDE で [Tools] > [Plugins] を選択し、[Downloaded] タブをクリックする。 5. [Add Plugins] をクリックする。.nbm ファイルを選択し、[Open] をクリックし て開く ( 図 5-17)。 6. プ ラ グ イ ン 名 の 隣 の チ ェ ッ ク ボ ッ ク ス が チ ェ ッ ク さ れ て い る 事 を 確 認 し、 [Install] をクリックしてプラグインをインストールする ( 図 5-18)。 7. 画面の指示に従って、プラグインをダウンロードおよびインストールする。 Note: プラグインによっては、インストールされる機能が他のプラグイン内の モジュールに依存するものがあります。そのような場合、プラグイン マネージャが警告を表示します。 8. インストール後、プラグインは [Installed] タブに表示される ( このプラグインに 対して無効にする、再度有効にする、アンインストールする、のいずれかの操作 を実行できます )。 9. [Tools] > [Embedded] を選択して、追加したツールを確認する追加したツールが 表示されない場合、MPLAB X IDE を一度終了してから再起動すると表示されます。 図 5-17: ダウンロード済みの Microchip 社製プラグインツール 2016 Microchip Technology Inc. DS50002027D_JP - p.147 MPLAB® X IDE ユーザガイド 図 5-18: ダウンロード済み Microchip 社製プラグインツールのインストール 5.22.3 プラグインの更新 使用中のプラグインに更新版が存在するかどうかを判断する方法 1. MPLAB X IDE で [Tools] > [Plugins] を選択し、[Updates] タブをクリックする。 2. [Check for Updates] をクリックする。 3. 更新版が表示される場合、プラグイン名がチェックされている事を確認し、 [Update] をクリックする。 4. 画面の指示に従って、プラグインを更新する。 MPLAB X IDE の新バージョンをインストールしても、インストール済みのプラグインは 更新されません。プラグインは、そのリリースに付けられたバージョンのインター フェイスでテストされています。全てのプラグインがバージョン間で移行可能とは限 らず、そのまま流用される事はありません。これは NetBeans に対してもあてはまり ます。従って、新しいバージョンの MPLAB X IDE をインストールした場合、プラグ インの再インストールが必要な場合があります。 DS50002027D_JP - p.148 2016 Microchip Technology Inc. 追加作業 5.22.4 更新センターの設定 [Plugins] ウィンドウに利用可能なプラグインを表示させるには、更新センターを設定 する必要があります。MPLAB X IDE には 2 つの Microchip 更新センターがあらかじ め設定されています。 • http://ww1.microchip.com/downloads/mplab/X/plugins/updates.xml • http://ww1.microchip.com/downloads/mplab/X/thirdpartyplugins/updates.xml プラグイン マネージャで別の更新センターを設定する方法 1. 2. 3. 4. 5. 図 5-19: [Tools] > [Plugins] を選択し、[Settings] タブをクリックする。 [Add] ボタンをクリックして、[Update Center Customizer] ダイアログを開く。 更新センターの名前を入力する。 更新センターの URL を入力する。 [OK] をクリックする。 Microchip 更新センターの設定 5.22.5 プラグインコードの格納場所 プラグインコードは MPLAB X IDE のユーザ コンフィグレーション データと一緒に 保存されています。セクション 8.7「ユーザ コンフィグレーション データの表示」を 参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.149 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.150 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 6 章 高度な作業とコンセプト 6.1 はじめに 本章では、MPLAB X IDE の高度な作業を解説します。これ以外の作業に関する説明は、 第 4 章「基本作業」と第 5 章「追加作業」に記載しています。 作業 • • • • • • • • MPLAB X IDE の高速化 複数プロジェクトを使った作業 複数コンフィグレーションを使った作業 ユーザ Makefile プロジェクトの作成 MPLAB X IDE プロジェクトのパッケージ化 サードパーティ製ハードウェア ツール ログデータ ツールバーのカスタマイズ コンセプト • チェックサム • コンフィグレーション 6.2 MPLAB X IDE の高速化 MPLAB X IDE の動作が遅過ぎる場合、以下を考慮します。 • PC のヒープの増加 • デバッグツールの使用 6.2.1 PC のヒープの増加 mplab_ide.conf ファイルを編集すると、MPLAB X IDE に割り当てられているメモリ 容量を変更できます。このファイルは、編集する前にバックアップしておく事を推奨 します。このファイルの内容を変更する場合、その変更は次回 MPLAB X IDE を起動 した時に有効になります。 Windows OS (64 ビット ) C:\Program Files (x86)\Microchip\MPLABX\vx.xx\mplab_ide\etc Windows OS (32 ビット ) C:\Program Files\Microchip\MPLABX\vx.xx\mplab_ide\etc Linux OS /opt/microchip/mplabx/vx.xx/mplab_ide/etc Mac OS X /Applications/microchip/mplabx/vx.xx/Contents/Resources/mplab_ide/etc (vx.xx は MPLAB X IDE のバージョンです。) 2016 Microchip Technology Inc. DS50002027D_JP - p.151 MPLAB® X IDE ユーザガイド 以下の行は既定値を収めています。 default_options="-J-Dnb.FileChooser.useShellFolders=false -J-Dcrownking.stream.verbosity=very-quiet -J-Xms256m -J-Xmx512m -J-XX:PermSize=128m -J-XX:MaxPermSize=384m -J-XX:+UseConcMarkSweepGC -J-XX:+CMSClassUnloadingEnabled" 太字の部分は以下の通りです。 -Xms256m: JVM が、256 MB 以上のヒープを割り当てる事を意味します。 -Xmx512m: JVM が、512 MB 以下のヒープを割り当てる事を意味します。 -XX:PermSize=128m: JVM が、ヒープに収まらないデータの追加に必要な空間とし て 128 MB を割り当てる事を意味します。 -XX:MaxPermSize=384m: JVM が、ヒープに収まらないデータの追加に必要な空間 として 384 MB 未満を割り当てる事を意味します。 以下のエラーが発生しない限り、PermSize または MaxPermSize を変更する必要は ありません。java.lang.OutOfMemoryError: PermGen space 最も重要な部分は -Xmx512m です。この値は MPLAB X IDE が使うヒープ量の最大値 を指定しています。一見、大きなヒープ量を設定した方が良いように見えるかもしれ ません。しかし、MPLAB X IDE にメモリを使う事は他のアプリケーションとシステム機 能に使うメモリが少なくなる事を意味しています。 メモリモニタを有効にすると、IDE が使うメモリの量を監視できます。ツールバー領 域の空いた所を右クリックして [Memory] を選択します。または、[View] > [Toolbars] > [Memory] を選択します。 mplab_ide.conf の値を変えない限り、上限値は 512 MB です。-Xmx512m の設定は 128 MB 刻みで変更する事を推奨します。大容量のメモリを使える場合、128 MB を 超える刻みで増やす事もできます。しかし、システムの他の部分のために十分なメモリ が残っている事を確認してください。 6.2.2 デバッグツールの使用 デバッグツールを使うと MPLAB X IDE が遅くなる場合、以下を試します。 • 必要なウィンドウのみを表示させる (MPLAB X IDE デバッガは、デバッグツールの 使用中、開いているウィンドウを全て監視するためです )。 • デバッグのステップ実行中の [Stack] ウィンドウの更新頻度を低くする。[Tools] > [Options] ウィンドウの [Embedded] ボタンをクリックし、[Generic Settings] タブ の [Disable auto refresh for call stack view during debug sessions] と [On mouse-over structure and array expressions, evaluate integral members only] にチェックを入れる。 DS50002027D_JP - p.152 2016 Microchip Technology Inc. 高度な作業とコンセプト 6.3 複数プロジェクトを使った作業 MPLAB X IDE では、複数のプロジェクトを開いて作業できます。 MPLAB X IDE で複数のプロジェクトを開いて [Projects] ウィンドウに表示できます。 このウィンドウの詳細は本書のセクション 12.13「[Projects] ウィンドウ」を参照して ください。 図 6-1: [Projects] ウィンドウに表示した複数のプロジェクト アクティブなプロジェクト [Projects] ウィンドウ内でいずれかのプロジェクトをクリックすると、そのプロジェ クトがアクティブになります。 アクティブなプロジェクトを設定しないで作業する事もできます。その場合 IDE は、 作業中のプロジェクトをコンテクストで判断します。すなわち、あるファイルに フォーカスするようにエディタを設定すると、そのファイルを含むプロジェクトが操 作を受けるプロジェクトになります ( 例 : [Debug Run] ボタン押下時 )。 メイン プロジェクト 以下のどちらかの方法により、1つのプロジェクトをメイン プロジェクトにできます。 • プロジェクト名を右クリックし、[Set as Main Project] を選択する • [Run] > [Set Main Project] を選択する メイン プロジェクトの名前は太字で表示されます。 あるプロジェクトを明示的にメイン プロジェクトに指定するか、エディタのフォーカス を使ってメイン プロジェクトを選択するかはユーザが選択できます。 メイン プロジェクトの設定を解除する場合、以下を実行します。 1. [Projects] 画面の空いた場所で右クリックする。 2. [Set as Main Project] を使ってアクティブなプロジェクトを変更する。または、 アクティブなプロジェクトの設定を解除する。 2016 Microchip Technology Inc. DS50002027D_JP - p.153 MPLAB® X IDE ユーザガイド 複数プロジェクトを使った作業 1. 2 つまたは 3 つのプロジェクトを作成 ([File] > [New Project]) または開く ([File] > [Open Project])。 2. 各プロジェクトのデバッグを開始する ([Projects] ウィンドウ内のプロジェクトを クリックし、[Degug] > [Debug Project] を選択する )。 3. [Sessions] ウィンドウを開くと ([Window] > [Debugging] > [Sessions])、現在実行 中のデバッグ セッション間で切り換える事ができる。 デバッグ セッションを切り換えると、[Watches] ウィンドウ、変数、メモリ表示が現在 選択しているデバッグ中のプロジェクトのものに切り換わります。ステータスビットも 現在のプロジェクトのものに切り換わります。ダッシュボードは、デバッグ プロジェ クトまたは [Projects] ウィンドウ内のプロジェクトのどちらであれ、最後に選択した プロジェクトの内容を表示します。これは設計仕様に基づいた動作です。 複数プロジェクトのグループ化 複数プロジェクトを使うもう 1 つの方法はグループ化です。[File] > [Project Group] を 選択し、プロジェクト グループを選択するか新規に作成します。 プロジェクト グループの作成の詳細は NetBeans ヘルプトピックの「Project Group: Create New Group Dialog Box」を参照してください。 DS50002027D_JP - p.154 2016 Microchip Technology Inc. 高度な作業とコンセプト 6.4 複数コンフィグレーションを使った作業 MPLAB X IDE では、同一プロジェクトで複数のビルド コンフィグレーションを使え ます。これは、複数のプラットフォームでコンパイル可能なコード (Microchip 社の アプリケーション ライブラリ デモプロジェクト等 ) にとって便利です。 新規プロジェクトを作成すると、 「default」という名前のコンフィグレーションが作成 されます。ユーザ コンフィグレーションの作成は、以下のどちらかの手順で始めます。 • ツールバーのドロップダウン メニュー(図6-2)から[Customize]を選択して、[Project Properties] ダイアログを開く • プロジェクト名を右クリックして [Properties] を選択し、[Project Properties] ダイア ログを開く 図 6-2: [Project Configuration] ドロップダウン ボックス [Project Properties] ダ イ ア ロ グ で [Manage Configurations] を ク リ ッ ク し て、 [Configurations] ダイアログを開きます。このダイアログでは、既存のコンフィグレー ションの名前を変更するか、新規コンフィグレーションを追加するか、既存のコン フィグレーションを複製できます。 1 つのプロジェクトに対して複数のコンフィグレーションを作成した場合、[Manage Configurations] ボタンまたはドロップダウン メニューを使って、いずれか 1 つの コンフィグレーションをアクティブにします。 図 6-3: 2016 Microchip Technology Inc. [Project Properties] – [Configurations] ダイアログ DS50002027D_JP - p.155 MPLAB® X IDE ユーザガイド 6.4.1 新規コンフィグレーションの追加 新規コンフィグレーションを追加した場合、複数の項目を [Project Properties] ダイア ログで割り当てる必要があります。 • デバイス – ハードウェア ツールとコンパイラのサポートを確認するため、これを最 初に選択する必要があります。 • ハードウェア ツール • コンパイラ ツールチェーン 図 6-4: DS50002027D_JP - p.156 新規コンフィグレーション 2016 Microchip Technology Inc. 高度な作業とコンセプト 6.4.2 複製したコンフィグレーションの追加 既存のコンフィグレーションの複製を追加し、これを編集して使う事ができます。 複製コンフィグレーションを作成する理由の 1 つは、デバッグ用コンフィグレーション を作成するためです。MPLAB X IDE は Microchip 社製ツールと組み合わせて使う デバッグ用マクロ ( セクション 4.17.2「デバッグ用マクロの生成」) を提供しています。 しかし、専用のコンフィグレーションを作成する事で、ユーザ独自のデバッグ用マクロ を使えるようになります。またはサードパーティのツールで同じデバッグ機能を使え るようになります。 デバッグ コンフィグレーションの設定方法 1. [Configuration] ダイアログで、プロジェクト コンフィグレーションを選択して [Duplicate] をクリックする。 2. [Rename] をクリックし、[New Configuration Name] ダイアログで名前 ( 例 : 「MyDebug」) を入力する。 3. [OK] を 2 回クリックして [Project Properties] ダイアログに戻る (「MyDebug」 コンフィグレーション (Conf: MyDebug) が表示されるようになる )。 4. ツールチェーン内のコンパイラをクリックする。[Preprocessing and messages] オプション カテゴリで、マクロを定義できるオプションを選択し、関連するテキ ストボックスをクリックする。 5. ポップアップ ダイアログでマクロ名 ( 例 : __MyDebug) を入力し、[OK] をクリック する。 以上により、デバッグする際に「MyDebug」コンフィグレーションに切り換える事が できるようになります。プロセッサマクロは、以下のコンディショナル テキスト内で 使えます。 #ifdef __MyDebug fprintf(stderr,"This is a debugging message\n"); #endif 図 6-5: 2016 Microchip Technology Inc. デバッグ コンフィグレーション DS50002027D_JP - p.157 MPLAB® X IDE ユーザガイド 6.5 ユーザ Makefile プロジェクトの作成 外部 makefile を使うプロジェクを作成します。これは、プロジェクトが MPLAB X IDE の 外にビルドされているが、MPLAB X IDE を使ってデバッグを実行する場合に便利です。 makefile プロジェクトを作成するには、[New Project] ウィザードを使います。 6.5.1 新規プロジェクトの設定 [New Project] ウィザードは、以下のどちらかの方法で開けます。 • [Start Page] で、[Learn & Discover] タブを開き、[Dive In] セクションで [Create New Project] へのリンクを選択する • [File] > [New Project] を選択する ( または <Ctrl>+<Shift>+<N>) [New Project] ウィザードが起動し、プロジェクトの新規作成を支援します。 • Step 1. Choose Project: [Microchip Embedded] カテゴリを選択し、プロジェクト タイプ [User Makefile Project] からプロジェクトを選択します。 • Step 2. Select Device: プロジェクトで使うデバイスを [Device] ドロップダウン リストから選択します。選択肢を絞り込むために、最初にデバイスファミリを選 択します。 • Step 3. Select Header: このステップは、選択したデバイスでヘッダが利用可能 である場合に表示されます。デバイスがヘッダを必要とするか、またはデバッグ 回路を内蔵しているかどうかは、 『Processor Extension Pak (PEP) およびデバッグ ヘッダ仕様』(DS51292)(DS51292U_JP)、『エミュレーション拡張パック (EEP) およびエミュレーション ヘッダ ユーザガイド』(DS50002243) で確認できます。 上記を確認してからヘッダを使うかどうかを選択します。 • Step 4. Select Tool: アプリケーションの開発に使う開発ツールをリストから選択 します。 選択したデバイスに対するツールのサポートレベルが、ツール名の横のマークで 色分け表示されます。緑は完全サポート、黄はベータサポート、赤は未サポート を意味します。 • Step 5. Select Plugin Board: このステップは、選択したデバイスでプラグイン ボードが利用可能である場合に表示されます。[Supported Plugin Board] のドロップ ダウン リストで利用可能なプラグインボードを調べます。 • Step 6. Select Project Name and Folder: 新規プロジェクトの名前と格納場所を 選択します。 • Step 7. Create User Makefile Project: データを入力して makefile プロジェクト を設定します。 表 6-1: [Select Project Name and Folder] の設定項目 項目 Project Name Project Location Project Folder Set as main project Use project location as project folder エンコード DS50002027D_JP - p.158 説明 プロジェクトの名前を指定します。 プロジェクトの格納場所を入力または参照します。 プロジェクト名とプロジェクトの格納場所に基づいて、プロジェクト フォルダの格納場所を 表示します。 プロジェクト フォルダと作業フォルダの関係はセクション 6.5.2「ユーザ Makefile プロジェ クト フォルダおよび作業フォルダ」を参照してください。 作成されるプロジェクトをメイン プロジェクトに設定します。既定値でチェックが入ってい ます。 プロジェクトの格納場所と同じフォルダ内にプロジェクトを作成します。 これは、MPLAB IDE v8 プロジェクトをインポートする際、MPLAB X IDE のプロジェクトを 同じフォルダにする場合 ( ビルドも同様にする場合 ) に便利です。 MPLAB IDE v8 が .mcp ファイルを使ってプロジェクト情報を保存するのに対し、MPLAB X IDE はフォルダを使います。従って、MPLAB IDE v8 プロジェクト (.mcp ファイル ) とフォ ルダを共有させる事ができる MPLAB X IDE プロジェクトは 1 つだけです。 既定値で ISO-8859-1 に設定されます。通常これを変更する必要はありません。 2016 Microchip Technology Inc. 高度な作業とコンセプト 表 6-2: [Create User Makefile Project] の設定項目 項目 説明 Working Directory 外部プロジェクトの格納場所を指定します。これは各種コマンド ( ビルド、デバッグビルド、 クリーン ) が実行される既定値の格納場所です。 プロジェクト フォルダと作業フォルダの関係はセクション 6.5.2「ユーザ Makefile プロジェ クト フォルダおよび作業フォルダ」を参照してください。 このフォルダはユーザに代わってフォーマットの問題を処理するため、[Browse...] クリック 時のフォルダを参照する事を推奨します。 Build command MPLAB X IDE( アイコンまたはメニュー) で [Run] コマンドが要求された場合、代わりにこ のコマンドに従ってビルドを実行します。 ビルドパス *: Windows の場合、引用符を使います。Linux または Mac OS の場合、スペース はエスケープする必要があります。 Debug build command MPLAB X IDE( アイコンまたはメニュー ) で [Debug Run] コマンドが要求された場合、 代わりにこのコマンドに従ってデバッグビルドを実行します。 デバッグビルド パス *: Windows の場合、引用符を使います。Linux または Mac OS の場合、 スペースはエスケープする必要があります。 セクション B.2「MPLAB X IDE 外部でのデバッグのためのコンパイル」も参照してくだ さい。 Clean command MPLAB X IDE( アイコンまたはメニュー ) で [Clean] コマンドが要求された場合、代わりに このコマンドに従ってクリーンを実行します。 クリーンパス *: Windows の場合、引用符を使います。Linux または Mac Os の場合、スペース は全てエスケープする必要があります。 Image name 量産イメージファイル (HEX) のパスと名前を入力します。 イメージパス *: スペースは全てエスケープする必要があります。 Debug image name デバッグイメージ ファイル (elf または cof) のパスと名前を入力します。 デバッグイメージ パス *: スペースは全てエスケープする必要があります。 User Include Paths インクルード ファイルを入力 * または参照します。 User Macros マクロを追加または「解析および追加」します。 [Edit]: マクロ名を入力します。またはマクロを含むファイルを参照します。 [Parse]: マクロを自動的に解析します (MPLAB XC コンパイラのみ )。ダイアログの指示に 従います。完了後、表示されている現在のマクロを選択して置換します。または、現在の マクロの一覧に付け加えます。 * 一般的なデータ入力の方法 : パスにはフォワード スラッシュ「/」を推奨します。しかし、代わりにバックワード スラッシュ「\」も使えます。 パスとファイル名にスペースを使わない事を推奨します。しかし、このウィンドウでパスおよびファイル名を 入力する際にどうしてもスペースを使わなくてはいけない場合、エスケープ スペース ( スペースの前にバック スラッシュ ) を使います。スペースは GNU Make の区切り文字であるため、スペースを使うと GNU Make は問 題を引き起こす事が分かっています。 作成したプロジェクトが [Projects] ウィンドウ内に表示されます。 プロジェクト作成後、[Project Properties] ウィンドウの [Makefile] カテゴリで Makefile プロジェクトの設 定を変更します。 プロジェクトを HEX ファイルとしてエクスポートする方法はセクション 12.13.2「[Projects] ウィンドウ – [Project] メニュー」を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.159 MPLAB® X IDE ユーザガイド 6.5.2 ユーザ Makefile プロジェクト フォルダおよび作業フォルダ プロジェクト フォルダは、Makefile と nbproject/Makefiles を格納しています。 MPLAB X IDE はプロジェクト フォルダ内で makefile を実行します。次に、作業 フォルダに移動し、 「Build command」または「Debug build command」を実行します。 これにより GNU Make が実行され、 「Build command」として指定した処理が実行さ れます。 プロジェクト フォルダは、絶対パスで格納場所を定義する場合、作業フォルダに対し てどこにでも配置できます。しかし、この方法を使うとプロジェクトの移植性が損な われます。プロジェクトを移植しやすくするには、作業フォルダはプロジェクト フォルダに対して相対パス ( 例 : プロジェクト フォルダの 1 レベル下 ) で指定します。 6.5.3 Makefile プロジェクトの例 この例では、MPLAB X IDE でユーザ makefile プロジェクトを作成する方法を示します。 この makefile プロジェクトは、バッチファイルと IDE 外で作成したユーザコード上 の make のどちらかを実行します。このユーザコードは、1 つのファイル (t.c) から 成ります。このファイルに格納されているシンプルなコードを以下に示します。 例 6-1: t.c のコード #include <xc.h> int main(void) { while(1) { } return 0; } 本コードは、量産向けには t_production.hex にリンクし、デバッグ向けには t_debug.elf にリンクします。 この例では、t.c、バッチファイル (makeme.bat)、ユーザ makefile (Makefile) は 以下のフォルダ (Windows OS の場合 ) に格納されていると仮定します。 C:\Users\MCHP\MPLABXProjects\makestuff\myOwnCodeWithItsOwnMakefile 使用中の PC 上でこの例を再現する場合、MCHP をユーザのユーザ名で置き換えます。 • [User Makefile Project] – バッチファイルからコードを作成 • [User Makefile Project] – ユーザ Makefile からコードを作成 • [User Makefile Project] – 完了 DS50002027D_JP - p.160 2016 Microchip Technology Inc. 高度な作業とコンセプト 6.5.3.1 [User Makefile Project] – バッチファイルからコードを作成 コードをコンパイルするため、シンプルなバッチファイル (makeme.bat) は引数として production, debug, clean のいずれかを取ります。production が引数として渡さ れた場合、t_production.hex がビルドされます。debug が引数として渡された場合、 t_debug.elf がビルドされます。clean が引数として渡された場合、.elf と .hex ファイルが消去されます。 例 6-2: makeme.bat のコード ::assumes xc32-gcc and xc32-bin2hex are on the path rem @echo off set COMPILER=xc32-gcc set BIN2HEX=xc32-bin2hex set PROCESSOR=32MX360F512L if "%1" == "production" goto production if "%1" == "clean" goto clean :debug %COMPILER% -mprocessor=%PROCESSOR% -g -D_DEBUG -o t_debug.elf t.c goto end :production %COMPILER% -mprocessor=%PROCESSOR% -o t_production.elf t.c %BIN2HEX% t_production.elf goto end :clean del /F *.elf del /F *.hex goto end :end 2016 Microchip Technology Inc. DS50002027D_JP - p.161 MPLAB® X IDE ユーザガイド MPLAB X IDE 内でユーザ makefile プロジェクトを作成するには、セクション 6.5.1 「新規プロジェクトの設定」の手順を実行します。 • Step 1. Choose Project: [Microchip Embedded]、[User Makefile Project] を選択 します。 • Step 2. Select Device: デバイスとして PIC32MX360F512L を選択します。 • Step 3. Select Header: このデバイスに利用できるヘッダはありません。 • Step 4. Select Tool: SN でハードウェア ツールまたは [Simulator] を選択します。 この例では「Simulator」を使います。 • Step 5. Select Plugin Board: この例で使うヘッダはありません。 • Step 6. Select Project Name and Folder: この例では「Project Folder」は myOwnCodeWithItsOwnMakefile と同じフォルダの中に作成します。従って、 「Project Location」は C:\Users\MCHP\MPLABXProjects\makestuff とし、 「Project Name」は MPLABXProjectT とします。 図 6-6: DS50002027D_JP - p.162 [User Makefile Project] – プロジェクト名とフォルダの選択 2016 Microchip Technology Inc. 高度な作業とコンセプト • Step 7. Create User Makefile Project: 情報を入力して makefile プロジェクトを 設定します。 作業フォルダでは、各種コマンド ( バッチファイルのビルド、デバッグビルド、 クリーン ) が実行されます。このフォルダは絶対パスとして設定できます。 C:\Users\MCHP\MPLABXProjects\makestuff\myOwnCodeWithItsOwnMakefile. しかし、この方法を使うと MPLAB X IDE プロジェクトの移植性が損なわれます。 従って、作業フォルダ、イメージ名、デバッグイメージ名は相対パス (MPLAB X IDE プロジェクト フォルダ基準 ) で入力します。 [Finish] をクリックするとプロジェクトが作成されます。 図 6-7: 2016 Microchip Technology Inc. [User Makefile Project] – バッチファイルからコードを作成 DS50002027D_JP - p.163 MPLAB® X IDE ユーザガイド 6.5.3.2 [User Makefile Project] – ユーザ Makefile からコードを作成 コードをコンパイルするため、シンプルなユーザ makefile (Makefile) は引数として production, debug, clean のいずれかを取ります。production が引数として渡され た場合、t_production.hex がビルドされます。debug が引数として渡された場合、 t_debug.elf がビルドされます。clean が引数として渡された場合、.elf と .hex ファイルが消去されます。 例 6-3: ユーザ Makefile のコード # Assumes xc32gcc and xc32bin2hex are on the path COMPILER=xc32gcc BIN2HEX=xc32bin2hex PROCESSOR=32MX795F512L production: t_production.hex debug: t_debug.elf t_debug.elf: t.c $(COMPILER) mprocessor=$(PROCESSOR) -g -D_DEBUG -o t_debug.elf t.c t_production.hex: t_production.elf $(BIN2HEX) t_production.elf t_production.elf: t.c $(COMPILER) mprocessor=$(PROCESSOR) o t_production.elf t.c clean: del /F *.hex del /F *.elf MPLAB X IDE 内でユーザ makefile プロジェクトを作成するには、セクション 6.5.3.1 「[User Makefile Project] – バッチファイルからコードを作成」の手順 1 ~ 6 を実行し ます。Step 7 は図 6-8 に従って設定します。 作業フォルダでは、各種コマンド ( ユーザ Makefile のビルド、デバッグビルド、 クリーン ) が実行されます。作業フォルダ、イメージ名、デバッグイメージ名は相対 パス (MPLAB X IDE プロジェクト フォルダ基準 ) で入力します。 MPLAB X IDE はビルド、デバッグビルド、クリーンに GNU Make を使います。セク ション 6.5.2「ユーザ Makefile プロジェクト フォルダおよび作業フォルダ」に従って、 MPLAB X IDE はプロジェクト フォルダ内で Makefile を実行すると、作業フォルダが カレントフォルダになります。作業フォルダ内で make は makefile を検索し、ユーザ 定義の Makefile を見つけます。この Makefile はビルド、デバッグビルド、クリーン の方法を定義します。 Note: 「Build command」等のコマンドを定義するもう 1 つの方法は、-f オプ ションを使ってユーザ makefile を指定する事です ( 例 : make -f Makefile production)。 [Finish] をクリックするとプロジェクトが作成されます。 DS50002027D_JP - p.164 2016 Microchip Technology Inc. 高度な作業とコンセプト 図 6-8: 6.5.3.3 [User Makefile Project] – ユーザ Makefile からコードを作成 [User Makefile Project] – 完了 プロジェクト作成後、[Projects] ウィンドウに以下が表示されます。プロジェクト名 を右クリックしてプロジェクトをビルドできます。 図 6-9: [User Makefile Project] – プロジェクト ツリー 設定を変更する場合、プロジェクト名を右クリックして [Properties] を選択します。 2016 Microchip Technology Inc. DS50002027D_JP - p.165 MPLAB® X IDE ユーザガイド 図 6-10: [User Makefile Project] – [Project Properties] ダイアログ こ の 例 で は、ビ ル ド の 結 果 (t_production.hex) と デ バ ッ グ ビ ル ド の 結 果 (t_debug.elf) は作業フォルダ myOwnCodeWithItsOwnMakefile に格納されてい ます。MPLAB X IDE では MPLABXProjectT プロジェクト フォルダのみが表示され るため、ビルド後の IDE の [Projects] ウィンドウでは変化が見られません。 6.6 MPLAB X IDE プロジェクトのパッケージ化 プロジェクトを右クリックして [Package] を選択し、プロジェクトを zip ファイル (.zip) にパッケージします。MPLAB X IDE はファイルを ZIP に圧縮できますが、解凍 する事はできません。従って、プロジェクトの解凍には別のプログラムが必要です。 この機能は、プロジェクトをパッケージする際にプロジェクト ファイルを解析し、 パッケージに含めるべきプロジェクト ファイルのフォルダを決定します。すなわち、 プロジェクト フォルダと、その相対パス ( 絶対パスではない ) を使うフォルダ内の ファイルだけをパッケージに含めます。 パッケージにはソースファイル、makefile、「nbproject」フォルダが含まれます。 ヘッダファイルは、プロジェクトに追加していない限り含まれません。従って、ユーザ 作成のヘッダファイルが必要な場合、解凍済みのプロジェクトはビルドできません。 DS50002027D_JP - p.166 2016 Microchip Technology Inc. 高度な作業とコンセプト 6.7 サードパーティ製ハードウェア ツール サードパーティ製ハードウェア ツールを使う場合、以下の要件があります。 • 必要なする USB ドライバを入手しインストールします。USB ドライバとインストール 説明書は、通常サードパーティから入手できます。 • このツールの MPLAB X IDE プラグインをインストールします。詳細はセクション 5.22「プラグインツールの追加」を参照してください。 インストールが完了すると、[Project Properties] ダイアログにハードウェア ツールが 表示され選択できるようになります ( セクション 4.4「プロジェクト プロパティの表 示と変更」参照 )。 6.8 ログデータ ログファイルは、プログラム実行状況の把握と問題の解決に役立ちます。 MPLAB X IDE に問題やエラーが発生して技術サポートに問い合わせる場合 (「お客様 サポート」参照 )、2 つのログファイル (MPLAB X IDE のログファイルと NetBeans プラットフォームのログファイル ) のデータを保存する必要があります。 MPLAB® X IDE のログファイル 6.8.1 MPLAB X IDE のログファイル機能は、Java Logger クラスに基づいてデータを生成し ます。 ログファイルの設定方法 1. [Tools] > [Options] (Mac OS X では [mplab_ide] > [Preferences]) を選択して [Embedded] ボタンをクリックし、[Diagnostics] タブを開く。 2. ドロップダウン ボックスからログレベルを選択する ( セクション 12.14.6 「[Diagnostics] タブ」参照 )。 Note: ログレベルが高いほど収集データは増えますが、アプリケーション実 行速度は低下します。 3. ログファイルの格納場所 ( パス ) を選択する。 データを記録する方法 1. 2. 3. 4. ログレベル「Finest」を設定する。 ログファイルの名前とパスをメモする。 問題やエラーが発生するまでステップを繰り返す。 生成されたログファイルを技術サポートに送信する。 6.8.2 NetBeans プラットフォームのログファイル NetBeans のログファイル機能は、NetBeans プラットフォームの実行に関する情報を 生成します。 データをログに記録する方法 5. 6. 7. 8. 9. [View] > [IDE Log] を選択して [Output] ウィンドウにログファイルを開く。 [Output] ウィンドウを右クリックして [Clear] を選択する。 問題やエラーが発生するまでステップを繰り返す。 ウィンドウを右クリックし、[Save As] を選択してテキストをファイルに保存する。 保存したファイルを技術サポートに送信する。 2016 Microchip Technology Inc. DS50002027D_JP - p.167 MPLAB® X IDE ユーザガイド 6.9 ツールバーのカスタマイズ [Customize Toolbars] ウィンドウを使うと MPLAB X IDE のツールバーをカスタマイズで きます。このウィンドウは、[View] > [Toolbars] > [Customize] で開きます。 [Clean Only]、[Run]、[Set PC to Cursor] 等のアイコンを使えます。 ツールバーに機能を追加する方法 [Customize Toolbars] ウィンドウからツールバーにアイコンをドラッグする。 ツールバーから機能を削除する方法 ツールバーから [Customize Toolbars] ウィンドウにアイコンをドラッグする。 独自のツールバーを追加する方法 [New Toolbar] をクリックして、新規ツールバーに名前を付ける。 ツールバー アイコンのサイズを変更する方法 • アイコンを小さくするには、[Small Toolbar Icons] にチェックを入れる。 • アイコンを大きくするには、チェックを外す。 既定値のツールバーに戻す方法 [Reset Toolbars] をクリックする。 下表に、使用可能な機能を示します。 表 6-3: 「Build」機能 機能 Make Make Clean 表 6-4: 説明 クリーンせずに make を実行します ( プロジェクト ファイルが更新されている場合、ビルド します )。 プロジェクトに対してクリーン ( 以前にビルドしたプロジェクト ファイルの削除 ) を実行 してから make を実行します。 「Debug」機能 機能 説明 New Data Breakpoint New Run Time Watch New Watch PIC AppIO 新しいデータ ブレークポイントを設定します。 指定したシンボルを、プログラム実行中に値の変化を観察するウォッチに追加します。 [Watches] ウィンドウで観察するために式を入力するか、SFR を選択します。 [PIC AppIO] ウィンドウを開きます。デバッグツールとデバイスがアプリケーション I/O を サポートしている必要があります。 詳細はデバッグツールのマニュアルを参照してください。 Program Device for デバッグイメージをデバイスに書き込みます。 Debugging Main Project 書き込みが完了すると、即座にプログラムの実行が始まります。 Disassembly [Disassembly] ウィンドウを開きます。 Disconnect from Debug MPLAB® X IDE とデバッグツール間の通信を切断します。 Tool [Run] または [Debug Run] を選択すると再接続します。 Focus Cursor at PC カーソルを現在のPCアドレス位置へ移動し、 このアドレスをウィンドウの中心に表示します。 PC Profiling [PC Sampling] ウィンドウを開きます。 PC サンプリングとプロファイリングの詳細は MPLAB REAL ICE インサーキット エミュ レータのマニュアルを参照してください。 Reset デバイスをリセットします。 Set PC at Cursor プログラム カウンタ (PC) の値を、カーソル位置の行アドレスに設定します。 Step Instruction マシン命令を 1 つ実行します。命令が関数呼び出しの場合、その関数を実行してから呼び 出し元の制御に戻ります。 Status Toolbar Action ステータス ツールバーを表示します。 Launch Debugger Main メイン プロジェクトに対してデバッガを起動します。 Project 個別ビルド処理 ( ビルド、ターゲットのプログラミング、デバッガの起動 ) の最後のステップ です。これは、スタータキットを使ってデバッグ中に [Memory] ウィンドウの設定を変更 する場合に便利です。 DS50002027D_JP - p.168 2016 Microchip Technology Inc. 高度な作業とコンセプト 表 6-4: 「Debug」機能 ( 続き ) 機能 Debug Main Project New Watch Attach Debugger Continue Debug File Debug Test File Apply Code Changes Finish Debugger Session Make Callee Current 説明 メイン プロジェクトをデバッグします。 [Watches] ウィンドウで観察するために式を入力します。 MPLAB® X IDE とデバッグツール間の通信を確立します。 デバッグツールは実行またはデバッグ実行時に自動的に接続され、実行が終了すると切断 されます。デバッグツールを常時接続するには、[Tools] > [Options] (Mac OS X の場合、 [mplab_ide] > [Preferences]) を選択し、[Embedded] ボタンをクリックし、 [General Settings] タブを開いて、[Maintain active connection to hardware tool] にチェックを 入れます。 「一時停止」したデバッグを再開します。デバッグは次のブレークポイントまたはプログ ラムの末尾で再び停止します。 現在選択しているファイルのデバッグ セッションを始めます。 ファイルの JUnit デバッグテストを始めます (Java 関連 )。 コード内の全ての変更を実行中のプログラムに適用します。 デバッグ セッションを終了します。 Make Caller Current Pause Run to Cursor Step Into Step Over Expression Step Out Step Over 表 6-5: 呼び出される側のメソッドを現在の呼び出しとします。 この機能は、[Call Stack] ウィンドウで呼び出しを選択している場合にのみ利用できます。 呼び出す側のメソッドを現在の呼び出しとします。 この機能は、[Call Stack] ウィンドウで呼び出しを選択している場合にのみ利用できます。 デバッグを一時停止します。 [Continue] で再開します。 プロジェクトをカーソル位置まで実行して、停止します。 プログラムのソースを 1 行実行します。 その行が関数コールである場合、呼び出した関数の先頭の命令文を実行した後に停止します。 式をステップオーバーし、その後にデバッグを停止します。 プログラムのソースを 1 行実行します。 関数をステップ実行中である場合、関数の残りを全て実行した後に、呼び出し元のルーチン に戻って停止します。 プログラムのソースを 1 行実行します。 その行が関数コールである場合、呼び出した関数全体を実行した後にデバッグは停止します。 「Edit」機能 機能 説明 Next Bookmark 次のブックマークに移動します ( 順方向に循環 )。 Previous Bookmark 1 つ前のブックマークに移動します ( 逆方向に循環 )。 Clear Document Bookmarks 文書内の全てのブックマークをクリアします。 Quick Search [Quick Search] ツールバーを表示します。 Find in Projects 指定したテキスト、オブジェクト名、オブジェクト タイプをプロジェクト内で検索 します。 Replace in Projects テキスト、オブジェクト名、オブジェクト タイプをプロジェクト内で置換します。 Copy 現在選択している内容をクリップボードにコピーします。 Cut 現在選択している内容を削除し、クリップボードに移動します。 Delete 現在選択している内容を削除します。 Find 文字列を検索します。 Paste クリップボードの内容を現在の選択位置に挿入します。 Redo 以前の [Undo] 操作を 1 つずつ元に戻します。 Undo 以前のエディタ操作を 1 つずつ遡って取り消します ( 保存操作は取り消せません )。 2016 Microchip Technology Inc. DS50002027D_JP - p.169 MPLAB® X IDE ユーザガイド 表 6-6: 「Help」機能 機能 説明 Start Page [Start Page] を表示します。 Individual Help Files 個別のポップアップ ヘルプファイルを表示します ( 例 : MPLAB® X IDE Help)。 Help [Help] ウィンドウを表示します。 表 6-7: 「Profile」機能 機能 説明 Start Sampling IDE 表 6-8: PC プロファイリング / サンプリングのためのサンプリングを開始します。 PC サンプリングとプロファイリングの詳細は MPLAB® REAL ICE™ インサーキット エミュ レータのマニュアルを参照してください。 「Project」機能 機能 説明 Programmer to Go PICkit™ 3 Main Project PICkit™ 3 の Programmer to Go 機能を使います。 Erase Device Memory Main Project メイン プロジェクトのデバイスメモリを消去します。 Hold in Reset デバイスをリセットと実行の間で交互に切り換えます。 Make and Program Device Main Project 必要に応じてメイン プロジェクトをビルドして、デバイスに書き込みます。 書き込みが完了すると、即座にプログラムの実行が始まります。 Read Device Memory Main Project #TOIN# ターゲット デバイスのメモリの内容を MPLAB® X IDE に転送します。 Read Device Memory to File ターゲット デバイスのメモリの内容を指定したファイルに転送します。 Build Main Project メイン プロジェクトの全ファイルをビルドします。 Build for Debugging Main Project メイン プロジェクトの全ファイルをデバッグ用にビルドします。 Clean and Build Main Project 生成済みのファイルを全てクリーン ( 削除 ) してから、メイン プロジェクトの 全ファイルをリビルドします。 Build Project 選択したプロジェクトの全ファイルをビルドします。 Clean Main Project メイン プロジェクトの生成済みファイルを全てクリーン ( 削除 ) します。 Clean Project 選択したプロジェクトの生成済みファイルを全てクリーン ( 削除 ) します。 Compile File 選択したファイルをプロジェクト コンパイラによってコンパイルします。 New File [New File] ウィザードを起動します。 New Project [New Project] ウィザードを起動します。 Open Project 既存のプロジェクトを開きます。 Clean and Build Project 生成済みのファイルを全てクリーン ( 削除 ) してから、選択したプロジェクトの 全ファイルをリビルドします。 Run Main Project 必要に応じてメイン プロジェクトをビルドして、デバイスに書き込みます。 書き込みが完了すると、即座にプログラムの実行が始まります。 「Make and Program Device Main Project」と同じです。 Run Project 必要に応じて選択したプロジェクトをビルドして、デバイスに書き込みます。 書き込みが完了すると、即座にプログラムの実行が始まります。 Run File 現在選択中のファイルを実行します。 Test Project 現在のプロジェクトの JUnit テストを始めます (Java 関連 )。 Test File 現在のファイルの JUnit テストを始めます (Java 関連 )。 Open Required Projects 依存関係のあるプロジェクトを開きます。 Projects [Projects] ウィンドウを開きます。 Files [Files] ウィンドウを開きます。 DS50002027D_JP - p.170 2016 Microchip Technology Inc. 高度な作業とコンセプト 表 6-9: 「CVS*」機能 機能 説明 Commit ローカルファイルへの変更をリポジトリにコミットします。 Diff リポジトリ内のバージョンと、作業中のローカルコピーの間の変更箇所を表示します。 Show Annotations コミット メッセージ、作成者、日付、リビジョン番号情報をソースエディタで開いた ファイルの左余白に表示します。 Revert Modifications ファイルのローカル バージョンをリポジトリに保存されたバージョンに戻します。 Update ファイルのローカル バージョンに、リポジトリにコミットされた変更を適用します。 * CVS は MPLAB® X IDE には付属していません。別途ご用意ください。CVS の詳細は http://www.nongnu.org/cvs を参照してください。 表 6-10: システム機能 機能 説明 Next Error 次のビルドエラーを含む行にジャンプします。 Previous Error 1 つ前のビルドエラーを含む行にジャンプします。 Run SQL SQL 文とスクリプトを実行します。 SQL とデータベースのサポートは以下を参照してください。 [NetBeans Help] > [IDE Basics] > [Using the IDE Help System] > [Working with Web and Application Servers] [NetBeans Help] > [IDE Basics] > [Using the IDE Help System] > [Working and Connecting with Databases] SQL History SQL エディタ内でこれまでに実行した SQL 文の一覧を表示します。 Keep Prior Tabs 前回実行した SQL の実行結果タブを開いたままにするか閉じるかを切り換えます。 Open File [Open] ダイアログを開きます。 Properties [Project Properties] ウィンドウを開きます。 Save 現在のファイルを保存します。 Save All 開いている全てのファイルを保存します。[Compile on Save] を設定している場合、保存時に プロジェクト ファイルをコンパイル / ビルドします。 表 6-11: ターミナル機能 機能 説明 org-netbeans-modules-dlight-terminal-action-LocalTerminal() [Terminal] ウィンドウを開きます。 org-netbeans-modules-dlight-terminal-action-RemoteTerminal() [Remote Terminal] ウィンドウを開きます。 表 6-12: ツール機能 機能 Check CVS 表 6-13: 説明 CVS バージョン管理アイテムを選択します。 CVS の詳細は http://www.nongnu.org/cvs を参照してください。 表示機能 機能 説明 Web Browser ブラウザで NetBeans のダウンロード ページを開きます。 IDE Log [View] > [IDE Log] と同じ情報を表示します。 Classes [Classes] ウィンドウを開きます。 Customize Zoom データズーム機能をカスタマイズします。 Zoom In データにズームインします。 Zoom Out データからズームアウトします。 2016 Microchip Technology Inc. DS50002027D_JP - p.171 MPLAB® X IDE ユーザガイド 表 6-14: ウィンドウ機能 機能 説明 Debug>Breakpoints [Breakpoints] ウィンドウを開きます。 Debug>Call Stack [Call Stack] ウィンドウを開きます。 Debug>Variables [Variables] ウィンドウを開きます。 Debug>Sessions [Sessions] ウィンドウを開きます。 Debug>Sources [Sources] ウィンドウを開きます。 Debug>Threads [Threads] ウィンドウを開きます。 このウィンドウには、現在のデバッグ セッションの全スレッドが表示されます。 Debug>Watches [Watches] ウィンドウを開きます。 Select Document In>Select In Favorites [Favorites] ウィンドウを開いて、その中で現在の文書を選択します。 Terminal [Terminal] ウィンドウを開きます。 Remote Terminal [Remote Terminal] ウィンドウを開きます。 Terminal (Experimental) [Experimental Terminal] ウィンドウを開きます。 Stopwatch [Stopwatch] ウィンドウを開きます。 Trace [Trace] ウィンドウを開きます。 Disassembly Listing File エディタ ウィンドウに逆アセンブル リスティング ファイルを開きます。 Project Environment [Project Environment] ( ダッシュボード ) ウィンドウを開きます。 Analyzer [Simulator Analyzer] ウィンドウを開きます。 Stimulus [Simulator Stimulus] ウィンドウを開きます。 Services [Services] ウィンドウを開きます。 Output [Output] ウィンドウを開きます。 Properties [Project Properties] ウィンドウを開きます。 Call Graph [Call Graph] ウィンドウを開きます。 Hierarchy [Include Hierarchy] ウィンドウを開きます。 あるソースファイルに直接または間接的にインクルードされているヘッダファイルと ソースファイルを全て調べる事ができます。または、あるヘッダファイルを直接または 間接的にインクルードしているソースファイルとヘッダファイルを全て調べる事ができ ます。 Macro Expansion [Macro Expansion] ウィンドウを開きます。 このウィンドウは、マクロをコードに展開します。 Thread Map [Threads] ウィンドウを開きます。 Reporter Result 例外ブレークポイント用の [Exception Reporter] ウィンドウを開きます。 Favorites [Favorites] ウィンドウを開きます。 Test Results C/C++ プロジェクトの [Test Results] ウィンドウを開きます。 Chat [Team Chat] ウィンドウを開きます。 Team チーム プロジェクトを開きます。#TOIN# チームサーバ プロジェクトの詳細は NetBeans ヘルプトピック ([IDE Basics] > [Using the IDE Help System] > [Working in a Collaborative Environment]) を参照してください。 Navigator [Navigator] ウィンドウを開きます。 Palette [Palette] ウィンドウを開きます (Java 関連 )。 Find Usages Results [Find Usages] ウィンドウを開きます。 Refactoring Preview リファクタリング結果の [Preview] ウィンドウを開きます。 Search Results [Search] ウィンドウを開きます。 Tasks [Tasks] ウィンドウを開きます。 DS50002027D_JP - p.172 2016 Microchip Technology Inc. 高度な作業とコンセプト 表 6-15: XML 機能 機能 説明 Check File XML ファイルが整形式であるか確認します。 Check DTD [DTDs and XML Schemas Manager] を開きます。 Validate File XML スキーマまたは DTD に従って XML ファイルの構文エラーを確認します。 XSL Transform XSL スタイルシートを使って XML 文書を変換します。 6.10 チェックサム チェックサムとは、アプリケーション コードと、MCU または DSC のその他の設定 から得られる 16 進数です。チェックサムの生成方法の詳細はデバイスのプログラミング 仕様を参照してください。 チェックサムは、プロジェクトのビルド時に生成されます。生成されたチェックサム は [Dashboard] ウィンドウに表示されます ( セクション 5.18「ダッシュボードの表示」)。 チェックサムはビルドエラーの検出に役立ちます。例として、あるプロジェクトをあ るコンピュータでビルドした場合について考えます。同じプロジェクトを別のコン ピュータにコピーしてビルドした時に、チェックサムが同じであればプロジェクトが 正常にコピーされた事を意味します。チェックサムが異なれば、コピーに失敗した事 を意味します。 チェックサムをエラー検出に使う場合、プロジェクト コードを開発する際以下に注意 する必要があります。コンパイラマクロの __TIME__ と __DATE__ を使ってはいけ ません。ファイルパスを変更する場合、マクロの __FILE__ と assert() を使って はいけません。 デバイスによって、チェックサムをユーザ ID として使う場合があります ( セクション 4.14.3「ユーザ ID メモリへのチェックサムの挿入」)。 2016 Microchip Technology Inc. DS50002027D_JP - p.173 MPLAB® X IDE ユーザガイド 6.11 コンフィグレーション 「コンフィグレーション」という用語は様々な文脈で使われます。下表にそれらの用語と定義を示します。 表 6-16: コンフィグレーションの文脈 用語 定義 コンフィグレーション ビット これらの用語は全て、デバイスを設定するために使うデバイスメモリの物理領域 コンフィグレーション ヒューズ を指します。利用可能なコンフィグレーションは、デバイスのデータシートを参 コンフィグレーション ワード 照してください。 コンフィグレーション バイト コンフィグレーション レジスタ [Configuration Bits] ウィンドウ プロジェクトで設定したデバイスで利用可能なコンフィグレーションを表示する ウィンドウです。このウィンドウの詳細は本書のセクション 4.22.4「コンフィグ レーション ビットの設定」を参照してください。 プロジェクト コンフィグレー ション プロジェクトのビルド設定です。プロジェクト作成後、コンフィグレーション名 は「[default]」となっています。この名前は変更できます。また、1 つのプロジェ クトに対して複数のコンフィグレーションを作成できます。 詳細はセクション 6.4「複数コンフィグレーションを使った作業」を参照してくだ さい。 このデータは configurations.xml ファイルに保存されます。 プロジェクト コンフィグレー ション タイプ 特定タイプのプロジェクト向けの設定です。プロジェクト コンフィグレーション タイプは、「アプリケーション」として設定したスタンドアロン プロジェクトと 「ライブラリ」として設定したライブラリ プロジェクトにのみ適用されます。 詳細はセクション 4.14.1「プロジェクト コンフィグレーション タイプの変更」を 参照してください。 ユーザ コンフィグレーション データ ユーザが作成した MPLAB X IDE のコンフィグレーションです。セクション 8.7 「ユーザ コンフィグレーション データの表示」を参照してください。 DS50002027D_JP - p.174 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 7 章 エディタ 7.1 はじめに MPLAB X IDE は NetBeans プラットフォームをベースとしているため、コードの編 集には NetBeans プラットフォームのエディタを使います。 エディタに関する C コンパイラ情報は、NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Working with C/C++/Fortran Projects] > [Editing Source Files in C/C++/Fortran Projects] > [About Editing C and C++ Files]) を参照してください。ここ では、MPLAB X IDE のエディタ機能を説明します。 • • • • • • 7.2 ソースエディタの一般操作クイック リファレンス エディタの使い方 エディタのオプション エディタの赤の感嘆符 コード折り畳み C コードのリファクタリング ソースエディタの一般操作クイック リファレンス ここでは、ソースエディタにおける一般的な操作について説明します。 表 7-1: エディタのクイック リファレンス 操作 手順 [Projects] ウィンドウまたは [Files] ウィンドウでは 開けないファイルを開く 1. 2. [File] > [Open File] を選択する。 ファイル選択ダイアログでファイルを参照する。次に [Open] をクリックする。 ソースエディタのウィンドウ を最大化する 以下のいずれかを行う。 • ソースエディタのファイルのタブをダブルクリックする。 • ソースエディタのウィンドウを選択し、<Shift>+<Esc> を押す。 • [Window] > [Configure Window] > [Maximize] を選択する。 最大化したソースエディタを 元のサイズに戻す 以下のいずれかを行う。 • ソースエディタのファイルのタブをダブルクリックする。 • <Shift>+<Esc> を押す。 • [Window] > [Configure Window] > [Restore] を選択する。 行番号を表示する [View] > [Show Line Numbers] を選択する。 2 つのファイルを同時に表示 する 1. 2. 2 つ以上のファイルを開く。 1 つのファイルのタブをクリックし、ファイルを配置するウィンドウの側面に ドラッグする。ウィンドウの配置場所を示す赤いプレビュー ボックスが表示さ れた状態でマウスボタンを放すと、エディタ ウィンドウがそこに配置される。 タブをドラッグする場所によって、ウィンドウは水平または垂直に分割できます。 1 つのファイルの表示画面を 分割する 1. 2. ソースエディタのファイルのタブを右クリックし、[Clone] を選択する。 コピーしたファイルのタブをクリックし、コピーしたファイルを配置するウィン ドウの部分にドラッグする。 コードを自動的にフォーマット ソースエディタ内で右クリックし、[Format] を選択する。 する テキストを選択している場合、そのテキストのみがフォーマットされます。テキスト を選択していない場合、そのファイル全体がフォーマットされます。 2016 Microchip Technology Inc. DS50002027D_JP - p.175 MPLAB® X IDE ユーザガイド 7.3 エディタの使い方 エディタを使うには、[File] > [New File] を使ってファイルを作成します。または [File] > [Open File] を使って既存のファイルを開きます。以下のセクションでは、その他の操 作と機能について説明します。 7.3.1 デスクトップ エディタに関連するデスクトップ項目には以下のようなものがあります。 • [File] メニュー – [Editor] ウィンドウでファイルを開きます ( セクション 11.2.1 「[File] メニュー」参照 )。 • [Edit] メニュー – 編集コマンドを利用できます ( セクション 11.2.2 「[Edit] メニュー」 参照 )。 • エディタ ツールバー – これでも編集コマンドを利用できます。各ファイルのエディタ ウィンドウの上にあります ( セクション 11.3.10「エディタ用ツールバー」参照 )。 • ウィンドウ内で右クリックして開くコンテクスト メニュー – その他のコマンドを 利用できます。 7.3.2 C コードのハイパーリンク ハイパーリンク ナビゲーションを使うと、関数、変数、定数のいずれかの呼び出しか らその宣言にジャンプできます。 以下のどちらかの方法により、ハイパーリンクを使えます。 • <Ctrl> (Windows, Linux) または <Command> (Mac) を押しながら関数、変数、定数 のいずれかの上にマウスカーソルを置く。その要素に関する情報とハイパーリンク が表示される。ハイパーリンクをクリックすると宣言にジャンプする。<Alt>+< 左 矢印 > を押すと、呼び出し元に戻る。 • マウスカーソルを識別子の上に置き、<Ctrl>+<B> または <Command>+<B> を押すと、 エディタは宣言にジャンプする。<Alt>+< 左矢印 > を押すと、呼び出し元に戻る。 <Alt>+< 左矢印 > または <Alt>+< 右矢印 > を押すと、カーソル位置の履歴で後方また は前方に移動します。 以下の NetBeans ヘルプトピックも参照してください。 [C/C++/Fortran Development] > [Working with C/C++/Fortran Projects] > [Navigating Source Files and Projects] > [Using Hyperlink Navigation] 7.3.3 ASM コードのハイパーリンク ア セ ン ブ リ ソ ー ス フ ァ イ ル に 含 ま れ て い る ヘ ッ ダ フ ァ イ ル を 参 照 す る に は、 #include 文で参照されているファイル名の上にマウスカーソルを置き <Ctrl> (Windows, Linux) または <Command> (Mac) を押します。マウスをクリックすると、 エディタのファイルタブ内にインクルード ファイルが開きます。 7.3.4 注目すべきエディタ機能 下表に、頻繁に使われるエディタ機能をまとめます。 DS50002027D_JP - p.176 2016 Microchip Technology Inc. エディタ 表 7-2: エディタ機能 エディタ機能 参考文献 ユニコードのサポート 既定値では、新規作成した IDE プロジェクトは ISO-8859-1 文字エンコードを使います。これを変更するには以下を行い ます。 • [Projects] ウィンドウでプロジェクト名を右クリックして [Properties] を選択する。 • 左側の [Categories] の下の列で [General] を選択する。 • ページ下部の [Encoding] を変更する。 構文に基づくコードの色分け [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences])、[Fonts and Colors] ボタン、[Syntax] タブ 色分けは、プロジェクト作成時のエンコード設定で決まり ます。 コード入力中のエラー表示 以下の NetBeans ヘルプトピックを参照してください。 [C/C++/Fortran Development] > [Working with C/C++/Fortran Projects] > [Editing Source Files in C/C++/Fortran Projects] > [Error Highlighting] シンボル、エラー等の色付きマーカによる識別 [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences])、[Fonts and Colors] ボタン、 [Annotations] タブ 候補とヒントを表示するスマートコード補完 [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences])、[Editor] ボタン、[Code Completion] タブ アセンブリと C コードの折り畳みおよび展開表示 セクション 7.6「コード折り畳み」 関数 ( 例 : delay(x)) を右クリックして、その関数が 以下の NetBeans ヘルプトピックを参照してください。 使われている箇所を検索する。検索を関数内のみに制 [Find Usages] ダイアログ 限する事もできます ( 例 : ローカル変数 i の検索 )。 関数 ( 例 : delay(x)) を右クリックして、コールグラフ セクション 5.17「コールグラフの表示」 を表示する。 コールグラフの横のボタンを使って順番の入れ換え等 を行う ソースコード内でキーワード ( 例 : //TODO) を使って 以下の NetBeans ヘルプトピックを参照してください。 コメントを作成し、それらの要処理事項をスキャンし [Tools] > [Options] > [Team] > [Action Items] て [Action Items] ウィンドウに自動的に追加する バージョン管理システムがなくてもローカルファイル セクション 5.20「ソースコードの管理」– ローカル履歴 履歴機能を使って以前のバージョンを復元する [Go to File]、[Go to Type]、[Go to Symbol]、[Go to セクション 11.2.4「[Navigate] メニュー」 Header]、[Go to Declaration] 等を使って、素早く移動 する リファクタリング オプション(関数と変数の名前変更、 セクション 7.7「C コードのリファクタリング」 全関数の検索等 ) を使ってコードの構造を改良する 7.3.5 エディタのトラブルシュート エディタ内でハイライトされたコードのエラーは、コンパイラのマニュアルを参照し て く だ さ い。ハ イ ラ イ ト さ れ た エ ラ ー の 詳 細 は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Working with C/C++/Fortran Projects] > [Editing Source Files in C/C++/Fortran Projects] > [Error Highlighting]) を参照してください。 個々のエラーはセクション 9.7「エラー」に記載しています。 2016 Microchip Technology Inc. DS50002027D_JP - p.177 MPLAB® X IDE ユーザガイド 7.4 エディタのオプション エディタ オプションの設定方法 1. [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択して [Options] ダイアログを開く。 2. [Editor] ボタンをクリックする。タブをクリックしてエディタ機能を設定する。 下表に各タブとそのオプションを示します。 表 7-3: [General] タブ 項目 説明 Code Folding コード折り畳みを有効にする場合にチェックを入れます。また折り畳 むコードの種類を選択します。コード折り畳みの詳細はセクション 7.6「コード折り畳み」を参照してください。 Camel Case Behavior キャメルケース ナビゲーションを有効にする場合にチェックを入れ ます。 表 7-4: [Formatting] タブ 項目 説明 Language フォーマット設定を適用するプログラミング言語を選択し ます。 Category カテゴリを選択します。現在は [Tabs and Indents] のみです。 Expand Tabs to Spaces タブをスペースに変換する場合、チェックを入れます。 Number of Spaces per Indent インデント 1 段をスペース何文字にするか入力します。 Tab Size タブのサイズを入力します。 Right Margin 表 7-5: 右余白のサイズを入力します。 [Code Completion] タブ 項目 説明 Language コード補完機能を適用するプログラミング言語を選択します。 Completion コード補完機能を有効にする場合、チェックを入れます。コード補完の詳細 は NetBeans ヘルプトピックを参照してください。[C/C++/Fortran Development] > [Working with C/C++/Fortran Projects] > [Editing Source Files in C/C++/Fortran Projects] > [Using Code Completion] 表 7-6: [Code Templates] タブ 項目 説明 Language テンプレートを適用するプログラミング言語を選択します。 Templates 上記で指定した言語に対するテンプレート情報を入力します。 Abbreviation: エディタに入力する省略形を入力します。 Expanded Text: 上記の省略形と [Expand template on] で選択したキーを 入力すると、ここで指定するテキストに展開します。 Description: テンプレート項目に説明を追加します ( 任意 )。 コード テンプレートの詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Working with C/C++/Fortran Projects] > [Editing Source Files in C/C++/Fortran Projects] > [Using Code Templates]) を参照してく ださい。 Expand template on 省略形を展開するトリガとなるキーを選択します。 DS50002027D_JP - p.178 2016 Microchip Technology Inc. エディタ 表 7-7: [Hints] タブ 項目 説明 Language ヒントを適用するプログラミング言語を選択します。 [Hint] ウィンドウ [Hint] ウィンドウでは、エラー、警告等どれをどのように表示するかを指定し ます。 表 7-8: [Macros] タブ 項目 説明 Macros エディタマクロを作成、編集、削除します。 • マクロを新規作成するには、[New] ボタンをクリックしてマクロ名を入力し ます。その後、リストでそのマクロを選択し、マクロコード エディタで コードを入力します。 • マクロのキーボード ショートカットを設定するには、リストからマクロを 選択し、[Set Shortcut] ボタンをクリックし、ダイアログ ボックスにショート カットを入力します。このショートカットを使ってマクロを実行します。 • マクロを削除するには、リストからマクロを選択して [Remove] をクリック します。 • マクロコードを変更するには、リストからマクロを選択してエディタでコード を編集します。 Macro Code 上記のマクロ名をクリックして、マクロコードを入力します。 マクロのキーワードの一覧は、以下の URL を参照してください。 https://netbeans.org/kb/docs/ide/macro-keywords.html Note: 通常、エディタでゼロから入力するよりも、操作を記録してマクロとし て 追 加する方が簡単です。マクロの記録には、[Edit] > [Start/Stop Macro Recording] を使います。 2016 Microchip Technology Inc. DS50002027D_JP - p.179 MPLAB® X IDE ユーザガイド 7.5 エディタの赤の感嘆符 ソースエディタは、ソースコード中の構文およびセマンティック エラー ( 例 : セミコ ロンの欠落、未解決の識別子 ) をハイライト表示します。エラーは赤の下線で表示さ れます。また、エラーを含む各行の隣のエディタ ウィンドウ左側の余白に赤の感嘆符 「グリフ」 が表示されます。グリフの上にマウスカーソルを置くとエラーメッセージ が表示されます。 Note: 7.5.1 エディタに表示されるエラーが全て本当のエラーとは限りません。認識で きないシンボルである可能性もあります。コードをビルドしてみてビルド に成功するかどうか確かめます。詳細はセクション 7.5.2「未認識のシン ボルによるエラー」を参照してください。 エラー条件とその他のマーク表示 エラーは、以下のいずれかを実行した場合に発生する可能性があります。 • • • • • 新規のコードを入力した 既存のコードを編集した 既存のファイルをプロジェクトに追加した 別の場所にファイルを移動した プロジェクトのプロパティまたはソースファイルを変更した ファイル内にエラーがある場合、エディタ ウィンドウ右側のエラーストライプに赤の マークが表示されます。エラーストライプは、現在表示されている行だけではなく ファイル全体を表しています。エラーストライプのマークをダブルクリックすると、 マークが表す行にジャンプします。 7.5.2 未認識のシンボルによるエラー コンパイラのプリパーサまたはパーサによって認識されないシンボルは、エラーとして 表示されていても実際にはエラーではない ( コードはビルドされる ) 場合があります。 従って、このタイプのエラーが疑われる場合、プロジェクトのビルドを試みます。 例えば以下を参照してください。 • セクション 9.7.6「For 8-bit code, #asm and #endasm cause red bangs in the Editor window」 • セクション 9.7.7「For 16-bit code, MPLAB XC16 packed attribute statement causes red bangs in the Editor window」 DS50002027D_JP - p.180 2016 Microchip Technology Inc. エディタ 7.6 コード折り畳み コードの一部を折り畳んで非表示にする事で、コードを読みやすくします。選択した オプションに応じて、C またはアセンブリコードの一部を折り畳み ( 非表示 ) または 展開 ( 表示 ) できます。 • • • • コード折り畳みの使い方 コード折り畳みのカスタマイズ コード折り畳みのカスタマイズ – ASM カスタマイズしたコード折り畳み / 展開 7.6.1 コード折り畳みの使い方 コード折り畳みは既定値で有効になっています。ほとんどの C またはアセンブリコード では、折り畳む事ができるコード部分はコード左の [-] および [+] アイコンで示されて います。 • コード折り畳みの有効化と設定 • コード折り畳み / 展開 • コード折り畳み – インライン アセンブリと MPLAB C18 C 7.6.1.1 コード折り畳みの有効化と設定 コード折り畳みは以下の手順で有効化および設定します。 1. [Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を選択して [Options] ダイアログを開く。 2. [Editor] ボタンをクリックする。 3. [General] タブをクリックし、[Use code folding] にチェックを入れる。 4. その下で折り畳むセクションを指定する ( 折り畳みを実行するコードタイプが表 示されない場合、カスタムの折り畳み機能を設定できます )。 7.6.1.2 コード折り畳み / 展開 エディタで、メソッドの隣の [-] アイコンをクリックすると、コードは折り畳まれます。 折り畳まれたメソッドの隣の [+] アイコンをクリックすると、コードは展開されます。 折り畳まれたコードは省略記号の箱で表されます。省略記号の箱の上にカーソルを置 くと、IDE は折り畳まれたメソッドを表示します。 図 7-1: 2016 Microchip Technology Inc. 展開されたコード DS50002027D_JP - p.181 MPLAB® X IDE ユーザガイド 図 7-2: 7.6.1.3 折り畳まれたコード コード折り畳み – インライン アセンブリと MPLAB C18 C _asm および _endasm ディレクティブを使っている場合、コード折り畳みは MPLAB C18 のインライン アセンブリコードに対して機能しません。その回避策は、コード ブロックをコード / ファイルの末尾付近に配置する事です。 7.6.2 コード折り畳みのカスタマイズ カスタマイズしたコード折り畳みを使うと、コードを希望の領域で折り畳む事ができ ます。 • コード折り畳みのカスタマイズ – C • コード折り畳みのカスタマイズ – ASM • カスタマイズしたコード折り畳み / 展開 7.6.2.1 コード折り畳みのカスタマイズ – C C コードをカスタム設定で折り畳む方法は以下の通りです。 • 折り畳むコードの前後に以下のコメントを入力します。 // <editor-fold defaultstate="collapsed" desc="user-description"> C code block to fold // </editor-fold> または • fcom と入力して <Tab> キーを押すと、自動的に上記のコメントが挿入されます。 コメントが入力されたら、自分のコード向けにカスタマイズできます。 defaultstate desc DS50002027D_JP - p.182 「collapsed」または「expanded」のどちらかを指定します。 折り畳むコードブロックの説明を入力します。折り畳んでも、参考の ためにこの説明だけは表示されたままになります。 2016 Microchip Technology Inc. エディタ 以下に、カスタムコード折り畳みの例を示します。 図 7-3: 展開されたコード 図 7-4: 折り畳まれたコード 詳 細 は NetBeans ヘ ル プ ト ピ ッ ク ([C/C++/Fortran Development] > [Working with C/C++/Fortran Projects] > [Editing Source Files in C/C++/Fortran Projects] > [Folding Blocks of Code]) を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.183 MPLAB® X IDE ユーザガイド 7.6.2.2 コード折り畳みのカスタマイズ – ASM アセンブリコードをカスタム設定で折り畳む方法は以下の通りです。 • MPASM アセンブラまたは MPLAB XC16 アセンブラのコードの場合、以下のコメント をコードの前後に入力します。 ; <editor-fold defaultstate="collapsed" desc="user-description"> ASM code block to fold ; </editor-fold> • MPLAB XC32 アセンブラのコードの場合、以下のコメントをコードの前後に入力 します。 // <editor-fold defaultstate="collapsed" desc="user-description"> ASM code block to fold // </editor-fold> または • MPASM アセンブラまたは MPLAB XC16 アセンブラのコードの場合、fcom; と入 力して <Tab> キーを押すと、自動的に上記のコメントが挿入されます。 • MPLAB XC32 アセンブラのコードの場合、fcom// と入力して <Tab> キーを押すと、 自動的に上記のコメントが挿入されます。 アセンブリコードは、C コードと同じように折り畳まれます。コード折り畳みの例は、 上記の C コードの例を参照してください。 7.6.2.3 カスタマイズしたコード折り畳み / 展開 コードブロックを展開または折り畳むには、[View] メニューを選択するか、[Editor] ウィンドウを右クリックして、以下を選択します。 1. 2. 3. 4. [Code Folds] > [Collapse Fold] - コードブロックを非表示 ( 折り畳み ) [Code Folds] > [Expand Fold] - コードブロックを表示 ( 展開 ) [Code Folds] > [Collapse All] - 折り畳み設定したコードブロックの全てを非表示 [Code Folds] > [Expand All] - 折り畳み設定したコードブロックの全てを表示 コード折り畳み / 展開の図はセクション 7.6.2.1「コード折り畳みのカスタマイズ – C」 を参照してください。 DS50002027D_JP - p.184 2016 Microchip Technology Inc. エディタ 7.7 C コードのリファクタリング Note: この機能については、[Start Page] の [My MPLAB X IDE] タブを開き、 [Extend MPLAB] セクションの [Selecting Simple or Full-Featured Menus] トピックを参照してください。 リファクタリングは、プログラムの挙動を一切変更する事なくコードを再構成します。 リファクタリングによりコードが読みやすくなり、内容の理解と編集が容易になります。 式をリファクタリングした場合、同じ結果が得られる必要があるのと同様に、リファ クタリング後のプログラムも元のプログラムと機能的に等価である事が必要です。 一般的に、以下を目的としてコードをリファクタリングします。 • • • • • コードの編集や機能の追加を容易にする コードを単純化して理解しやすくする 不要な繰り返しを取り除く コードを他の用途またはより一般的な用途で使えるようにする コードの性能を改善する IDE のリファクタリング機能は、ユーザが加えようとしている変更を評価してコード を再構成し、その変更によってアプリケーションのどの部分が影響を受けるのかを示 します。これにより、必要な全ての箇所でコードを変更してコードを単純化できます。 例えば、クラス名を変更する場合、IDE はコード内でその名前が使われている箇所を 全て検出し、その名前が使われている箇所を全て変更するようユーザに提示します。 • • • • • [Refactor] メニュー リファクタリングした変更の取り消し 関数の使用箇所の検索 関数またはパラメータの名前変更 C コードの移動、コピー、安全な削除 7.7.1 [Refactor] メニュー IDE のリファクタリング機能は、ユーザがある箇所でコードの構造を変更した時に、 その変更を反映してコード全体を更新します。 リファクタリング機能は、[Refactor] メニュー ( セクション 11.2.6 「[Refactor]メニュー」 参照 ) から利用できます。 7.7.2 リファクタリングした変更の取り消し [Refactor] メニュー内のコマンドを使って適用した変更は、以下の手順で取り消す事 ができます。リファクタリングを取り消すと、IDE は、リファクタリングの影響を受 けた全てのファイル内の全ての変更箇所を元に戻します。 リファクタリングを取り消す手順は以下の通りです。 1. メイン メニューバー内の [Refactor] メニューを開く。 2. [Undo] を選択する。 IDE は、リファクタリングの影響を受けた全てのファイル内の全ての変更を元に 戻します。 リファクタリングを実行した後に、その影響を受けたファイルのいずれかを変更した 場合、リファクタリングの [Undo] は利用できなくなります。 2016 Microchip Technology Inc. DS50002027D_JP - p.185 MPLAB® X IDE ユーザガイド 7.7.3 関数の使用箇所の検索 [Find Usages] コマンドを使うと、プロジェクトのソースコード内で特定の関数が使 われている全ての箇所を検出できます。 プロジェクト内で関数が使われている箇所を検出する方法 1. [Navigator]ウィンドウまたは[Source Editor]ウィンドウ内で関数を右クリックし、 [Find Usages] を選択します ( または <Alt>+<F7> を押す )。 2. [Find Usages] コマンドは、 指定された関数を呼び出しているコード行を表示します。 [Find Usages] ダイアログ ボックス内で [Find] をクリックすると、 [Usages] ウィンドウに、その関数が見つかったファイルの名前と、そのファイル 内で関数が使われているコード行が表示されます。 見つかった関数使用行のいずれかを選択して、その位置へジャンプする方法 • [Usages] ウィンドウの左ペイン内で、上向きまたは下向き矢印ボタンを使って、関 数使用行を選択します。 • コードの 1 行をダブルクリックしてファイルを開くと、カーソルはそのコード行を 指します。 その他の IDE 検索機能 以下の IDE ツールにより、プロジェクト内で特定テキストが使われている全ての箇所 を検索できます。 • テキストの検索と置換 : エディタで開いたソースファイル内で、特定テキストを検 索するには、[Edit] > [Find] を選択して [Find] ダイアログ ボックスを開くか、[Edit] > [Replace] を選択して [Replace] ダイアログ ボックスを開きます。 これらのコマンドは、 文字列が C コードエレメントであるかどうかに関係なく、一致する文字列を全て検 索します。 • プロジェクト内の検索 : [Find] コマンドと同様に、[Find in Projects] コマンドも、関 数名かどうかに関係なく、一致する文字列を検索します。[Edit] > [Find in Projects] を選択して [Find in Projects] ダイアログ ボックスを開き、検索文字列を入力します。 [Navigator] ウィンドウ内で関数をダブルクリックすると、ソースファイル内でその関 数が宣言されている箇所を検索できます。その関数が別のソースファイル内で宣言さ れている場合、関数を右クリックしてコンテクスト メニューから [Navigate] > [Go To Declaration] を選択します。 7.7.4 関数またはパラメータの名前変更 関数またはパラメータの名前を変更し、プロジェクト全体を通してその関数または パラメータへの参照を更新するには、以下の手順を実行します。 1. エディタで関数またはパラメータを右クリックし、コンテクスト メニューから [Refactor] > [Rename] を選択します。 2. [Rename] ダイアログ ボックスに、新しい名前を入力します。 3. 必要に応じて [Preview] をクリックします。すると、[Refactoring] ウィンドウ内 の [Source Editor] の下段に、変更対象のコード行が表示されます。チェックを外 すとその行は変更されません。 4. [Do Refactoring] をクリックして、変更を適用します。 関数またはパラメータにカーソルを合わせて <Ctrl>+<R> を押して新しい名前を入力 すると、直接簡単に名前を変更できます。名前の変更作業を終了するには [Escape] を押します。 7.7.5 C コードの移動、コピー、安全な削除 これらの機能は C++ コード専用です。セクション 11.2.6「[Refactor] メニュー」を参 照してください。 DS50002027D_JP - p.186 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 8 章 プロジェクト ファイルおよびフォルダ 8.1 はじめに 本章では、MPLAB X IDE 内のプロジェクト ファイルとプロジェクト フォルダを表示 する以下のウィンドウを説明します。 • • • • [Projects] ウィンドウの表示 [Files] ウィンドウの表示 [Favorites] ウィンドウの表示 [Classes] ウィンドウの表示 その他に、MPLAB X IDE のファイルとフォルダに関する以下の内容も記載しています。 • • • • • 8.2 ファイルまたはフォルダ名の制約 ユーザ コンフィグレーション データの表示 MPLAB IDE v8 プロジェクトのインポート – 相対パス プロジェクトの移動、コピー、リネーム プロジェクトの削除 [Projects] ウィンドウの表示 [Projects] ウィンドウが表示するプロジェクト フォルダは論理 ( 仮想 ) フォルダです。 このウィンドウの詳細は本書のセクション 12.13「[Projects] ウィンドウ」を参照して ください。 ユーザは少なくともソースファイルを追加する必要があります。MPLAB X IDE は、 各種の既定値ファイル ( ヘッダファイル、リンカスクリプト ) を自動的に見つけます。 ユーザはライブラリ ファイル、プリコンパイル済みオブジェクト ファイル、編集済 みのヘッダおよびリンカスクリプト ファイルを追加できます。ビルドに含めないファ イルは「Important Files」の下に保存できます。 図 8-1: 2016 Microchip Technology Inc. [Projects] ウィンドウ – シンプルな C コード プロジェクト DS50002027D_JP - p.187 MPLAB® X IDE ユーザガイド 表 8-1: [Projects] ウィンドウのフォルダ定義 仮想フォルダ 8.3 格納するファイル Header Files ヘッダファイル (.h, .inc) Library Files ライブラリ ファイル (.a, .lib) Linker Files リンカファイル (.ld, .gld, .lkr) Object Files プリコンパイル済みオブジェクト ファイル (.o) Source Files ソースファイル (.c, .asm) Important Files その他の重要ファイル (makefile 等 ) や データシート PDF 等の文書ファイルをここに含める事ができます。 [Files] ウィンドウの表示 [Files] ウィンドウに表示されるプロジェクト フォルダは、実在するフォルダです。C コード プロジェクトでこのウィンドウを使う場合の詳細は NetBeans ヘルプトピック 「Files Window」を参照してください。 図 8-2: DS50002027D_JP - p.188 [Files] ウィンドウ – シンプルな C コード プロジェクト 2016 Microchip Technology Inc. プロジェクト ファイルおよびフォルダ 表 8-2: [Files] ウィンドウのフォルダ定義 フォルダ 説明 MyProject Makefile ファイルと C コードまたはアセンブリのアプリケーション ファ イルを格納するプロジェクト フォルダです。 Makefile は、プロジェクトのマスタ makefile です。このファイルはプロ ジェクト作成時に生成され、それ以降は一切変更されません ( 再生成されま せん )。GNU の make に詳しければ、このファイルを編集してもかまいま せん。しかし、MPLAB X IDE では、Makefile 自体を編集する代わりに、 プリビルド /make ステップとポストビルド /make ステップを追加する方法 を使えます。 build(1) 中間生成ファイルを格納するフォルダです。プロジェクト コンフィグレー ション、使い方、格納場所に応じたサブフォルダにファイルを格納します。 このフォルダは以下のファイルを格納します。 実行ファイル (.o) 依存関係ファイル (.o.d) HI-TECH® の中間生成ファイル (.p1) dist(1) 出力ファイルを格納するフォルダです。プロジェクト コンフィグレーション、 使い方、格納場所に応じたサブフォルダにファイルを格納します。 このフォルダは以下のファイルを格納します。 実行ファイル (.hex) ELF または COFF オブジェクト ファイル (.elf, .cof) ライブラリ ファイル (.a, .lib) nbproject makefile とメタデータ ファイルを格納するフォルダです。このフォルダは 以下のファイルを格納します。 プロジェクトの makefile コンフィグレーション別の makefile project.xml: IDE が生成したメタデータ ファイル configurations.xml: メタデータ ファイル default, MyConfig(2) プロジェクト コンフィグレーションを格納するフォルダです。ユーザがコン フィグレーションを一切作成しなかった場合、全てのコードは「default」 フォルダに格納されます。 production, debug(2) 量産バージョンとデバッグ バージョンのフォルダです。 _ext(2) 外部プロジェクトのファイルを格納するフォルダです。プロジェクト フォ ルダの外部にあるファイルを参照する場合、そのファイルがこのフォルダ に表示されます。 Note 1: これらのフォルダをソース管理に含める必要はありません。これらのフォルダはビルド によって作成されます。セクション 5.20「ソースコードの管理」も参照してください。 2: これらの項目は、図 8-2 には示していません。 2016 Microchip Technology Inc. DS50002027D_JP - p.189 MPLAB® X IDE ユーザガイド 8.4 [Classes] ウィンドウの表示 C++ をサポートするコンパイラでは、[Classes] ウィンドウを使ってプロジェクトの クラスファイルを表示できます ([Window] > [Classes])。 このウィンドウの詳細は NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Working With C/C++/Fortran Projects] > [Navigating Source Files and Projects] > [Using the Classes Window]) を参照してください。 図 8-3: 8.5 [Classes] ウィンドウ – シンプルな C コード プロジェクト [Favorites] ウィンドウの表示 [Favorites] ウィンドウ ([Window] > [Favorites]) を使うと、プロジェクトの内外にかか わらず、コンピュータまたはネットワーク上の任意のファイルまたはフォルダにアク セスできます。 [Favorites] ウィンドウを初めて開いた時には、コンピュータのホームフォルダのみが 含まれています。 • ファイルまたはフォルダを追加するには、[Favorites] ウィンドウ内で右クリックし て [Add to Favorites] を選択する • ファイルを追加するには、[Projects] ウィンドウ内でファイル名を右クリックして [Tools] > [Add to Favorites] を選択する このウィンドウの詳細は NetBeans ヘルプトピック「Favorites Window」を参照して ください。 DS50002027D_JP - p.190 2016 Microchip Technology Inc. プロジェクト ファイルおよびフォルダ 8.6 ファイルまたはフォルダ名の制約 ファイルまたはフォルダ名に、以下の文字を使わないでください。 • • • • • • • 空白 タブ : \t バックスラッシュ : \ アスタリスク : * 角カッコ : [ ] 丸カッコ : ( ) セミコロン : ; 丸カッコには特に注意してください。 この制約は MPLAB X IDE がビルドツールとして使う GNU Make によるものです。 8.7 ユーザ コンフィグレーション データの表示 MPLAB X IDE のユーザフォルダ (userdir) は、ユーザ コンフィグレーション データ ( 例 : ウィンドウ構成、エディタ設定、メニューとツールバーのカスタマイズ、各種 モジュールの設定 ( 既知のコンパイラ一覧等 )) を格納しています。また、プラグイン をインストールする場合 ([Tools] > [Plugins])、プラグイン情報 ( コード ) は、MPLAB X インストール フォルダではなく、ユーザフォルダに格納されます。 ユーザフォルダの格納場所を調べるには、[Help] > [About] を選択し Userdir の次のパス を見つけます。 この情報は MPLAB X IDE が作成および管理します。 8.8 MPLAB IDE v8 プロジェクトのインポート – 相対パス MPLAB IDE v8 プロジェクトは以下のパスに格納されています。 C:\MyProjects\mplab8project MPLAB IDE v8 プロジェクトを MPLAB X IDE にインポートした場合、以下のファイルが 作成されます。 C:\MyProjects\mplab8project\mplab8project.X 既定値では、MPLAB X IDE にインポートしたプロジェクトは、両方のプロジェクト の保守性を維持するために、MPLAB IDE v8 プロジェクトの下に置かれます。これに 対し、MPLAB X IDE のプロジェクト フォルダはどこに置いてもかまいません。また、 プロジェクト名は mplab8project.X に設定されますが、変更してもかまいません。 MPLAB X IDE のプロジェクト名は .X で終わるという規則がありますが、あくまで 便宜的なものです。 新規プロジェクトは、ソースファイルをプロジェクト フォルダにコピーしません。 その代わりに、v8 フォルダ内のファイル格納場所を参照します。独立した MPLAB X IDE プロジェクトを作成するには、新規プロジェクトを作成して、MPLAB IDE v8 の ソースファイルを、そのプロジェクトにコピーする必要があります。 詳細はセクション 5.2「レガシー MPLAB プロジェクトのインポート」を参照してく ださい。 8.9 プロジェクトの移動、コピー、リネーム プロジェクトを作成した後で、変更する必要がある事に気付く場合があります。プロジェ クトを右クリックすると開くコンテクスト メニューを使うと、MPLAB X IDE 内でプロ ジェクトを移動、コピー、リネームできます。プロジェクトを削除する事もできます。 詳細はセクション 12.13.2「[Projects] ウィンドウ – [Project] メニュー」を参照してく ださい。 2016 Microchip Technology Inc. DS50002027D_JP - p.191 MPLAB® X IDE ユーザガイド 外部ツールを使う事もできます。プロジェクト ファイルの構造は、MPLAB X IDE を 使わなくても問題ないようになっています。 8.10 プロジェクトの削除 MPLAB X IDE でプロジェクトを削除する方法 1. [Projects] ウィンドウでプロジェクト名を右クリックして [Delete] を選択する。 2. [Delete Project] ダイアログで、プロジェクト ファイル ( または、プロジェクト ファイルと全てのソースファイル ) をコンピュータから削除する。ソースファイル も削除するかどうかを選択して [Yes] をクリックする。 3. プロジェクトは削除され、MPLAB X IDE からは見えなくなる ( しかし、一部の makefile 情報はコンピュータに残ります )。 全てのプロジェクト ファイルをコンピュータから削除する方法 1. MPLAB X IDE 内でプロジェクトを削除する。またはプロジェクトを閉じる。 2. MPLAB X IDE を終了する ( 以下の Note を参照 )。 3. これらのファイルを削除する。 Note: DS50002027D_JP - p.192 MPLAB X IDE は終了時に、プロジェクトに割り当てられた全てのリソース を解放する訳ではありません。 MPLAB X IDE は Java 上で動作しているため、 リソースの解放は即座には行われません。Java では、ガーベジ コレクション (GC) を呼び出すタイミングを JRE に決定させるのが最善の方法です。 しかし、メモリツールバーを有効にしてクリックする事で、GC を強制的 に実行する事もできます。 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 9 章 トラブルシュート 9.1 はじめに 本章には、MPLAB X IDE の使用中に問題やエラーが発生した場合の対処に役立つ情 報を記載しています。ここに記載した方法では対処できなかった場合は Microchip 社 までお問い合わせください。連絡先は本書の「サポート」に記載しています。 • • • • • • • 9.2 USB ドライバのインストールに関する問題 異なるプラットフォーム ( オペレーティング システム ) で使う場合の問題 Windows OS で使う場合の問題 NetBeans プラットフォームの問題 MPLAB X IDE の問題 エラー フォーラム USB ドライバのインストールに関する問題 正しい USB ドライバのインストール方法はセクション 2.3「USB ドライバ ( ハード ウェア ツール用 ) のインストール」を参照してください。 問題が生じた場合の対処方法はセクション 2.3.2.7「ツールの通信の問題」を参照し てください。 9.3 異なるプラットフォーム ( オペレーティング システム ) で使う場合の問題 MPLAB X IDE を複数の異なるプラットフォーム (Windows、Mac、Linux オペレー ティング システム ) で使う場合、以下の点に注意してください。 • 相対パスにはフォワード スラッシュ「/」を使う必要があります。バックスラッシュ 「\」は、Windows OS プ ラ ッ ト フ ォ ー ム 以 外 で は 使 え ま せ ん。例 : #include headers/myheader.h. • Linux OS は大文字と小文字を区別します。従って generictypedefs.h と GenericTypeDefs.h は区別されます。 9.4 Windows OS で使う場合の問題 Windows オペレーティング システムの最大パス長は 260 文字です。Microsoft 社によ る説明は以下の URL をご覧ください。 https://msdn.microsoft.com/en-us/library/aa365247.aspx#maxpath Windows は、ユーザが長過ぎるパスを作成する事を妨げようとしますが、特定の アプリケーション、カット & ペースト等で、260 文字を超えるパスを指定する事は可 能です。しかし、プロジェクトのソースファイルが長過ぎるパスを使っている場合、 プロジェクトは正常にビルドされません。 また、コマンドラインに関して以下の制約があります。 セクション 9.7.1「Command line too long (Windows XP 以降 )」 2016 Microchip Technology Inc. DS50002027D_JP - p.193 MPLAB® X IDE ユーザガイド 9.5 NetBeans プラットフォームの問題 NetBeans プラットフォームのリリース バージョンによっては、MPLAB X IDE の使 用に際して問題が生じる可能性があります。詳細は NetBeans ウェブサイトをご覧く ださい。 http://www.netbeans.org 以下も参照してください。 http://netbeans.org/community/releases/index.html 9.5.1 前景色として [Inherited] を選択すると、カテゴリのテキストがエ ディタ内で見えなくなる フィールドの前景色 ([Foreground]) が [Inherited] の場合、ポップアップ完了ウィンドウ ( ヒント ) 内のテキストが見えなくなります。ポップアップ完了ウィンドウには、未 選択のエントリが白の背景上の白のテキストとして表示されます。一覧を下にスク ロールすると、エントリごとに青の背景上の白のテキストで表示されます。それ以外 の機能は正常に働いているように見えます。 この問題は Netbeans Bugzilla の [Fonts & Colors] の問題として登録されています。 https://netbeans.org/bugzilla/show_bug.cgi?id=249766 [Options] > [Fonts & Colors]。 [Syntax]タブの任意のカテゴリで前景色として[Inherited] を選択すると、エディタ内でテキストが見えなくなります。プリファレンス xml ファ イ ル「org-netbeans-modules-editor-settings-CustomFontsColors-tokenColorings.xml」 を見ると、問題のあるカテゴリ ( 例 : 「Field」、 「Identifier」) の前景の属性に有効 な色へのリンクが存在しない事が分かります。 回避策 : 1. 2. 3. 4. [Tools] > [Options]、[Fonts & Colors] ボタン、[Syntax] タブを選択する。 [Language] に [C] を選択する。 [Category] で [Field] をクリックする。 [Foreground] に [Inherited] が選択されている事を確認する。リストから任意の色 を選択する。 5. [OK] をクリックする。 DS50002027D_JP - p.194 2016 Microchip Technology Inc. トラブルシュート 9.6 MPLAB X IDE の問題 下表に MPLAB X IDE の問題を示します。この表で問題の解決策が見つからない場合、 プロジェクトのデバッグおよびコンパイルツールに関連する文書もご覧ください。 • • • • • MPLAB IDE v8 プロジェクトのインポート – 設定 MPLAB IDE v8 プロジェクトのインポート – 変更されたリンカスクリプト Windows XP と読み込み可能プロジェクト / ファイル MPLAB C18 C コンパイラと構造 プロジェクトがエンプティである / プロジェクト ファイルが灰色表示されている 9.6.1 MPLAB IDE v8 プロジェクトのインポート – 設定 MPLAB IDE v8 のワークスペースに保存されている設定 ( ツール設定等 ) は、新しい MPLAB X IDE プロジェクトに転送されません。ワークスペースに保存されている情 報 に つ い て は、MPLAB IDE v8 ヘ ル プ ([MPLAB IDE Reference] > [Operational Reference] > [Saved Information]) を参照してください。 9.6.2 MPLAB IDE v8 プロジェクトのインポート – 変更されたリンカス クリプト MPLAB IDE v8プロジェクトのリンカスクリプトを変更してオブジェクト ファイルを インクルードするようにしていた場合、MPLAB X IDE にインポートすると、リンカ はそのファイルを見つける事ができません。MPLAB IDE v8 と MPLAB X IDE では ビルドパスが異なるからです。 従って、以下のようなエラーが表示されます。 <install path>ld.exe: cannot find file.o MPLAB IDE v8 では、ビルド関連ファイルが全て 1 つのフォルダに保存されるのに対し、 MPLAB X IDE ではビルドファイルが別々のサブフォルダに保存されるためです。 既存のリンカスクリプトにワイルドカードを使うと、MPLAB X IDE でも動作させる 事ができます。例えば、 /* Global-namespace object initialization - MPLAB v8*/ .init : { KEEP (crti.o(.init)) : } >kseg0_program_mem というスクリプトを、以下のように編集します。 /* Global-namespace object initialization - MPLAB X*/ .init : { KEEP (*crti.o(.init)) : } >kseg0_program_mem これとは別に、C コードに関数を配置できるアドレス属性を使う方法もあります。 int __attribute__((address(0x9D001000))) myfunction (void) {} これによって、既定値のリンカスクリプトを変更する事なく、アドレスに関数を配置 できます。 2016 Microchip Technology Inc. DS50002027D_JP - p.195 MPLAB® X IDE ユーザガイド 9.6.3 Windows XP と読み込み可能プロジェクト / ファイル Windows XP の場合、[Add Loadable Project/File] ダイアログの [Store path as] の選択 肢 [Auto] と [Absolute] は機能しません。[Relative] を使う必要があります。 9.6.4 MPLAB C18 C コンパイラと構造 RAM メモリ内の構造のポインタ値は、[Watches] ウィンドウ内では正しく表示されま せん。これは、コンパイラが完全なデバッグ情報を保存しないためです。この問題の 回避策は、MPLAB XC8 C コンパイラを代わりに使う事です。 9.6.5 プロジェクトがエンプティである / プロジェクト ファイルが灰色表 示されている 破損したプロジェクトを読み込み、かつダイアログの質問の答えを間違えた場合、 [Projects] ウィンドウが灰色表示され、「ソースファイルがないためプロジェクトを ビルドできない」というメッセージが表示されます。 図 9-1: プロジェクト エンプティエラー この問題は、破損したプロジェクトを MPLAB X IDE に読み込んだ場合に発生します。 Cソースファイルをヘッダファイルに関連付けられるかどうか尋ねるダイアログが表 示されます。この時点で [No] ( 既定値 ) をクリックする事で、この問題を回避できます。 図 9-2: DS50002027D_JP - p.196 [New Header Extension] ダイアログ 2016 Microchip Technology Inc. トラブルシュート しかし、[Yes] をクリックするとソースファイルがヘッダファイルとして認識されて しまい、プロジェクトは空のように見えます。プロジェクトを修復するため、以下の どちらかの方法が使えます。 • MPLAB X IDE を終了する。 • [Help] > [About] ダイアログで指定されている MPLAB X IDE のユーザフォルダに移 動し、MPLAB X IDE の使用中のバージョンのフォルダを削除する ( 例えば、フォルダ v3.05をC:\Users\UserName\AppData\Roaming\mplab_ide\dev\v3.05か ら削除します )。 • MPLAB X IDE を再起動する。 または • • • • [Tools] > [Options] を選択し、[Embedded] ボタンをクリックし、[Other] タブを開く。 ヘッダファイルの関連付けから「c」を削除する。 ソースファイルの関連付けに「c」を追加する。 [OK] をクリックする。 2016 Microchip Technology Inc. DS50002027D_JP - p.197 MPLAB® X IDE ユーザガイド 9.7 エラー IDE は様々な形でエラーを示しますが、多くの場合ウィンドウ内のアイコンまたは [Output] ウィンドウ内のメッセージとしてエラーを表示します。アイコンにカーソル を合わせると、問題の内容を示すメッセージが表示されます。テキスト メッセージに ついては、オンラインヘルプで該当するエラーを検索してください。 IDE とエディタの一般的なエラーと解決方法を以下に示します。 • Command line too long (Windows XP 以降 ) • Couldn’t reserve space for Cygwin™ heap (Windows 7 または 8) • Could not access the URL through the external browser. Check the browser configuration • Destination Path Too Long/The filename or extension is too long (Windows OS) • The project ProjectName is empty • For 8-bit code, #asm and #endasm cause red bangs in the Editor window • For 16-bit code, MPLAB XC16 packed attribute statement causes red bangs in the Editor window • HEXMATE Conflict Report Address Error • プログラムエラー 9.7.1 Command line too long (Windows XP 以降 ) プロジェクトの makefile 実行時、各コマンドはローカル ネイティブシェルに渡され ます。Windows XP 以降の OS では、8191 文字という制限があります。従って、数 百 C ファイルをリンクするプロジェクトでは、この制限を超えて上記のエラーが表示 される事があります。 Linux OS と Mac OS X は、通常非常に長いコマンドラインを扱う事ができます。使 用中のシステムでその長さを調べるには、コマンドラインで getconf ARG_MAX を 入力します。 応答ファイルを使った回避策 MPLAB XC8/MPLAB XC32 C コンパイラの v1.01 以降、MPLAB XC16 C コンパイラ の v1.22 以降の場合、リンカを呼び出す際に応答ファイルを使えば、この問題を回避 できる場合があります。 • MPLAB XC8 の場合、[Project Properties] ウィンドウを開き ([File] > [Project Properties])、[Categories] の [XC8 linker] をクリックする。[Option categories] で [Additional Options] を選択する。[Use response file to link] にチェックを入れる。 • MPLAB XC16 の場合、[Project Properties] ウィンドウを開き ([File] > [Project Properties])、 [Categories]の[xc16-ld]をクリックする。[Option categories]で[General] を選択する。[Use response file to link] にチェックを入れる。 • MPLAB XC32 の場合、[Project Properties] ウィンドウを開き ([File] > [Project Properties])、 [Categories]の[xc32-ld]をクリックする。[Option categories]で[General] を選択する。[Use response file to link] にチェックを入れる。 ライブラリによる回避策 その他全てのコンパイラの場合、MPLAB X IDE ライブラリ プロジェクトを作成し、 メイン プロジェクトからライブラリ プロジェクトにいくつかのソースファイルを移 動します。その後、ライブラリ プロジェクトをメイン プロジェクトに追加する事で、 この問題を回避できます。 ライブラリ プロジェクトを作成するには、[File] > [New Project] を選択し、[Microchip Embedded] カテゴリをクリックし、プロジェクトとして [Library project] を選択します。 ライブラリをメイン プロジェクトに追加するには、[Project Properties] ウィンドウを 開き ([File] > [Project Properties])、[Categories] の [Libraries] を選択し、[Add Library Project] ボタンをクリックします。 DS50002027D_JP - p.198 2016 Microchip Technology Inc. トラブルシュート アーカイブ チェックボックスによる回避策 現在では全ての MPLAB XC16 と MPLAB XC32 は、長いファイルセットをライブラリに アーカイブする際にリンク行が文字数の制限を超える可能性がある場合に使える チェックボックスを備えています。 「Break into multiple lines」を使ってアーカイブ行 を短い行に分割し、この制限を回避するようにコンパイラを設定できます。 このオプションは、[Project Properties] ウィンドウで [xc16-ar] または [xc32-ar] カテ ゴリを選択した後、[General] オプション カテゴリの [Break into multiple lines] チェック ボックスで設定します。 9.7.2 Couldn’t reserve space for Cygwin™ heap (Windows 7 または 8) MPLAB X IDE は、make 処理に Cygwin MinGW を使います。Windows 7 または 8 では、 仮想メモリの割り当てエラーが発生する可能性があります。 仮想メモリの設定を変更するには、[ スタート ] > [ コントロール パネル ] をクリック してコントロール パネルを開き、[ システム ] をクリックし、[ システムとセキュリ ティ] > [ システム ] > [ システムの詳細設定 ] または [ システムの保護 ] を選択します。 [ 詳細設定 ] タブで、[ パフォーマンス ] の [ 設定 ] ボタンをクリックします。この ダイアログで、[ 詳細設定 ] タブをクリックし、[ 変更 ] ボタンをクリックします。 [ カスタムサイズ ] に以下の値を入力します。 • 初期サイズ (MB) = 「現在の割り当て」の値 ( 下段に表示されている値 ) • 最大サイズ (MB) = 「推奨」の値 ( 下段に表示されている値 ) [ 設定 ] をクリックし、[OK] をクリックしてから、PC を再起動します。 9.7.3 Could not access the URL through the external browser. Check the browser configuration MPLAB X IDE で [Tools] > [Options] を選択し、[General] タブを開きます。[Web Browser] ドロップダウン リストから使用中のブラウザを選択して、[OK] をクリック します。 詳細は以下を参照してください。 「Bug 21236 – Ext-Browser: Message “Could not access the URL” to guide from Tools menu」: http://netbeans.org/bugzilla/show_bug.cgi?id=21236 「Bug 38211 – A problem with using IE external browser in the IDE」: http://netbeans.org/bugzilla/show_bug.cgi?id=38211 9.7.4 Destination Path Too Long/The filename or extension is too long (Windows OS) Windows OS の最大パス長は 260 文字です。詳細はセクション 9.4「Windows OS で 使う場合の問題」を参照してください。 9.7.5 The project ProjectName is empty セクション 9.6.5「プロジェクトがエンプティである / プロジェクト ファイルが灰色 表示されている」を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.199 MPLAB® X IDE ユーザガイド 9.7.6 For 8-bit code, #asm and #endasm cause red bangs in the Editor window #asm文と #endasm文は、 HI-TECH PICCまたは MPLAB XC8 C プログラム内でインラ イン アセンブリコードを宣言するのに有効な構造です。しかし IDE のエディタでは、 C プリパーサはこれらを有効なディレクティブとは認識せず、これらの文の隣に赤の 感嘆符を表示します。しかし、このコードはこのままでも動作します。 エディタ内の赤の感嘆符を除去する場合、asm() 文を使えます。これは、全ての MPLAB XC C コンパイラでインライン アセンブリを使う際に推奨する方法です。 例: // Inline Code that causes error #asm movlw 0x20; nop; nop; #endasm // Workaround for inline assembly - that will not cause error // (Multi line asm code) asm("\ movlw 0x20;\ nop;\ nop;"); // Workaround for inline assembly - that will not cause Error // (Single line asm code) asm("movlw 0x20; nop; nop"); 9.7.7 For 16-bit code, MPLAB XC16 packed attribute statement causes red bangs in the Editor window コンパイラのパーサは以下の文をエラーとしてマーク表示します。しかし、これらの 文はビルドされます。 unsigned long long Bits8 : 8 __attribute__ ((packed)); 修飾子に対するパーサのルールでは順序は決まっていません。通常は修飾子は全て識 別子の前に指定します。従って、これらの文は望ましい形式であり、エラーは発生し ません。 unsigned long long attribute ((packed)) Bits8 : 8; または attribute ((packed)) unsigned long long Bits8 : 8; DS50002027D_JP - p.200 2016 Microchip Technology Inc. トラブルシュート 9.7.8 HEXMATE Conflict Report Address Error HEXMATE が競合レポートを生成した場合、HEX ファイル内の競合アドレスがデータが 格納されているメモリの [Memory] ウィンドウに表示されるアドレスと異なる場合が あります。以下に例を示します。 表 9-1: HEX アドレスとメモリアドレスの関係 デバイスファミリ HEX ファイル内のアドレス メモリ内のアドレス ベースライン 0x100 0x80* ミッドレンジ PIC18 MCU 0x100 0x80* 0x100 0x100 16 ビットデバイス 0x100 0x80* 32 ビットデバイス 0x100 0x100 * デバイスによっては、競合レポートに表示されたアドレスはメモリ内のデータのアドレス の 2 倍の値となります。 9.7.9 プログラムエラー デバイスが意図せずにコード保護されていた場合、特定のアドレス領域に対してプロ グラミング エラーが出力されます。 [Erase Device Memory Main Project] 機能は、これがプログラミングの問題かどうか を判断するのに役立ちます。この機能を利用するには追加アイコン ( セクション 6.9 「ツールバーのカスタマイズ」) または MPLAB IPE を使います。 1. コード内でコード保護が無効になっている事を確認する。 2. デバイスメモリを消去する ( これによりコンフィグレーション ビットの設定が消 去されます )。 3. デバイスを再プログラミングする。 プログラミングが正常終了した場合、コード保護が原因であった事が分かります。 [Erase Device Memory Main Project] アイコン 2016 Microchip Technology Inc. DS50002027D_JP - p.201 MPLAB® X IDE ユーザガイド 9.8 フォーラム 上記では問題の解決策が見つからない場合、以下の Microchip 社フォーラムもご覧く ださい。 http://www.microchip.com/forums/f238.aspx このフォーラムには、問題に関するディスカッションや最近投稿された解決策が掲載 されています。 DS50002027D_JP - p.202 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 10 章 MPLAB X IDE と MPLAB IDE v8 の相違点 10.1 はじめに MPLAB X IDE は MPLAB IDE v8 以前のバージョンから大きく変更されています。 本章には、MPLAB X IDE に移行する際に役立つ情報を記載しています。 • • • • 10.2 主な相違点 メニューの相違点 ツールのサポートに関する相違点 その他の注意事項 主な相違点 MPLAB X IDEは NetBeansプラットフォームを使っているため、多くの機能がMPLAB IDE v8 とは異なります。詳細は以下を参照してください。 • 第 2 章「使用前の準備」 • 第 3 章「チュートリアル」 • 第 5 章「追加作業」 機能的相違点を以下にまとめます。 1. MPLAB X IDE はオープンソースのクロスプラットフォーム NetBeans を使って います。サードパーティは、プラグインとして機能を容易に追加できます。 Microchip 社製品固有の MPLAB X IDE コンポーネントは、当社独自の機能です。 MPLAB IDE v8 は独自プラットフォームで Windows オペレーティング システム ベースです。サードパーティは、MPLAB 開発グループからの設計情報に基づ いて機能を v8 に追加できます。 2. MPLAB X IDE はプロジェクト ベースです ( ワークスペースを使いません )。 MPLAB X IDE でアプリケーションを開発する場合、プロジェクトを作成する必 要があります。プロジェクトを作成するには、デバイス、言語 / デバッグ / プロ グラミング ツールとその他のプロジェクト仕様を選択および設定する必要があ ります。これにより、アプリケーションの開発に必要な全てのアイテムを確保し ます。1 つのプロジェクトに複数のコンフィグレーションを設定する事が可能です。 MPLAB IDE v8 はデバイスベースです。v8 でも、プロジェクトを使ってアプリ ケーションを作成する事を強く推奨しますが、必須ではありません。ワークス ペースは、一部の設定情報 ( 複数プロジェクトのグループ化等 ) を格納するた めに使います。 プロジェクトの機能には大幅な変更が加えられているため第 3 章「チュートリ アル」をお読み頂く事を推奨します。 3. MPLAB X IDE では、複数のツールを選択できます。 例 1: 複数台の MPLAB ICD 3 デバッガを、コンピュータの複数の USB ポート に接続し、[Project Properties] ダイアログでこれらのデバッガを容易に切り換 える事ができます。デバッガはシリアル番号 (SN) で識別します。 例2:ターゲットボードに接続した1台のMPLAB ICD 3デバッガと1台のMPLAB PM3 プログラマを、それぞれコンピュータの USB ポートに接続し、[Project Properties] ダイアログでこれらのツールを容易に切り換える事ができます。 MPLAB IDE v8 では、複数のツールを選択する事はできません。 2016 Microchip Technology Inc. DS50002027D_JP - p.203 MPLAB® X IDE ユーザガイド 4. MPLAB X IDE では、言語ツールの複数のバージョンを選択できます。 例 : PIC18 MCU 向け MPLAB C コンパイラの 2 つのバージョンをインストールし、 [Project Properties] ダイアログでコンパイラ ツールチェーンのバージョンを容易 に切り換える事ができます。 MPLAB IDE v8 では、複数の言語ツールバージョンを選択する事はできません。 5. MPLAB X IDE では、複数のデバッグとプログラミング セッションを実行できます。 MPLAB X IDE では、複数のデバッグ セッションを 1 つの IDE でアクティブにする 事ができます。詳細はセクション 6.3「複数プロジェクトを使った作業」を参照 してください。 MPLAB IDE v8 では、デバッグまたはプログラミング セッションを 1 つしか実 行できません。MPLAB IDE v8 でも IDE で複数のプロジェクトを開く事はでき ます。しかし、複数のプロジェクトを同時にデバッグまたはプログラミングす る事はできません。 6. MPLAB X IDE では、複数のビルド コンフィグレーションを使えます。MPLAB X IDE では、複数のビルド コンフィグレーションを使えます。詳細はセクション 6.4「複数コンフィグレーションを使った作業」を参照してください。 MPLAB IDE v8 で使えるコンフィグレーションは 2 つだけです。MPLAB IDE v8 では、[Build Configuration] ドロップダウン ボックスから [Release] または [Debug] のどちらかしか選択できず、コード内で __DEBUG を使いました。 セクション 6.4.2「複製したコンフィグレーションの追加」の説明に従ってユー ザ独自のデバッグ コンフィグレーションと __DEBUG マクロを作成する事によ り、MPLAB IDE v8 の機能を MPLAB X IDE でも再現できます。 7. MPLAB X IDE は、デバッグとプログラミングにマルチステップのオプションを 備えています。MPLAB X IDE には [Debug Project] アイコンがあり、ビルド、 プログラムとデバッグ実行プログラムによるターゲット デバイスのプログラ ミング ( ハードウェア ツールの場合 )、コードのデバッグ実行を、1 クリックで 実行できます。ビルド、ターゲットデバイスのプログラミング ( ハードウェア ツールの場合 )、コード実行を 1 クリックで実行できる [Make and Program] アイ コンも備えています。make 処理とプログラミングの後にプログラムを実行した くない場合、上記のアイコンの代わりに、[Hold in Reset] アイコンを使います。 MPLAB IDE v8 では、デバッグまたはプログラミングにいくつかの手動の ステップが必要でした。MPLAB IDE v8 には、デバッグまたはコード実行の前 に完了しておくべき以下の手順がありました。 a) b) c) d) 正しいビルド設定 ([Release] または [Debug]) を選択する。 コードをビルドまたは make する。 その(ハードウェア ツールに適合した)コードでターゲットをプログラミングする。 コードを実行する。 MPLAB スタータキット等、一部のツールでは依然として別々に実行する必要 のあるステップがあります。MPLAB X IDE では、この機能を [Debug] > [Discrete Debugger Operation] によって提供します。 8. MPLAB X IDE では、コード内に設定されたコンフィグレーション ビットを使い ます。MPLAB X IDE では、コンフィグレーション ビットをコード内で設定する 必要があります。しかし、デバッグ セッションで [Configuration bits] ウィンドウ からコンフィグレーション ビットを一時的に変更し、それらの設定をファイルに 保存しておいて、後ほどコードに貼り付ける事ができます ( セクション 4.22.4「コン フィグレーション ビットの設定」参照 )。 MPLAB IDE v8 では、コードまたはウィンドウで設定したコンフィグレーショ ン ビットを使っていました。MPLAB IDE v8 では、コンフィグレーション ビッ トをコードまたは [Configuration bits] ウィンドウのどちらでも設定できました。 しかし、ウィンドウからの設定は、後ほど手動でコードに入力する必要があり ました。 DS50002027D_JP - p.204 2016 Microchip Technology Inc. MPLAB X IDE と MPLAB IDE v8 の相違点 9. MPLAB X IDE の場合、デバッグツールはセッション中のみ接続されます。MPLAB X IDE はデバッグ / プログラマツールをデバッグ / プログラミング実行中のみター ゲットに接続します。それ以外の期間は切り離します。 MPLAB IDE v8 では、デバッグツールが常時接続されていました。MPLAB IDE v8 では、デバッグツールとプログラマツールが選択されるとすぐに接続してい ました。このため、複数セッションを同時実行できませんでした。 もし MPLAB X IDE で、MPLAB IDE v8 のようにツールを常時接続しておきた い場合、[Tools] > [Options] (Mac OS X の場合、[mplab_ide] > [Preferences]) を 選択し、[Embedded] ボタンをクリックし、[Generic Settings] タブを開いて、 [Maintain active connection to hardware tool] にチェックマークを付けます。 10. MPLAB X IDE の情報は 1 つの表示に統合されています。MPLAB X IDE には、 ブ レ ー ク ポ イ ン ト リ ソ ー ス、チ ェ ッ ク サ ム、メ モ リ ゲ ー ジ 情 報 を 収 め た [Dashboard] ウィンドウがあります。セクション 5.18「ダッシュボードの表示」 を参照してください。このウィンドウは、プロジェクトの情報を 1ヶ所にまとめ て表示します。 MPLAB IDE v8 の情報は、複数の表示に分散されていました。MPLAB IDE v8 には、ブレークポイント リソースのツールバー、チェックサムのツールバー、 メモリゲージのウィンドウがあり、それぞれへのアクセス方法も異なりました。 11. MPLAB X IDE は、NetBeans の機能を多数備えています。MPLAB X IDE は、 NetBeans の編集とデバッグの機能を多数備えています。詳細は NetBeans の ヘルプを参照してください。MPLAB X IDE は、ベースとなっている NetBeans プラットフォームを定期的に更新します。それに伴い、IDE にも NetBeans の新 機 能 が 導 入 さ れ ま す。MPLAB X IDE の 各 バ ー ジ ョ ン が ベ ー ス と し て い る NetBeans プラットフォームのバージョンは、リリースノートに記載しています。 MPLAB IDE v8 は独自の機能を備えていました。MPLAB IDE v8 は独自製品で した。そのため、サードパーティとコミュニティによる開発は困難でした。 2016 Microchip Technology Inc. DS50002027D_JP - p.205 MPLAB® X IDE ユーザガイド 10.3 メニューの相違点 下表に、MPLAB IDE v8 から MPLAB X IDE へのメニューの変更点を示します。MPLAB X IDE と MPLAB IDE v8 のメニュー項目は一対一に対応しません。主な相違点を表の 「コメント」列に記載しています。 MPLAB X IDE で追加されたメニュー項目もあります。詳細は NetBeans ヘルプト ピックを参照してください。 表 10-1: [File] メニューの相違点 MPLAB® IDE v8 New MPLAB® X IDE File>New File Add New File to Project Open コメント ファイル ウィザードで関連する プロジェクトを選択します。 File>Open File Close File>Close Save File>Save Save As File>Save As Save All File>Save All Open Workspace 利用不可 全てのデータはプロジェクトに 保存されます。 Import File>Import プリビルドした HEX/ELF ファ イル、MPLAB IDE v8 プロジェ ク ト、そ の 他 の 組 み 込 み プ ロ ジェクトのインポートに便利 です。 Export 利用不可 Print File>Print File>Print to HTML File>Page Setup Recent Files File>Open Recent File Recent Workspaces 利用不可 Exit File>Exit Save Workspace Save Workspace As Close Workspace DS50002027D_JP - p.206 既定値設定では、プロジェクト の HEX ファイルはプロジェクト フォルダ (「dist」> 「default」> 「production」フォルダ ) に格納 されています。 全てのデータはプロジェクトに 保存されます。 2016 Microchip Technology Inc. MPLAB X IDE と MPLAB IDE v8 の相違点 表 10-2: [Edit] メニューの相違点 ® MPLAB IDE v8 MPLAB® X IDE Undo Edit>Undo Redo Edit>Redo Cut Edit>Cut Copy Edit>Copy Paste Edit>Paste Edit>Paste Formatted Delete Edit>Delete Select All Edit>Select All Edit>Select Identifier Find Edit>Find Edit>Find Selection Find Next Edit>Find Next Edit>Find Previous Find In Files Edit>Find in Projects Edit>Replace in Projects Replace Edit>Replace Go To Navigate>Go to Line Navigate>Go to Declaration Go To Locator Navigate>Go to Symbol コメント Go Backward Navigate>Back Go Forward Navigate>Forward External DIFF Tools>Diff Advanced Source>Format Source>Shift Left/Right Source>Move Up/Down Source>Toggle Comment Bookmarks Navigate>Toggle Bookmark Navigate>Next Bookmark Navigate>Previous Bookmark Properties Tools>Options>Editor アイコン Mac OS X の場合、[Tools] > Tools>Options>Fonts & Colors [Options] の代わりに アイコン [mplab_idePreferences] を使います。 2016 Microchip Technology Inc. 以下も参照してください。[Tools] > [Options] (Mac OS X の場合、 [mplab_idePreferences])、 [Miscellaneous] の [Diff] タブ DS50002027D_JP - p.207 MPLAB® X IDE ユーザガイド 表 10-3: [View] メニューの相違点 MPLAB® IDE v8 MPLAB® X IDE Project Window>Projects Output Window>Output Toolbars View>Toolbars CPU Registers** Window>PIC Memory Views>CPU Call Stack Window>Debugging>Call Stack Disassembly Listing Window>Debugging>Output>Di sassembly Listing File EEPROM Window>PIC Memory Views>EE Data Memory File Registers* Window>PIC Memory Views>Data Memory Flash Data Window>PIC Memory Views>Data Memory Hardware Stack Debug>Stack LCD Pixel 利用不可 Window>Debugging>Variables Locals Memory** Window>PIC Memory Views>Execution Memory Program Memory* Window>PIC Memory Views>Flash Memory SFR/Peripherals** Window>PIC Memory Views>Peripherals Special Function Registers* Window>PIC Memory Views>SFRs Watch Window>Debugging>Watches Memory Usage Gauge Window>Dashboard Trace Window>Debugging>Trace コメント 以下も参照してください。 [Debug] > [New Watch] 以下も参照してください。 [File] > [Project Properties] で トレースを有効にします。 * 8 ビットおよび 16 ビットデバイス ** 32 ビットデバイス DS50002027D_JP - p.208 2016 Microchip Technology Inc. MPLAB X IDE と MPLAB IDE v8 の相違点 表 10-4: [Project] メニューの相違点 ® MPLAB IDE v8 Project Wizard New Open Close Set Active Project Quickbuild Package in .zip Clean Locate Headers Export Makefile Build All Make ビルド コンフィグレー ション Build Options Save Project Save Project As Add Files to Project MPLAB® X IDE File>New Project コメント プロジェクトの新規作成時に起 動します。 File>Open Project File>Open Recent Project File>Close Project Run>Set Main Project 利用不可 全ての開発にプロジェクトが必 要です。 [Projects] ウィンドウ内のプロ ジェクトを右クリックして [Package] を選択する [Projects] ウィンドウ内のプロ ジェクトを右クリックして [Clean] または [Clean and Build] を選択する [Projects] ウィンドウ内のプロ ジェクトを右クリックして [Locate Headers] を選択する 利用不可 補遺 B「IDE 外部での作業手順」 を参照してください。 Run>Run Project プログラマによるビルド / 実行 Debug>Debug Project デバッガによるビルド / 実行 [File] > [Project Properties] で、 MPLAB IDE v8 では 2 つのコン [Manage Configurations] を フィグレーションしかありませ クリックする んでした。[Release] と [Debug] です。MPLAB X IDE では、必要 な数だけ使えます。 [File] > [Project Properties] で、 言語ツールを設定します。 ツールスイートのツールを クリックする File>Save File>Save All File>Save As [Projects] ウィンドウ内のプロ ジェクト フォルダを右クリック して[Add Existing Item]を選択する Add New File to Project [Projects] ウィンドウ内のプロ ジェクト フォルダを右クリック して [New] を選択する Remove File from Project [Projects] ウィンドウ内のプロ ジェクト ファイルを右クリック して[Remove From Project]を選 択する Select Language File>New Project Toolsuite File>Project Properties Set Language Tool [Tools] > [Options] の Mac OS X の場合、[Tools] > Locations [Embedded] タブの [Build Tools] [Options] の代わりに を選択する [mplab_idePreferences] を使い ます。 Version Control [Team] メニューの項目 プラグインとしてその他のバー ジョン管理も利用できます。 2016 Microchip Technology Inc. DS50002027D_JP - p.209 MPLAB® X IDE ユーザガイド 表 10-5: [Debugger] メニューの相違点 MPLAB® IDE v8 MPLAB® X IDE コメント Select Tool File>New Project File>Project Properties Clear Memory 利用不可 ([Fill Memory] を使い [Window] > [PIC Memory Views]の ます。) プルダウン メニューで [Memory] ウィンドウを選択し、ウィンドウ 内を右クリックして [Fill Memory] 選択します。 Run>Run Project プログラマによる実行です。 Debug>Debug Project デバッガによる実行です。 Debug>Continue 一時停止後の実行再開です。 Run Animate Halt 利用不可 Debug>Pause Step Into Debug>Step Into Step Over Debug>Step Over Step Out Debug>Step Out Reset Debug>Reset Breakpoints Debug>New Breakpoint Debug>Toggle Breakpoint Settings File>Project Properties Stopwatch Window>Debugging>Stopwatch 表 10-6: 新規に選択します。 既存の選択を変更します。 コード行の隣の [ ガーター ] を クリックして、コードにブレーク ポイントを設定します。 [Programmer]* メニューの相違点 MPLAB® IDE v8 MPLAB® X IDE コメント Select Programmer File>New Project File>Project Properties 新規に選択します。 既存の選択を変更します。 Enable Programmer 利用不可 ( プログラミング時に 自動的に有効になります。) Disable Programmer 利用不可 ( プログラミング時に 自動的に無効になります。) [Tools] > [Options] で [Embedded] ボタンをクリックし、[Generic Settings] タブで [Maintain active connection to hardware tool] に チェックを入れた場合は除きます。 Program Make and Program Device [Run] ツールバーから選択します。 Verify MPLAB IPE を参照してください。 Read 利用不可 Read Device Memory [Run] ツールバーから選択します。 Blank Check All 利用不可 MPLAB IPE を参照してください。 Blank Check OTP 利用不可 MPLAB IPE を参照してください。 Erase Flash Device カスタム ツールバーで利用可能 セクション 6.9「ツールバーのカ スタマイズ」と MPLAB IPE を参 照してください。 Reset Program Statistics 利用不可 MPLAB IPE を参照してください。 [File] > [Project Properties] IDE が最新ファームウェアを自 動選択します。 ダイアログの [Categories] で デバッグツールを選択し、 [Option categories] で [Firmware] を選択する File>Project Properties Download OS Settings * プログラマについては MPLAB IPE も参照してください。 DS50002027D_JP - p.210 2016 Microchip Technology Inc. MPLAB X IDE と MPLAB IDE v8 の相違点 表 10-7: [Tools] メニューの相違点 MPLAB® IDE v8 MPLAB® X IDE コメント Data Monitor and Control Tools>Plugins Interface (DMCI) and Tools>Embedded other plugins ツールをインストールします。 ツールを使います。 MPLAB® Macros Edit>Start Macro Recording Edit>Stop Macro Recording 記録した後、マクロ名とショート カットを入力できます。 RTOS Viewer Tools>Plugins Tools>Embedded ツールをインストールします。 ツールを使います。 表 10-8: [Configure] メニューの相違点 MPLAB® IDE v8 MPLAB® X IDE Select Device File>New Project File>Project Properties Configuration Bits Window>PIC Memory Views>Configuration Bits External Memory Window>PIC Memory Views>Program Memory ID Memory Window>PIC Memory Views>User ID Memory Settings Tools>Options 表 10-9: コメント 新規に選択します。 既存の選択を変更します。 外部メモリはプログラムメモリ の一部として表示されます。 Mac OS X の場合、[Tools] > [Options] の代わりに [mplab_idePreferences] を使い ます。 [Window] メニューの相違点 MPLAB® IDE v8 MPLAB® X IDE Close All Window>Close All Documents Cascade 利用不可 Tile Horizontally コメント 文書管理については [Window] > [Documents] を参照してください。 Tile Vertically Arrange Icons Window Sets Create Window Set Destroy Window Set Recent Windows 2016 Microchip Technology Inc. DS50002027D_JP - p.211 MPLAB® X IDE ユーザガイド 表 10-10: [Help] メニューの相違点 MPLAB® IDE v8 MPLAB® X IDE Topics Help>Contents Release Notes Help>Online Docs and Support Driver Installation Help>Online Docs and Support Check for Updates 利用不可 Web Links Help>Online Docs and Support About MPLAB® IDE Help>About DS50002027D_JP - p.212 コメント PDF の表示についてはセク ション 8.2「[Projects] ウィン ドウの表示」参照してくださ い。 最新情報は、Microchip 社ウェブ サイトをご覧ください。 2016 Microchip Technology Inc. MPLAB X IDE と MPLAB IDE v8 の相違点 10.4 ツールのサポートに関する相違点 下の Microchip 社製開発ツールの一覧表に、MPLAB X IDE におけるサポートの有無 を示します。 表 10-11: MPLAB X IDE におけるツールのサポート 開発ツール MPLAB® X IDE でのサポート PICkit™ 3 PICkit 2 PICkit 1 MPLAB® ICD 3 MPLAB ICD 2 MPLAB REAL ICE™ インサーキット エミュレータ MPLAB ICE 2000 MPLAB ICE 4000 MPLAB PM3 PRO MATE II PICSTART® Plus MPLAB VDI 表 10-12: MPLAB X IDE におけるプラグインのサポート プラグイン * MPLAB® X IDE でのサポート DMCI dsPIC® Filter Design** dsPICworks Data Analysis** Graphical Display Designer KEELOQ® Plugin メモリ スタータキット PC-Lint RTOS Viewer 2016 Microchip Technology Inc. DS50002027D_JP - p.213 MPLAB® X IDE ユーザガイド 表 10-12: MPLAB X IDE におけるプラグインのサポート ( 続き ) プラグイン * MPLAB® X IDE でのサポート AN851 ブートローダ AN901 BLDC チューニング インターフェイス AN908 ACIM チューニング インターフェイス dsPIC30F SMPS 降圧型コンバータ dsPIC33F SMPS 昇降圧型コンバータ MATLAB®/Simulink® Segmented Display Designer * 利用できるプラグインを表示するには、[Tools] > [Plugins] の [Available Plugins] タブを選択 します。 ** Windows® オペレーティング システムのみに対応しています。 10.5 その他の注意事項 MPLAB IDE v8 から MPLAB X IDE への移行の際のその他の注意事項を以下に示します。 • セクション 9.6「MPLAB X IDE の問題」 DS50002027D_JP - p.214 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 11 章 デスクトップの詳細 11.1 はじめに MPLAB® X IDE デスクトップは、他のデスクトップ アイテムとは独立して動作する サイズ変更可能なウィンドウです。デスクトップはメニュー、ツールバー、ステータス バー、タブ形式のウィンドウで構成されます ( 図 11-1)。本章ではメニュー、ツール バー、ステータスバーについて説明します。ウィンドウとダイアログについては次章 で説明します。 Note: NetBeans ヘルプトピックで「workspace」と書かれている場合、それは 「デスクトップ」の事を意味します。この「workspace」は、MPLAB IDE v8 以前のバージョンの「ワークスペース」の事ではありません。 • メニュー • Toolbars • ステータスバー • メニュー項目とボタンの灰色表示または非表示 図 11-1: MPLAB® X IDE のデスクトップ WINDOWS MENUS TOOLBARS STATUS BAR 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.215 MPLAB® X IDE ユーザガイド 11.2 メニュー MPLAB® X IDE の多くの機能は、デスクトップ最上段にあるメニューバーからメ ニュー項目として選択できます。メニュー項目の右側に「...」が付く場合、その項目 を選択するとダイアログが開きます。ダイアログの詳細は第 12 章「MPLAB X IDE の ウィンドウとダイアログ」を参照してください。 メニュー項目の横にはショートカット キーも表示されます例 : [New File] のショート カット キーは <Ctrl>+<N> です。ショートカット キーの詳細は [Help] > [Keyboard Shortcuts Card] を参照してください。 メニュー項目は状況に応じて無効化 ( 灰色表示 ) される場合があります。セクション 11.5「メニュー項目とボタンの灰色表示または非表示」を参照してください。 ウィンドウ内で右クリックすると、コンテクスト メニューが表示されます。これらの メニューの詳細は本書のセクション 12.13「[Projects] ウィンドウ」を参照してくださ い。 メニュー一覧を以下に記載します。 Note: • • • • • • • • • • • • DS50002027D_JP - p.216 [Start Page] で [My MPLAB IDE] > [Extend MPLAB] > [Selecting Simple or Full-Featured Menus] を選択すると、全てのメニューとメニュー項目を表 示できます。それらのメニュー項目には、組み込みシステムの開発では使 わない項目も含まれています。 [File] メニュー [Edit] メニュー [View] メニュー [Navigate] メニュー [Source] メニュー [Refactor] メニュー [Run] メニュー [Debug] メニュー [Team] メニュー [Tools] メニュー [Window] メニュー [Help] メニュー 2011-2015 Microchip Technology Inc. デスクトップの詳細 11.2.1 [File] メニュー 下表に [File] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-1: [File] メニューの項目 コマンド 動作 New Project [New Project] ウィザードを使ってプロジェクトを新規作成します。 New File [New File] ウィザードを使ってファイルを新規作成します。 Open Project 既存のプロジェクトを開きます。 Open Recent Project 最近開いた全てのプロジェクトの一覧を表示します。 Import 以下のいずれかをインポートします。 Hex/ELF...(Prebuilt) File – 別のツールを使ってビルドしたファイル MPLAB IDE v8 Project – [Import Legacy Project] ウィザードを起動 その他の組み込み – その他の組み込みプラットフォームからのイン ポート ZIP から – アーカイブしたプロジェクトからのインポート ( ファイル を解凍してインポート ) Close Project 現在のプロジェクトを閉じます。 Close Other Projects メイン プロジェクト以外の全プロジェクトを閉じます。 Close All Projects 開いている全てのプロジェクトを閉じます。 Open File 既存のファイルを開きます。 Open Recent File ファイルを選択するために、最近開いた全てのファイルの一覧を表示 します。 Project Group 現在のプロジェクトをグループに割り当てます。 Project Properties [Project Properties] ダイアログを開きます。 Export Project 現在のプロジェクトをエクスポートします。 To zip – 現在のプロジェクト ファイルをアーカイブします。 Save 現在のファイルを保存します。 Save As 現在のファイルを、パス / 名前を変更して保存します。 Save All 開いている全てのファイルを保存します。 [Compile on Save] オプションを選択した場合、保存時にプロジェクト ファイルをコンパイル / ビルドします。 Page Setup 印刷用にページを設定します。 Print 現在のファイルを印刷します ( プレビュー付き )。 Print to HTML 現在のファイルを HTML 形式で書き出します。 Exit MPLAB® X IDE を終了します。 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.217 MPLAB® X IDE ユーザガイド 11.2.2 [Edit] メニュー 下表に [Edit] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-2: [Edit] メニューの項目 コマンド 動作 Undo 以前のエディタ操作を 1 つずつ遡って取り消します ( 保存操作は取り 消せません )。 Redo 以前の [Undo] 操作を 1 つずつ元に戻します。 Cut 現在選択している内容を削除し、クリップボードに移動します。 Copy 現在選択している内容をクリップボードにコピーします。 Paste クリップボードの内容を現在の選択位置に挿入します。 Paste Formatted クリップボードの内容を、書式設定付きで現在の選択位置に挿入し ます。 Paste from History コピー履歴の内容を現在の選択位置に挿入します。 Delete 現在選択している内容を削除します。 Select All 現在の文書またはウィンドウ内の全ての内容を選択します。 Select Identifier カーソルに最も近い単語を選択します。 Find Selection 現在選択している内容に一致するインスタンスを検索します。 Find Next 一致するテキストのインスタンスを順方向に検索します。 Find Previous 一致するテキストのインスタンスを逆方向に検索します。 Find 文字列を検索します。 Replace 文字列を検索し、一致した文字列を指定した別の文字列に置換します。 Find Usages 選択したコードが使われている箇所とサブタイプを検索します。 Find in Projects 指定したテキスト、オブジェクト名、オブジェクト タイプをプロジェ クト内で検索します。 Replace in Projects テキスト、オブジェクト名、オブジェクト タイプをプロジェクト内 で置換します。 Start Macro Recording マクロ用のキー操作の記録を始めます。 Stop Macro Recording キー操作の記録を終了します。 マクロを管理するには、[Tools] > [Options] を選択し、[Editor] ボタンを クリックし、[Macros] タブを開きます。 DS50002027D_JP - p.218 2011-2015 Microchip Technology Inc. デスクトップの詳細 11.2.3 [View] メニュー 下表に [View] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-3: [View] メニューの項目 コマンド 動作 Editors ファイルを表示するエディタを選択します。 History – このファイルの編集履歴を表示します。 Source – このファイルのソースコードを表示します。 Split 現在のエディタ ウィンドウを、垂直または水平方向に 2 分割 します。 Code Folds>Collapse Fold カーソル位置が折り畳み可能なテキスト内である場合、その セクションを折り畳みます。 Code Folds>Expand Fold カーソル位置が折り畳まれたセクションである場合、その セクションを展開して表示します。 Code Folds>Collapse All 折り畳み可能なテキスト セクションを全て折り畳みます。 Code Folds>Expand All 折り畳まれているテキスト セクションを全て展開します。 Code Folds>Collapse Fold Tree ネスティングされた複数の折り畳みを全て折り畳みます。 Code Folds>Expand Fold Tree ネスティングされた複数の折り畳みを全て展開します。 Web Browser 既定値のウェブブラウザを開いて、NetBeans ホームページを 表示します。 IDE Log [Output] ウィンドウのタブにログファイルを開きます。 Toolbars>File, etc. 関連ツールバーを表示します。 Toolbars>Small Toolbar Icons ツールバーのアイコンを小さくします。 Toolbars>Reset Toolbars ツールバーを既定値の状態に戻します。 Toolbars>Customize 既存ツールバーのカスタマイズまたはツールバーを新規作成 できます。 Show Editor Toolbar [File] タブにエディタのツールバーを表示します。 Show Line Numbers 左の余白に行番号を表示します。 Show Non-printable Characters 印刷できない文字 ( 非 ASCI) であっても表示します。 Show Breadcrumbs エディタ ウィンドウ下部にブレッドクラム ( プロジェクト ファイルからそのファイルまでのパス ) を表示します。 Show Indent Guide Lines インデントを表す薄い線を表示します。 Show Diff Sidebar DIFF サイドバーを表示します。 Show Versioning Labels バージョンラベルを表示します。 Synchronize Editor with Views 開いている画面にエディタを同期させます。 Show Only Editor IDE ウィンドウ全体にエディタ ウィンドウを表示します。 Full Screen 2011-2015 Microchip Technology Inc. ウィンドウを全画面表示にします。 DS50002027D_JP - p.219 MPLAB® X IDE ユーザガイド 11.2.4 [Navigate] メニュー 下表に [Navigate] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-4: [Navigate] メニューの項目 コマンド 動作 Go to File 指定したファイルを検索して開きます。 Go to Type 指定したクラスまたはインターフェイスを検索して開きます。 Go to Symbol 指定したシンボル名を検索します。 Go to Previous Window 1 つ前に選択したウィンドウにフォーカスします。 Go to Source 選択したクラスの定義を含むソースファイルを表示します。 Go to Declaration カーソル位置のアイテムの宣言位置へ移動します。 Go to Super Implementation カーソル位置のアイテムのスーパー実装位置へ移動します。 Last Edit Location 直前に編集した位置にジャンプします。 Back 逆方向に移動します。 Forward 順方向に移動します。 Go to Line 指定した行に移動します。 Toggle Bookmark コード行にブックマークを設定します。 Bookmark History Popup Next [Bookmark] ウィンドウの次のブックマークに移動します ([Window] > [IDE Tools] > [Bookmarks])。 Bookmark History Popup Previous [Bookmark] ウィンドウの 1 つ前のブックマークに移動します ([Window] > [IDE Tools] > [Bookmarks])。 Next Error 次のビルドエラーを含む行にジャンプします。 Previous Error 1 つ前のビルドエラーを含む行にジャンプします。 Select in Projects [Projects]ウィンドウを開いて、 その中で現在の文書を選択します。 Select in Files [Files] ウィンドウを開いて、その中で現在の文書を選択します。 Select in Classes [Classes]ウィンドウを開いて、 その中で現在の文書を選択します。 Select in Favorites [Favorites] ウィンドウを開いて、その中で現在の文書を選択し ます。 DS50002027D_JP - p.220 2011-2015 Microchip Technology Inc. デスクトップの詳細 11.2.5 [Source] メニュー 下表に [Source] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-5: [Source] メニューの項目 コマンド 動作 Format 選択したコード ( 何も選択していない場合はファイル全体 ) を フォーマットします。 Remove Trailing Spaces 行末のスペースを削除します。 Shift Left 選択した行をタブ 1 つ左へシフトします。 Shift Right 選択した行をタブ 1 つ右へシフトします。 Move Up 選択した行を 1 行上へ移動します。 Move Down 選択した行を 1 行下へ移動します。 Move Code Element Up 選択したコードエレメントを 1 行上へ移動します。 Move Code Element Down 選択したコードエレメントを 1 行下へ移動します。 Duplicate Up 選択した行を 1 行上に複製します。 Duplicate Down 選択した行を 1 行下に複製します。 Toggle Comment 選択した行をコメント化 ( または解除 ) します。 Complete Code コード補完ボックスを表示します。 Insert Code コンストラクタ、ゲッター、セッター等、一般的な構造体の生成 に使えるコンテクスト メニューを開きます。 Fix Code エディタが提示するヒントを表示します。 ユーザに提示可能なヒントが存在する場合、IDE は電球アイコン を表示します。 Show Method Parameters 次のパラメータを選択します。 このショートカットを使う前に、1 つのパラメータを選択 ( ハイ ライト表示 ) しておく必要があります。 Show Documentation カーソル位置のアイテムの説明を表示します。 Insert Next Matching Word 入力した文字列から始まる ( 不完全な ) 単語を、コード内で順方 向に検索し、最初に見つかった単語に基づいて、入力した文字列 を補完します。 Insert Previous Matching 入力した文字列から始まる単語を、コード内で逆方向に検索し、 Word 最初に見つかった単語に基づいて、入力した文字列を補完します。 Inspect 選択中のファイル、パッケージ、プロジェクトのいずれかに関する 指定した検査を実行します。 Scan for External Changes ファイルをスキャンして、MPLAB® X IDE の外部で加えられた変更 を見つけます。 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.221 MPLAB® X IDE ユーザガイド 11.2.6 [Refactor] メニュー 下表に [Refactor] メニューの項目を示します。メニューに表示される項目は、リファ クタリングするオブジェクトのタイプ ( 変数、関数等 ) によって異なります。詳細は セクション 7.7「C コードのリファクタリング」を参照してください。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-6: [Refactor] メニューの項目 コマンド 動作 Rename 変数または関数名を変更し、プロジェクト内の全ソースコード を更新します。 Move クラスを別のパッケージまたはクラスに移動し、プロジェクト 内の全てのコードを更新します。 Copy クラスを同じパッケージまたは別のパッケージにコピーします。 Safely Delete コードエレメントへの参照を確認し、他のコードから参照され ていなければそのエレメントを削除します。 Change Function Parameter 関数のパラメータの数と名前を変更します。 11.2.7 [Run] メニュー 下表に [Run] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-7: [Run] メニューの項目 コマンド 動作 Run Project メイン プロジェクトまたは選択したプロジェクトを実行します。 Test Project プロジェクトの JUnit テストを始めます (Java 関連 )。 Build Project プロジェクト内の全ファイルをビルドします。 Clean and Build Project 以前に生成済みのプロジェクト ファイルを全てクリーニング ( 削除 ) してから、プロジェクト内のファイルをリビルドします。 Batch Build Project プロジェクトの複数のコンフィグレーションをビルドします ( 組み込みのみ利用可能 )。 Set Project Configuration プロジェクト コンフィグレーションを選択します (「既定値」 を選択します )。 Set Main Project 開かれているプロジェクトの一覧の中から、メイン プロジェクト を選択します。 Run File 現在選択中のファイルを実行します。 Test File 現在のファイルの JUnit テストを始めます (Java 関連 )。 Check File ファイルが規格に従っているかどうかチェックします(XML関連)。 Validate File ファイルが規格に従っているかどうか検証します (XML 関連 )。 Repeat Build/Run 一時停止から再度実行します。 Stop Build/Run 実行を終了します。 DS50002027D_JP - p.222 2011-2015 Microchip Technology Inc. デスクトップの詳細 11.2.8 [Debug] メニュー 下表に [Debug] メニューの項目を示します。これらのメニュー項目の一部に割り当て られているキーボード ショートカットについては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-8: [Debug] メニューの項目 コマンド 動作 Debug Project メイン プロジェクトまたは選択したプロジェクトをデバッグし ます。 Debug File 現在選択しているファイルのデバッグ セッションを始めます。 Debug Test File ファイルの JUnit によるデバッグテストを始めます (Java 関連 )。 Discrete Debugger デバッグ作業を 1 ステップずつ ( ビルド、ターゲットのプログラ Operation ミング、デバッガの起動 ) 別々に実行します。 これは、スタータキットを使ってデバッグ中に [Memory] ウィン ドウの設定を変更する場合に便利です。 Finish Debugger Session デバッグ セッションを終了します。 Pause デバッグを一時停止します。[Continue] で再開します。 Continue 「一時停止」したデバッグを再開します。デバッグは次のブレーク ポイントまたはプログラムの末尾で再び停止します。 Step Over プログラムのソースを 1 行実行します。 その行が関数コールである場合、呼び出した関数全体を実行後 に停止します。 Step Into プログラムのソースを 1 行実行します。 その行が関数コールである場合、呼び出した関数の先頭の命令 文を実行した後に停止します。 Step Out プログラムのソースを 1 行実行します。 現在の関数の実行を完了し、その関数の呼び出しの直後のソース 行で停止します。 Step Instruction マシン命令を 1 つ実行します。 その命令が関数コールの場合、その関数を実行してから呼び出 し元の制御に戻ります。 Run to Cursor プロジェクトをカーソル位置まで実行して、停止します。 Reset デバイスをリセットします。 Set PC at cursor プログラム カウンタ (PC) の値を、カーソル位置の行アドレスに 設定します。 Focus Cursor at PC カーソルを現在の PC アドレス位置へ移動し、このアドレスを ウィンドウの中心に表示します。 Stack>Make Callee Current 呼び出される側のメソッドを現在の呼び出しとします。 この機能は、[Call Stack] ウィンドウで呼び出しを選択している 場合にのみ利用できます。 Stack>Make Caller Current 呼び出す側のメソッドを現在の呼び出しとします。 この機能は、[Call Stack] ウィンドウで呼び出しを選択している 場合にのみ利用できます。 Stack>Pop Topmost Call top of the stack の呼び出しをポップします。 Stack>Pop To Current Top Of Stack から1フレームをポップして捨てます。 Stack Frame Stack>Pop Last Debugger デバッグツールからの最新のコールを top of the stack にポップ Call します。 Toggle Line Breakpoint プログラム内のカーソル行のブレークポイントを設定/解除します。 New Breakpoint 指定した行、例外、メソッドに新しいブレークポイントを設定 します。 New Watch 指定したシンボルをウォッチに追加します。 New Run Time Watch 指定したシンボルを、プログラム実行中に値の変化を観察する ウォッチに追加します。 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.223 MPLAB® X IDE ユーザガイド 表 11-8: [Debug] メニューの項目 ( 続き ) コマンド Disconnect from Debug Tool Run Debugger/Programmer Self Test 11.2.9 動作 MPLAB® X IDE とデバッグツール間の通信を切断します。 [Run] または [Debug Run] を選択すると再接続します。 デバッグツールのセルフテストを実行します。 ツールがセルフテスト機能をサポートしている場合、このテスト を実行して動作を確認できます。このためのハードウェアの設 定については、そのツールの文書を参照してください。 [Team] メニュー 下表に [Team] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-9: [Team] メニューの項目 コマンド 動作 Shelve Changes まだコミットしていない変更をパッチファイルとして作業フォ ルダに一時的に保存します。 Git, Mercurial, Subversion バージョン管理システムによって表示されるサブメニューが異 なります。 サブメニューの詳細は各製品のマニュアルを参照してください。 History ファイルの履歴を表示します。ファイルを以前のバージョンに 復元する事もできます。 Find Issues バージョン管理システムで問題を見つけます。 Report an Issue バージョン管理システムに問題を報告します。 Create Build Job バージョン管理システムを使ってビルドを作成します。 11.2.10 [Tools] メニュー 下表に [Tools] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-10: [Tools] メニューの項目 コマンド 動作 Embedded 追加されているプラグインを表示します。サブメニューから プラグインを選択します。 Licenses • コンパイラ ライセンスの取得 / 返却を可能にします。 • ライセンスの有効化を可能にします。 詳細は使用中のコンパイラのインストールパスの docs フォ ルダにある XCLM 文書を参照してください。 Apply Diff Patch 差分パッチファイルを選択し、コードに適用します。 Diff IDE 内で選択した 2 つのファイルを比較します。 Templates [Template Manager] ウィンドウを開きます。 DTDs and XML Schemas [DTDs and XML Schemas Manager] を開きます。 Plugins [Plugins Manager] を開きます。 詳細は以下の NetBeans ヘルプトピックを参照してください。 「Managing Plugins in the IDE」 Options [Options] ダイアログを開きます。 Mac OS X の場合、[Mplab_ide] > [Preferences] を使います。 DS50002027D_JP - p.224 2011-2015 Microchip Technology Inc. デスクトップの詳細 11.2.11 [Window] メニュー 下表に [Window] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-11: [Window] メニューの項目 コマンド Projects Files Classes Favorites Services Dashboard Navigator Action Items Tasks Output Editor Debugging>Output Debugging>Variables Debugging>Watches Debugging>Call Stack Debugging>Breakpoints Debugging>Sessions Debugging>Sources Debugging>Disassembly Debugging>PIC AppIO Debugging>Trace Debugging>Stopwatch Debugging>Other Web>Web Browser Web>CSS IDE Tools>Bookmarks IDE Tools>Notifications IDE Tools>Terminal IDE Tools>Processes 2011-2015 Microchip Technology Inc. 動作 [Projects] ウィンドウを開きます。 [Files] ウィンドウを開きます。 [Classes] ウィンドウを開きます。 [Favorites] ウィンドウを開きます。 [Services] ウィンドウを開きます。 [Dashboard] ウィンドウを開きます。 セクション 5.18「ダッシュボードの表示」を参照してください。 [Navigator] ウィンドウを開きます。 [Action Items] ウィンドウを開きます。 [Task List] ウィンドウを開きます。 [Output] ウィンドウを開きます。 空のエディタ ウィンドウを開きます。 デバッグ用の [Output] ウィンドウ (Disassembly Listing File) を 開きます。 [Local Variables] デバッガ ウィンドウを開きます。 [Watches] デバッガ ウィンドウを開きます。 [Call Stack] デバッガ ウィンドウを開きます。 [Breakpoints] ウィンドウを開きます。 [Sessions] ウィンドウを開きます。 [Sources] ウィンドウを開きます。 [Disassembly] ウィンドウを開きます。 [Application In/Out] ウィンドウを開きます。 MPLAB® REAL ICE™ インサーキット エミュレータに適用し ます。 [Trace] ウィンドウを開きます。 シミュレータまたは MPLAB REAL ICE インサーキット エミュ レータに適用します。 [Stopwatch] ウィンドウを開きます。 選択済みデバッグツールとインストール済みプラグインに応 じて、その他のデバッグ機能を利用できます。 既定値のウェブブラウザを開きます。 [CSS Styles] ウィンドウを開きます。 このウィンドウを使うと、CSS ファイル内の HTML 要素向け のルールとセレクタの宣言を編集できます。 [Bookmarks] ウィンドウを開きます。 開いたプロジェクトのファイルのブックマークの一覧を表示 します。 [Notifications] ウィンドウを開きます。 現在の IDE セッションで発生した IDE のエラーと警告のリスト を表示します。 ローカルまたはリモート用の [Terminal] ウィンドウを開きます。 [Processes] ウィンドウを開きます。 デバッグツールを実行中のプロセスに接続する。 DS50002027D_JP - p.225 MPLAB® X IDE ユーザガイド 表 11-11: [Window] メニューの項目 ( 続き ) コマンド 動作 PIC Memory Views>Memory 指定した [Memory] ウィンドウを開きます。 プロジェクト デバイスによって表示されるメモリが異なります。 Simulator>Stimulus [Simulator Stimulus] ウィンドウを開きます。 Simulator>Analyzer [Simulator Analyzer] ウィンドウを開きます。 Simulator>IOPin [I/O Pins] ウィンドウを開きます。 Configure Window> アクティブなウィンドウをIDEウィンドウの最大サイズに広げ Maximize ます。 Configure Window>Float フローティングのタブ付き IDE ウィンドウを開きます。 Configure Window> フローティングのタブ付き IDE ウィンドウ グループを開きます。 Float Group Configure Window>Minimize アクティブなウィンドウを最小化します。 Configure Window> アクティブなウィンドウ グループを最小化します。 Minimize Group Configure Window>Dock フローティングのタブをメインウィンドウに復元します。 Configure Window> フローティングのタブグループをメインウィンドウに復元し Dock Group ます。 Configure Window> 同じ文書に対して新規タブを開きます。 Clone Document Configure Window> アクティブな文書を垂直または水平に分割します。 Split Window Configure Window> エディタ ウィンドウを 2 つのタブグループに分割し、選択し New Document Tab Group たタブを新規グループに分けます。 Configure Window>Collapse 独立したタブグループを 1 つのグループに結合します。 Document Tab Group Reset Windows ウィンドウを既定値状態にリセットします。 Close Window ウィンドウ内で現在表示しているタブを閉じます。 ウィンドウにタブがない場合、そのウィンドウを閉じます。 Close All Documents ソースエディタで開いている全ての文書を閉じます。 Close Other Documents 現在アクティブな文書以外の全ての文書を閉じます。 Document Groups 名前が付いた文書グループを作成します。 Documents [Documents] ダイアログ ボックスを開きます。このダイアログ では、現在開いている文書を保存、閉じる事ができます。 DS50002027D_JP - p.226 2011-2015 Microchip Technology Inc. デスクトップの詳細 11.2.12 [Help] メニュー 下表に [Help] メニューの項目を示します。 これらのメニュー項目の一部に割り当てられているキーボード ショートカットにつ いては [Help] > [Keyboard Shortcuts Card] を参照してください。 表 11-12: [Help] メニューの項目 コマンド 動作 Help Contents JavaHelp ビューアを開いて、インストールされている全ての ヘルプファイルを表示します。 Tool Help Contents 1 つの JavaHelp ビューアを開いて、1 つのツール ヘルプファ イルを表示します。 Online Docs and Support NetBeans のサポート ウェブページを開きます。 Keyboard Shortcuts Card キーボード ショートカット マニュアルを表示します。 Report Issue IDE の問題を NetBeans に報告するウィンドウを開きます。 MPLAB X Store [MPLAB X Store] タブを開きます。 Start Page [Start Page] タブを開きます。 About [about MPLAB® IDE] ウィンドウを開きます。 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.227 MPLAB® X IDE ユーザガイド 11.3 Toolbars MPLAB IDE は、現在使用中の機能またはツールに応じて、各種ツールバーを表示し ます。これらのツールバーを使うと、頻繁に行う操作に素早くアクセスできます。 ツールバーのカスタマイズ、新規作成の方法は、セクション 6.9「ツールバーのカス タマイズ」を参照してください。 ツールバーのボタンは状況に応じて無効 ( 灰色表示 ) になります。セクション 11.5「メ ニュー項目とボタンの灰色表示または非表示」を参照してください。 利用できるツールバー 以下の基本的なツールバーを利用できます。 • • • • • • • • [File] ツールバー [Clipboard] ツールバー [Status Flags] ツールバー [Undo/Redo] ツールバー [Run] ツールバー [Debug] ツールバー [Performance] ツールバー [MPLAB X Store] • [How Do I] ツールバー • エディタ用ツールバー ツールバーの特長 ツールバーは以下の特長を備えています。 • マウスポインタをアイコンに合わせると機能を表示します。 • ドラッグ操作により、ツールバーを移動できます。 • ツールバー領域内で右クリックして、ツールバーの表示 / 非表示を切り換えたり、 一部のツールバーの内容を変更したりする事ができます。 • [View] > [Toolbars] を選択すると、ツールバーの表示 / 非表示の切り換え、一部ツール バーの内容の変更、カスタム ツールバーの作成を実行できます。 11.3.1 [File] ツールバー [File] ツールバーは以下の機能のアイコンを収めます。これらの機能は [File] メニュー からも利用できます。 • • • • New File – [New File] ウィザードを使ってファイルを新規作成します。 New Project – [New Project] ウィザードを使ってプロジェクトを新規作成します。 Open Project – 既存のプロジェクトを開きます。 Save All Files – 開いている全てのファイルを保存します。 11.3.2 [Clipboard] ツールバー [Clipboard] ツールバーは以下の機能のアイコンを収めます。これらの機能は [Edit] メニューからも利用できます。 • Cut – 現在選択している内容を削除し、クリップボードに移動します。 • Copy – 現在選択している内容をクリップボードにコピーします。 • Paste – クリップボードの内容を現在の選択位置に挿入します。 11.3.3 [Status Flags] ツールバー [Status Flags] ツールバーは以下の機能のアイコンを収めます。 • PC – プログラム カウンタ (PC) の現在値 DS50002027D_JP - p.228 2011-2015 Microchip Technology Inc. デスクトップの詳細 11.3.4 [Undo/Redo] ツールバー [Undo/Redo] ツールバーは以下の機能のアイコンを収めます。これらの機能は [Edit] メニューからも利用できます。 • Undo – 以前のエディタ操作を 1 つずつ遡って取り消します ( 保存操作は取り消せま せん )。 • Redo – 以前の [Undo] 操作を 1 つずつ元に戻します。 11.3.5 [Run] ツールバー [Run]ツールバーは以下の機能のアイコンを収めます。これらの機能は[Run]、[Debug]、 [Project] コンテクスト メニューからも利用できます。 • Set Project Configuration – プロジェクトのコンフィグレーションを選択します。 [default] または [Customize] を選択します。 • Build Project – 全てのプロジェクト ファイルをビルドします。下矢印をクリックす るとオプションが表示されます。 • Clean and Build Project – 以前のビルドで作成されたファイルを削除した後に、全 てのプロジェクト ファイルをビルドします。下矢印をクリックするとオプションが 表示されます。 • Make and Program Device Project – 選択したプロジェクトをビルドし、ターゲット にプログラミングした後に、プログラムを実行します。下矢印をクリックすると オプションが表示されます。 • Hold in Reset – 選択したプロジェクトをビルドし、ターゲットにプログラミングし た後に、リセット状態に保持します。 • Read Device Memory – ターゲットデバイスのメモリの内容を MPLAB X IDE に読 み込みます。下矢印をクリックするとオプションが表示されます。 • Debug Project – 選択したプロジェクトをビルドし、ターゲットをプログラミング した後に、デバッグ実行します。 11.3.6 [Debug] ツールバー [Debug] ツールバーは以下の機能のアイコンを収めます。これらの機能は [Debug] メニューからも利用できます。 • Finish Debugger Session – デバッグ セッションを終了します。 • Pause – デバッグを一時停止します。[Continue] で再開します。 • Reset – 実行中のプロジェクトをファイル内のカーソル位置まで実行した後にプロ グラムの実行を停止します。 • Continue – デバッグを再開します。デバッグは次のブレークポイントまたはプログ ラムの末尾で再び停止します。 • Step Over – プログラムの 1 ソース行を実行します。その行が関数コールである場合、 呼び出した関数全体を実行した後に停止します。 • Step Over Expression – 式をステップオーバーし、その後にデバッグを停止します。 • Step Into – プログラムの 1 ソース行を実行します。その行が関数コールである場合、 呼び出した関数の先頭の命令文を実行した後に停止します。 • Step Out – プログラムの 1 ソース行を実行します。この行が関数コールの場合、 実行後に呼び出し元に戻ります。 • Run to Cursor - プロジェクトをカーソル位置まで実行して、停止します。 • Apply Code Changes – コード内の全ての変更を実行中のプログラムに適用します。 • Set PC at cursor - プログラム カウンタ (PC) の値を、カーソル位置の行アドレスに 設定します。 • Focus Cursor at PC – カーソルを現在の PC アドレス位置へ移動し、このアドレス をウィンドウの中心に表示します。 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.229 MPLAB® X IDE ユーザガイド 11.3.7 [Performance] ツールバー [Performance] ツールバーは、性能向上に役立つ項目 ( 例 : ガーベジ コレクション機 能付きのメモリ使用量表示、アプリケーションのプロファイリング ) を表示します。 11.3.8 [MPLAB X Store] [MPLAB X Store] ツールバー アイコンを使って、MPLAB X IDE のデスクトップに [MPLAB X Store] タブを開きます。 11.3.9 [How Do I] ツールバー この機能はインターネットを必要とします。 Microchip Wiki で情報を検索します。テキストボックスに質問を入力します。 セクション 11.2.12「[Help] メニュー」も参照してください。 11.3.10 エディタ用ツールバー エディタのツールバーは以下の機能のアイコンを収めています。これらの機能は[Edit] および [Source] メニューからも利用できます。このツールバーは、現在のソースコード ファイルを表示しているタブの最上段に表示されます。 図 11-2: エディタ用ツールバー • • • • • • • • • • • • • • • • • • • Source – ソースコードを表示します。 History – ソースコードの履歴を表示します。 Last Edited – 直前に編集した行へジャンプします。 Back – 逆方向に移動します。 Forward – 順方向に移動します。 Find Selection – 選択したテキストに最初に一致するテキストを検索します。 Find Previous Occurrence – 選択したテキストを逆方向に検索します。 Find Next Occurrence – 選択したテキストを順方向に検索します。 Toggle Highlight Search – 検索に一致したテキストの強調表示を ON/OFF します。 Previous Bookmark – ブックマークを逆方向に循環します。 Next Bookmark – ブックマークを正方向に循環します。 Toggle Bookmark – ブックマークを設定します。 Shift Left – 選択した行をタブ 1 つ左へシフトします。 Shift Right – 選択した行をタブ 1 つ右へシフトします。 Start Macro Recording – マクロ用のキー操作の記録を始めます。 Stop Macro Recording – キー操作の記録を終了します。 Comment – 選択したコード行に「//」を追加してコメント行にします。 Uncomment – 選択したコメント行の「//」を削除してコード行にします。 Go to Header/Source – 対応するヘッダとソースコードの間を移動します。 DS50002027D_JP - p.230 2011-2015 Microchip Technology Inc. デスクトップの詳細 11.4 ステータスバー ステータスバーは、MPLAB IDE セッションの最新のステータス情報を表示します。 エディタの情報も表示します。 図 11-3: 11.5 ステータスバーの例 – デバッグ実行 メニュー項目とボタンの灰色表示または非表示 以下のような条件では、メニュー項目、ツールバーボタン、ステータスバー アイテム は灰色で表示 ( 無効化 ) されるか、表示されません。 • その項目 / ボタンの機能が、選択したデバイスでは利用できないデバイス機能であ る場合 ( 例 : PIC16F877A は外部メモリをサポートしない ) • その項目 / ボタンの機能が、選択したツールでは利用できないツール機能である場 合 ( 例 : MPLAB ICD 3 では [Step Out] は使えない ) • その項目 / ボタンの機能がプロジェクトに関連し、プロジェクトが何も選択されて いない場合 ( 例 : アクティブなプロジェクトが存在しないと、プロジェクトのビルド 機能は使えない ) • その項目 / ボタンの機能が、選択したデバイスまたはツール向けにサポートされて いない場合 • その項目 / ボタンの機能が既に実行中である場合 ( 例 : プログラムの実行中、[Run Project] は灰色表示になる ) • その項目 / ボタンの機能が他の項目 / ボタンと排他的な関係にある場合 ( 例 : プログ ラム実行中は [Pause] が使えて [Continue] は灰色表示、プログラム停止中は [Continue] が使えて [Pause] は灰色表示になる ) 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.231 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.232 2011-2015 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 12 章 MPLAB X IDE のウィンドウとダイアログ 12.1 はじめに MPLAB X IDE のデスクトップは、タブ形式の複数のペインに分割されます。これら の一部は、特定の機能を選択するまで表示されません。 例えば、MPLAB X IDE の初回起動時には、[Start Page] だけが開きます。プロジェ クトを開くと、基本的なウィンドウ ( 左上ペインに [Project] と [Files]、左下ペインに [Navigator]、右下ペインに [Output]) が開きます。[Start Page] ウィンドウは、右上 ペインに移動します。 MPLAB X IDE では、NetBeans のウィンドウと MPLAB X IDE 専用のウィンドウの両 方を使います。各種ダイアログは、メニューから対応する項目を選択すると開きます。 これらのダイアログも、ウィンドウと同様に NetBeans と MPLAB X IDE のダイアログ 両方です。NetBeans のウィンドウとダイアログの詳細は第 13 章「NetBeans のウィ ンドウとダイアログ」を参照してください。 12.2 MPLAB X IDE のウィンドウの管理 IDE のウィンドウの管理に関する情報は NetBeans ヘルプトピック [Managing IDE Windows] を参照してください。 その他のウィンドウの情報は以下を参照してください。 12.2.1 ウィンドウのデータの更新 開いたウィンドウ ( 読み出し専用のフラッシュメモリのウィンドウを除く ) は、プロ グラムの停止時に更新されます。プログラムの停止には、実行後の停止とステップ実 行があります。停止による更新は以下の事項に影響します。 • 速度 – 更新には時間がかかります。更新時間を短縮するには、使っていないウィン ドウを閉じます。 • データの上書き – 開いたウィンドウに表示されたファイルレジスタ値は、停止時に 読み出されます。読み出し時のレジスタ動作は、使うデバイスのデータシートを参 照してください。 12.2.2 ウィンドウのデータの変更 MPLAB X IDE のウィンドウのデータは、以下に示すように編集できる場合があります。 データを編集できない場合、この情報を利用して変更する事はできません。 • データを直接編集する(アイテムをダブルクリックして選択し新規の値を入力します。 または、アイテムの隣の省略記号 [...] をクリックしポップアップ ウィンドウに新規 の値を入力します。) • データをドロップダウン リストから選択する ( 特定の選択肢のみが利用できる場合 ) 12.2.3 ウィンドウのフォーカス ウィンドウを確実にフォーカスするには、ウィンドウ フレームだけでなくボタン、表 のセル、ドロップダウン、コンボボックスをクリックします。 2016 Microchip Technology Inc. DS50002027D_JP - p.233 MPLAB® X IDE ユーザガイド 12.3 MPLAB X IDE のウィンドウと関連するメニューとダイアログ MPLAB X IDE では NetBeans のウィンドウをそのまま使う場合もありますが、組み 込み開発専用にカスタマイズまたは作成したウィンドウと、それらに関連する メニューも使います。 専用ウィンドウ * 関連メニュー 「[Call Stack] ウィンドウ」 Window>Debugging>Call Stack 「[Breakpoints] ウィンドウ」 Window>Debugging>Breakpoints 「[Customize Toolbars] ウィンドウ」 View>Toolbars 「[Dashboard] ウィンドウ」 Window 「[Hardware Stack] ウィンドウ」 Window>PIC Memory Views>Hardware Stack 「[Memory] ウィンドウ」 Window>PIC Memory Views 「[Message Center] ウィンドウ」 Window>Debugging>Output>Message Center 「[Output] ウィンドウ」 Window>Output 「[Project Properties] ウィンドウ」 File 「[Projects] ウィンドウ」 Window 「[Tools] > [Options] > [Embedded] ウィンド Tools>Options (Windows, Linux OS) mplab_ide>Preferences (Mac OS X) ウ」 Window>Debugging 「[Trace] ウィンドウ」 「[Watches] ウィンドウ」 Window>Debugging 「ウィザード ウィンドウ」 File>New Project File>New File * インストールしたツールによっては、ツール固有のウィンドウを表示できる場合があります。 専用ウィンドウの詳細はツールのマニュアルを参照してください。 DS50002027D_JP - p.234 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.4 [Call Stack] ウィンドウ [Call Stack] ウィンドウは、C 関数とその引数を、実行中のプログラムで呼び出された 順番に一覧表示します。 コールスタックは 16 ビットおよび 32 ビットデバイスで使えます。このウィンドウは、 デバッグの一時停止または停止時に更新されます。 図 12-1: [Call Stack] ウィンドウ 一時停止または停止時にこのウィンドウで使えるアイコンは以下の通りです。 表 12-1: [Call Stack] アイコン アイコン 説明 ウィンドウの内容を自動または手動で更新します。[Tools] > [Options] > [Embedded] > [Generic Settings] の [Disable auto refresh for call stack view during debug sessions] の値 ( チェックを外す = 偽 ( 既定値 )、チェックを入 れる = 真 ) の影響を受けます。セクション 12.14.1「[Generic Settings] タブ」 を参照してください。 偽 = 自動更新 ( 緑のアイコン ): ウィンドウの内容は、一時停止または停止 時に自動更新されます。ウィンドウが閉じられている場合、またはフォーカス されていない場合、ウィンドウを選択しこのボタンをクリックすると更新が 表示されます。再度実行および一時停止 / 停止する必要はありません。 真 = 手動更新 ( オレンジのアイコン ): ウィンドウの内容は、一時停止または 停止しても自動では更新されません。一時停止 / 停止時にウィンドウの内容 を更新するには、このボタンをクリックする必要があります。 関数のパラメータ変数の評価の無効化 / 有効化を選択します。 表示列を変更します。このウィンドウでは、コールスタック フレーム位置 の表示 / 非表示を切り換える事ができます。 2016 Microchip Technology Inc. DS50002027D_JP - p.235 MPLAB® X IDE ユーザガイド 12.5 [Breakpoints] ウィンドウ [Breakpoints] ウィンドウは、コード内のブレークポイントの設定と表示に使います。 [Window] > [Debugging] > [Breakpoints] を選択してウィンドウを開きます。 [Breakpoints] ウィンドウの使い方の詳細はセクション 4.18「ブレークポイントによる プログラム実行の制御」を参照してください。 12.5.1 [New Breakpoint] ダイアログ [Breakpoints] ウィンドウの [Create New Breakpoint] ボタンをクリックすると [New Breakpoint] ダイアログが開きます。 図 12-2: [Create New Breakpoint] ボタン ブレークポイントで使えるオプションは、選択したブレークポイント タイプとデバイス で決まります ( デバイスによって使えないオプションがあります )。 12.5.2 行ブレークポイント コード行で指定するブレークポイントには、以下のオプションを利用できます。 表 12-2: 項目 Settings DS50002027D_JP - p.236 [Breakpoint Type]: [Line] – [Settings] 説明 ファイル行の隣の [ ガーター ] をクリックして、新規の行ブレークポイント を作成します。または、エディタのコンテクスト メニューから [Toggle Line Breakpoint] を選択します。 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.5.3 データ ブレークポイント データメモリのブレークポイントには、以下のオプションが利用できます。 表 12-3: [Breakpoint Type]: [Data] – [Settings] 項目 説明 Project 開いているプロジェクトをドロップダウン リストから選択します。 このプロジェクトのコードにブレークポイントが設定されます。 グローバル シンボルまたは SFR の名前を入力します。または、[Symbols] をクリックして参照します。[Breaks on] に従ってこのシンボルをアクセス すると、コード実行の一時停止がトリガされます。 Symbols Enable Range Address Address Address (Start) チェックを入れるとレンジ ブレークポイントが設定されます。 チェックを外すとシングル ブレークポイントが設定されます。 [Enable Range Address] の選択に応じて、この項目は [Address] と [Address (Start)] のどちらかになります。 データメモリの 16 進アドレスを入力します。 [Breaks on] に従ってこのアドレスをアクセスすると、コード実行の一時停 止がトリガされます。 Address (End) [Enable Range Address] にチェックを入れると、この欄は有効になります。 データメモリの 16 進アドレスを入力します。 Breaks on [Read], [Write], [Read or Write]: 上記で宣言したシンボルまたはアドレス に読み込み、書き込み、読み込みまたは書き込みのいずれかを実行した場合、 ブレークコードが実行されます。 [Read Specific Value], [Write Specific Value], [Read or Write Specific Value]: 上記で宣言したシンボルまたはアドレスに、以下に示す特定の値の 読み込み、書き込み、読み込みまたは書き込みのいずれかを実行した場合、 ブレークコードが実行されます。 Note: dsPIC DSC では、X および Y バスに対する読み出しおよび書き込み があります。 Value [Breaks on] に [Read Specific Value], [Write Specific Value], [Read or Write Specific Value] のいずれかを選択する場合、ここに 16 進値を入力します。 Value PIC16F1xxx デバイスの場合のみ。 Comparison 以下に示すように「Value」と比較します。 = Value: 「Value」と等しい != Value: 「Value」と等しくない > Value: 「Value」より大きい < Value: 「Value」より小さい Data Value PIC16F1xxx デバイスの場合のみ。 Mask 「Value」と比較する際にマスクを使います。 0x00 ~ 0xhh のレンジの値を入力します。 0x00: どのビットも比較しません。 0xhh: 全てのビットを比較します。 表 12-4: 項目 [Breakpoint Type]: [Data] – [Pass Count] 説明 Condition [Breaks on] で指定したブレークが発生する条件を設定します。 Always Break: [Breaks on] 条件が成立すると常にブレークします。 Break occurs Count instructions after Event: イベント ([Breaks on] 条件 ) が 発生した後、実際のブレークの前に Count 命令を実行します。 Event must occur Count times: 実際のブレークの前に、イベント ([Breaks on] 条件 ) が Count で指定した回数発生する必要があります。 Count* [Condition] で指定した条件に従って、イベント後の命令数とイベント数のど ちらかを入力します。 * セクション「一部のデバイス (PIC16F1xxx MCU) では、拡張イベント ブレークポイントが 使えます。」も参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.237 MPLAB® X IDE ユーザガイド 表 12-5: [Breakpoint Type]: [Data] 項目 説明 Trigger Options PIC16F1xxx デバイスの場合のみ。 トリガする条件を以下のどちらかから選択します。 • Do not trigger out when breakpoint is reached • trigger out when breakpoint is reached Interrupt PIC16F1xxx デバイスの場合のみ。 Context アドレス / データ ブレークポイント用の割り込みコンテクスト修飾子です。 以下のいずれかを選択します。 • Always break - ISR とメインコードの両方でブレークします。 • Break in main line (non-interrupt) context only - メインコード内のみで ブレークします。 • Break in interrupt context only - ISR コード内でのみブレークします。 12.5.4 アドレス ブレークポイント プログラムメモリのブレークポイントには以下のオプションを利用できます。 表 12-6: [Breakpoint Type]: [Address] – [Settings] 項目 Project Enable Range Address Address Address (Start) Address (End) Breaks on 表 12-7: 説明 開くプロジェクトをドロップダウン リストから選択します。 このプロジェクトのコードにブレークポイントが含まれます。 チェックを入れるとレンジ ブレークポイントが設定されます。 チェックを外すとシングル ブレークポイントが設定されます。 [Enable Range Address] の選択に応じて、この項目は [Address] と [Address (Start)] のどちらかになります。 プログラムメモリの 16 進アドレスを入力します。[Breaks on] に従ってこのアドレスをアクセスすると、コード実行の一時 停止がトリガされます。 [Enable Range Address] にチェックを入れると、この欄は有 効になります。 データメモリの 16 進アドレスを入力します。 Program Memory Execution: 上記で指定したアドレスに達 した場合、ブレークコードが実行されます。 TBLRD Program Memory: 上記で指定したアドレスへの テーブル読み出しが発生した場合、ブレークコードが実行さ れます。 TBLWT Program Memory: 上記で指定したアドレスへの テーブル書き込みが発生した場合、ブレークコードが実行さ れます。 [Breakpoint Type]: [Address] – [Pass Count] 項目 説明 Condition [Breaks on] で指定したブレークが発生する条件を設定します。 Always Break: [Breaks on] 条件が成立すると常にブレークし ます。 Break occurs Count instructions after Event: イベント ([Breaks on] 条件 ) が発生した後、実際のブレークの前に Count 命令を実行します。 Event must occur Count times: 実際のブレークの前に、 イベント ([Breaks on] 条件 ) が Count で指定した回数発生す る必要があります。 Count* [Condition] で指定した条件に従って、イベント後の命令数と イベントの数のどちらかを入力します。 * セクション「一部のデバイス (PIC16F1xxx MCU) では、拡張イベント ブレークポイントが 使えます。」も参照してください。 DS50002027D_JP - p.238 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 表 12-8: [Breakpoint Type]: [Address] 項目 説明 Trigger Options PIC16F1xxx デバイスの場合のみ。 トリガする条件を以下のどちらかから選択します。 • Do not trigger out when breakpoint is reached • trigger out when breakpoint is reached Interrupt Context PIC16F1xxx デバイスの場合のみ。 アドレス / データ ブレークポイント用の割り込みコンテクスト 修飾子です。以下のいずれかを選択します。 • Always break - ISR とメインコードの両方でブレーク • Break in main line (non-interrupt) context only - メインコード 内のみでブレークします。 • Break in interrupt context only - ISR コード内でのみブレーク します。 12.5.5 イベント ブレークポイント イベントのブレークポイントには以下のオプションを利用できます。 表 12-9: [Breakpoint Type]: [Event] 項目 説明 Project 開いているプロジェクトをドロップダウン リストから選択 します。 このプロジェクトのコードにブレークポイントが設定され ます。 Break on clock mode switch クロックモードが切り換わった時にブレークします。 Break on Reset instruction デバイスリセット命令が発生した時にブレークします。 Break on Sleep スリープに移行した時にブレークします。 Break on stack over/underflow スタックがオーバーフローまたはアンダーフローした時に ブレークします。 Break on wake up デバイスがスリープから復帰した時にブレークします。 Break when watchdog timer has ウォッチドッグ タイマ時間が終了した時にブレークします。 expired Break on execution out of bounds プログラムが通常のプログラムメモリ/空間を逸脱しようと した時にブレークします。 Break on MCLR Reset マスタクリアリセット (MCLR) でブレークします。 Break on trigger in signal トリガインパルスを検出した時にブレークします。 * 一時停止 ( ブレーク ) するコード実行を引き起こすイベントをリストから選択します。デバ イスによっては、一部のイベントを利用できない場合があります。 一部のデバイス (PIC16F1xxx MCU) では、拡張イベント ブレークポイントが使えます。 操作 説明 Break 指定した設定に従って実行をブレーク ( 停止 ) します。 Trigger out 指定した設定に従ってトリガアウト パルスを送出します。 Break and trigger out 指定した設定に従って実行をブレーク ( 停止 ) し、かつトリガ アウト パルスを送出します。 2016 Microchip Technology Inc. DS50002027D_JP - p.239 MPLAB® X IDE ユーザガイド 12.5.6 パスカウント動作 パスカウントを使う事で、指定したカウントの後までブレークの実行を遅延させる事 ができます。 Break occurs Count instructions after Event: Count は、ブレークポイントの後、停止までに実行する命令数です。 例えば、 • 0: 即座に実行を停止する • 1: 追加の 1 命令後に実行を停止する • 10: 追加の 10 命令後に実行を停止する Event must occur Count times: Count は、停止までに発生するイベント回数です。 例えば、 • 0: 即座に実行を停止する • 1: イベントが 1 回発生したら、次回のイベント (2 回目のイベント発生 ) で実行を停 止する • 10: イベントが 10 回発生したら、次回のイベント (11 回目のイベント発生 ) で実行 を停止する 12.6 [Customize Toolbars] ウィンドウ [Customize Toolbars] ウィンドウを使うと MPLAB X IDE のツールバーをカスタマイズで きます。このウィンドウは、[View] > [Toolbars] > [Customize] で開きます。 カスタマイズの手順はセクション 6.9「ツールバーのカスタマイズ」を参照してくだ さい。 12.7 [Dashboard] ウィンドウ [Dashboard] ウィンドウはチェックサム、メモリ使用率、ブレークポイント リソース 等の一般的なプロジェクト情報を表示します。詳細はセクション 5.18「ダッシュボー ドの表示」を参照してください。 DS50002027D_JP - p.240 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.8 [Hardware Stack] ウィンドウ 停止時にハードウェア スタックの内容を表示します。 [Hardware Stack] ウィンドウを開くには、[Window] > [PIC Memory Views] > [Hardware Stack] の順に選択します。最初のスタックレベルは「0」で表します。 図 12-3: [Hardware Stack] ウィンドウ 一時停止または停止時にこのウィンドウで使えるアイコンは以下の通りです。 表 12-10: ハードウェア スタックアイコン アイコン 灰色表示の アイコン 説明 無効の標準アイコン ([Find], [Find Next], [Find Previous]) です。このウィン ドウにはスタック全体が表示されているため、[Find] は不要です。 ウィンドウの内容を自動または手動で更新します。 [Tools] > [Options] > [Embedded] > [Generic Settings] の [Disable auto refresh for call stack view during debug sessions] の値 ( チェックを外す = 偽 ( 既定値 )、チェックを入れる = 真 ) の影響を受けます。セクション 12.14.1 「[Generic Settings] タブ」を参照してください。 偽 = 自動更新 ( 緑のアイコン ): ウィンドウの内容は、一時停止または停止 時に自動更新されます。ウィンドウが閉じられている場合、またはフォーカス されていない場合、ウィンドウを選択しこのボタンをクリックすると更新が 表示されます。再度実行および一時停止 / 停止する必要はありません。 真 = 手動更新 ( オレンジのアイコン ): ウィンドウの内容は、一時停止また は停止しても自動では更新されません。一時停止 / 停止時にウィンドウの内 容を更新するには、このボタンをクリックする必要があります。 2016 Microchip Technology Inc. DS50002027D_JP - p.241 MPLAB® X IDE ユーザガイド 12.9 [Memory] ウィンドウ [Memory]ウィンドウ([Window] > [PIC Memory Views])は各種のデバイスメモリ(SFR、 コンフィグレーション ビット等 ) を表示します。このウィンドウは、[Memory] およ び [Format] ドロップダウン ボックスを使ってカスタマイズできます。 詳細はセクション 4.22「デバイスメモリ ( コンフィグレーション ビットを含む ) の表 示 / 変更」を参照してください。 利用可能な [PIC Memory Views]: 8/16 ビットデバイス •「[Program Memory] ウィンドウ」 •「[File Registers] ウィンドウ」 •「[SFRs] ウィンドウ」 •「[Configuration Bits] ウィンドウ」 •「[EE Data Memory] ウィンドウ」 •「その他の [Memory] ウィンドウ」 利用可能な [PIC Memory Views]: 32 ビットデバイス •「[Execution Memory] ウィンドウ」 •「[Data Memory] ウィンドウ」 •「[Peripherals] ウィンドウ」 •「[Configuration Bits] ウィンドウ」 •「[CPU Registers] ウィンドウ」 •「[User ID Memory] ウィンドウ」 [Memory] ウィンドウのコンテクスト ( 右クリック ) メニュー : 以下のセクション ( セクション 12.9.13「[Memory] ウィンドウのメニュー」) にコンテクスト メニュー の情報を記載します。 図 12-4: DS50002027D_JP - p.242 [Memory] ウィンドウの内容 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.9.1 [Program Memory] ウィンドウ [Program Memory] ウィンドウは、現在選択しているプロセッサのプログラムメモリ のレンジ内の位置を表示します。選択したデバイスが外部プログラムメモリをサポート しており有効な場合、その外部プログラムメモリも [Program Memory] ウィンドウに 表示されます。 MPLAB Xのシミュレータでは、プログラムメモリの値が変化した場合またはプロセッ サが停止した場合、[Program Memory] ウィンドウのデータが更新されます。 Microchip 社のハードウェア デバッグツール ( 例 : MPLAB REAL ICE インサーキット エミュレータ ) では、プログラムメモリの値が変化した場合、またはプロセッサが停 止した場合、[Program Memory] ウィンドウのデータは更新されません。デバイス メモリの読み出しを実行する必要があります。 [Program Memory] ウィンドウ下部のドロップダウン ボックスをクリックする事で、 ウィンドウ内のオペコードの表示方法を変更できます。 •「[Code]」 •「[Hex]」 •「PSV Mixed (dsPIC DSC/PIC24 デバイスのみ )」 •「PSV Data (dsPIC DSC/PIC24 デバイスのみ )」 12.9.1.1 [Code] [Code] フォーマットは逆アセンブル HEX コードをシンボルで表示します。このウィン ドウには以下の列が表示されます。 • デバッグ情報 – デバッグに便利な情報です。 ポインタはプログラム カウンタの現在の位置を示します。 • Line – 参照行番号です。 • Address – オペコードの 16 進アドレスです。 • Opcode – 16進オペコードです。2バイトまたは3バイトのブロックで表示されます。 ほとんどの PIC MCU では、これらのブロックはワードを意味します。 PIC18CXXX デバイスではブロックは 2 バイトに相当します。 dsPIC DSC デバイスではブロックは 3 バイトに相当します。 • Label( シンボリックのみ ) – シンボリック フォーマットのオペコードラベルです。 • DisAssy – オペコード ニーモニックの逆アセンブル バージョンです。 12.9.1.2 [Hex] このフォーマットはプログラムメモリ情報を HEX コードで表示します。このウィン ドウには以下の列が表示されます。 • Address – 隣の列のオペコードの 16 進アドレスです。 • オペコード ブロック – 16 進オペコードです。2 バイトまたは 3 バイトのブロック で表示されます。 大部分の PIC MCU では、これらのブロックはワードを意味します。PIC18CXXX デバイスでは、ブロックは 2 バイトに相当します。dsPIC DSC デバイスでは、 ブロックは 3 バイトに相当します。 ハイライト表示のオペコード ブロックはプログラム カウンタの現在の位置を表し ます。 • ASCII – 対応するオペコード行の ASCII 表示です。 2016 Microchip Technology Inc. DS50002027D_JP - p.243 MPLAB® X IDE ユーザガイド 12.9.1.3 PSV Mixed (dsPIC DSC/PIC24 デバイスのみ ) このフォーマットはプログラムメモリをオペコードと PSV 領域 (CORCON レジスタ、 PSV ビットセット ) で表示します。このウィンドウには以下の列が表示されます。 • デバッグ情報 – デバッグに便利な情報です。ポインタはプログラム カウンタの現在 の位置を示します。 • Line – 参照行番号です。 • Address – オペコードの 16 進アドレスです。 • PSV Address – オペコードの 16 進データ空間アドレスです。 • Data – データとしてフォーマット化されたオペコードです。 • Opcode – 16 進オペコードです。3 バイトのブロックで表示されます。 • Label – シンボリック フォーマットのオペコードラベルです。 • DisAssy – オペコード ニーモニックの逆アセンブル バージョンです。 詳細は『dsPIC30F ファミリ リファレンス マニュアル』(DS70046) を参照してくだ さい。 12.9.1.4 PSV Data (dsPIC DSC/PIC24 デバイスのみ ) このフォーマットはプログラムメモリをファイルレジスタで表示します ( プログラム 空間がデータ空間 (CORCON レジスタ、PSV ビットセット ) 内に表示されている場合 )。 このウィンドウには以下の列が表示されます。 • Address – データの 16 進プログラム空間アドレスです。 • PSV Address – データの 16 進データ空間アドレスです。 • データブロック – 16 進データです。3 バイトのブロックで表示されます。 ハイライト表示のデータブロックはプログラム カウンタの現在の位置を表します。 • ASCII – 対応するデータ行の ASCII 表示です。 詳細は『dsPIC30F ファミリ リファレンス マニュアル』(DS70046) を参照してくだ さい。 DS50002027D_JP - p.244 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.9.2 [File Registers] ウィンドウ [File Registers] ウィンドウは、選択したデバイスの全ファイルレジスタを表示します。 ファイルレジスタの値が変化した場合、またはプロセッサがデバッガに応答した場合、 [File Registers] ウィンドウのデータが更新されます。 Note: 特定のハードウェア ツールでデバッグ速度を改善するには、このウィン ドウを閉じます。代わりに[SFRs]または[Watches]ウィンドウを使います。 [File Registers] ウィンドウ下部のボタンをクリックする事で、ウィンドウ内のデータ の表示方法を変更できます。 12.9.2.1 [Hex] このフォーマットはファイルレジスタ情報を HEX データで表示します。このウィン ドウには以下の列が表示されます。 • Address – 隣の列のデータの 16 進アドレスです。 • データブロック – 16 進データです。1 バイトまたは 2 バイトのブロックで表示され ます。 • ASCII – 対応するデータ行の ASCII 表示です。 12.9.2.2 [Symbol] このフォーマットは、HEX、10 進、バイナリ形式の対応データで各ファイルレジスタを シンボル表示します。このウィンドウには以下の列が表示されます。 • Address – データの 16 進アドレスです。 • Symbol – データのシンボル名です。 • 基数情報 – Hex, Decimal, Binary, Char 基数情報はこれらの 4 列に表示されます。HEX は 1 バイトまたは 2 バイトのブロック で表示されます。 12.9.2.3 [Dual Port] (dsPIC33FJ DSC/PIC24HJ MCU デバイスのみ ) このフォーマットはファイルレジスタ情報を HEX データで表示します。このウィン ドウには以下の列が表示されます。 • Address – データの 16 進アドレスです。 • DMA Address – シリコンの DMA アドレスからのオフセットです。 • データブロック – 16 進データです。1 バイトまたは 2 バイトのブロックで表示され ます。 • ASCII – 対応するデータ行の ASCII 表示です。 dsPIC33F DSC および PIC24H MCU デバイスの詳細は、弊社ウェブサイトのデバイス データシートと『dsPIC33F/PIC24H ファミリ リファレンス マニュアル』の各セク ションでご確認ください。 12.9.2.4 [XY Data] (dsPIC DSC デバイスのみ ) このフォーマットはファイルレジスタ情報を HEX データで表示します。このウィン ドウには以下の列が表示されます。 • • • • Address – データの 16 進 X アドレスです。 Y Bus – データの 16 進 Y アドレスです ( サポートされている場合 )。 データブロック – 16 進データです。2 バイトのブロックで表示されます。 ASCII – 対応するデータ行の ASCII 表示です。 dsPIC DSC デバイスの詳細は『dsPIC30F ファミリ リファレンス マニュアル』 (DS70046) を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.245 MPLAB® X IDE ユーザガイド 12.9.3 [SFRs] ウィンドウ 特殊機能レジスタ (SFR) ウィンドウは、選択したプロセッサの SFR の内容を表示し ます。このウィンドウには各 SFR 名と複数のフォーマットが表示されているため、通 常のファイルレジスタ ウィンドウより SFR の表示に便利です。少数の SFR を表示す る場合、[Watches] ウィンドウを推奨します。ハードウェア デバッグツール使用時に 速度問題対策に役立つ事があります ( ウィンドウ更新レートが速いため )。 ブレークが発生すると常に特殊機能レジスタの内容が更新されます。 可視レジスタ データメモリ レジスタが物理的にデバイス上に実装されていない場合、SFR の一覧 に表示されない事があります。シミュレータ等の一部のツールを使うと、実際のデバ イス上に存在しないプリスケーラ等のレジスタを表示できます。 シングルステップ実行 [Freeze Peripherals On Halt]を選択した場合、SFRのI/Oポートビットまたは[Watches] ウィンドウはシングルステップ実行では更新されません。ピンは変更されますが、新 規の値を取得するための読み出し要求はフリーズによって阻止され、次のステップま たは実行コマンドまで更新されません。 •「[Individual]」 •「[Peripheral]」 12.9.3.1 [Individual] この表示画面では、SFR はアドレスで表示されます。 データは以下の列に表示されます。 • Address – SFR の 16 進アドレスです。 • Name – SFR のシンボル名です。 • 基数情報 – Hex, Decimal, Binary, Char 基数情報はこれらの 4 列に表示されます。HEX は 1 バイトのブロックで表示され ます。 12.9.3.2 [Peripheral] この表示画面では、SFR は関連するデバイスの周辺モジュールに従ってグループ化さ れます。 データは以下の列に表示されます。 • Address – SFR の 16 進アドレスです。 • Name – 周辺モジュール名または SFR のシンボル名です。 • 基数情報 – Hex, Decimal, Binary, Char 基数情報はこれらの 4 列に表示されます。HEX は 1 バイトのブロックで表示され ます。 [Select Peripheral] ボタンをクリックして選択した周辺モジュールのみの SFR を表 示します。 DS50002027D_JP - p.246 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.9.4 [Configuration Bits] ウィンドウ [Configuration Bits] ウィンドウの使い方の詳細はセクション 4.22.4「コンフィグレー ション ビットの設定」で説明します。 データは以下の列に表示されます。 表 12-11: [Configuration Bits] ウィンドウの表示 欄の 見出し Address 定義 コンフィグレーション ワード / バイトのアドレスです。 Name コンフィグレーション レジスタの名前です。 Value コンフィグレーション ワード / バイトの現在の値です。 Field* コード内で設定されたコンフィグレーション ビットのマクロのフィールド部です。 例えば、WDTE はマクロ _WDTE_OFF のフィールド部です。 Option* コード内で設定されたコンフィグレーション ビットのマクロのオプション部です。 例えば、OFF はマクロ _WDTE_OFF のオプション部です。 Category 対応するコンフィグレーション ワード / バイトのコンフィグレーション ビット名 です。 Setting コンフィグレーション ビットの現在の値です。設定を変更するには、ドロップ ダウン リストを使います。 それに従ってコンフィグレーション ワード / バイトの値が変更されます。 * デバイスによってはサポートしていません。 12.9.5 [EE Data Memory] ウィンドウ [EE Data Memory] ウィンドウは、EEPROM データメモリを備えたマイクロコント ローラ ( 例 : PIC16F1829) の EEPROM データを表示します。選択したデバイスのデータ / オペコード HEX 情報が表示されます。 MPLAB X のシミュレータでは、EEPROM レジスタの値が変化した場合またはプロ セッサが停止した場合、[EE Data Memory] ウィンドウのデータが更新されます。 Microchip 社のハードウェア デバッグツール ( 例 : MPLAB REAL ICE インサーキット エミュレータ ) では、EEPROM レジスタの値が変化した場合、またはプロセッサが 停止した場合、[EE Data Memory] ウィンドウのデータは更新されません。データを 更新するには、デバイスメモリのデバッグ読み出し ( デバイス / ヘッダがこれをサポート している場合 ) を実行する必要があります。または、デバッグ セッションを終了した後、 デバイスのデータを読み出す必要があります。 EEPROM データメモリの開始アドレスは、プログラマで指定する必要があります。 下表に、一般的な開始アドレスを示します。ただし実際のアドレスはデバイスのプロ グラミング仕様で確認する必要があります。 表 12-12: プログラマ – データ EEPROM の開始アドレス デバイス 一般的な開始アドレス ミッドレンジ MCU 0x2100 エンハンスト ミッドレンジ MCU PIC18F MCU 0xF00000 PIC24 MCU, dsPIC DSC 0x7FFE00 0x1E000 この画面は以下の列にデータを表示します。 • Address – 隣の列のデータの 16 進アドレスです。 • データブロック – 16 進データです。メニューから選択できる 1 バイト、2 バイト、 4 バイトのブロックで表示されます。 • ASCII – 対応するデータ行の ASCII 表示です。 2016 Microchip Technology Inc. DS50002027D_JP - p.247 MPLAB® X IDE ユーザガイド 12.9.6 その他の [Memory] ウィンドウ この柔軟性に富んだ [Memory] ウィンドウでは、ウィンドウ下部の [Memory] ドロップ ダウン リストでその他のウィンドウを選択できます。 12.9.7 [Execution Memory] ウィンドウ [Execution Memory] ウィンドウは、現在選択している PIC32MX デバイスのプログラム および / またはデータメモリのレンジ内の位置を表示します。 MPLAB X のシミュレータでは、実行メモリの値が変化した場合またはプロセッサが 停止した場合、[Execution Memory] ウィンドウのデータが更新されます。 Microchip 社のハードウェア デバッグツール ( 例 : MPLAB REAL ICE インサーキット エミュレータ ) では、実行メモリの値が変化した場合、またはプロセッサが停止した 場合、[Execution Memory] ウィンドウのデータは更新されません。デバイスメモリの 読み出しを実行する必要があります。 ウィンドウ下部のドロップダウンリストで、ウィンドウ内のメモリの表示方法を選択 できます。 •「[Code] 表示 – プログラムメモリ」 •「[Data] 表示 – データメモリ」 12.9.7.1 [Code] 表示 – プログラムメモリ このフォーマットはプログラムメモリ情報を HEX コードで表示します。このウィン ドウには以下の列が表示されます。 • Line – メモリアドレスに対応する参照行番号です。 • Address – オペコードの 16 進物理アドレスです。 • Opcode – 16 進オペコードです。4 バイトのブロックで表示されます。ハイライト 表示のオペコードはプログラム カウンタの現在の位置を表します。 • Label – シンボリック フォーマットのオペコードラベルです。 • DisAssy – オペコード ニーモニックの逆アセンブル バージョンです。 12.9.7.2 [Data] 表示 – データメモリ このフォーマットはデータメモリ情報を HEX コードで表示します。このウィンドウ には以下の列が表示されます。 • Address – 隣の列のデータの 16 進アドレスです。 • データブロック – 16 進データです。4 バイトのブロックで表示されます。 • ASCII – 対応するデータ行の ASCII 表示です。 12.9.8 [Data Memory] ウィンドウ [Data Memory] ウィンドウは、現在選択している PIC32MX デバイスのデータおよび / またはプログラムメモリのレンジ内の位置を表示します。 ウィンドウ下部のタブをクリックする事で、ウィンドウ内のメモリの表示方法を選択 できます。 •「[Data] 表示 – データメモリ」 •「[Code] 表示 – プログラムメモリ」 12.9.8.1 [Data] 表示 – データメモリ このフォーマットはデータメモリ情報を HEX コードで表示します。このウィンドウ には以下の列が表示されます。 • Address – 隣の列のデータの 16 進アドレスです。 • データブロック – 16 進データです。4 バイトのブロックで表示されます。 • ASCII – データの対応行の ASCII 表示です。 DS50002027D_JP - p.248 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.9.8.2 [Code] 表示 – プログラムメモリ このフォーマットはプログラムメモリ情報を HEX コードで表示します。このウィン ドウには以下の列が表示されます。 • Line – メモリアドレスに対応する参照行番号です。 • Address – オペコードの 16 進物理アドレスです。 • Opcode – 16 進オペコードです。4 バイトのブロックで表示されます。 ハイライト表示のオペコードはプログラム カウンタの現在の位置を表します。 • Label – シンボリック フォーマットのオペコードラベルです。 • DisAssy – オペコード ニーモニックの逆アセンブル バージョンです。 12.9.9 [Peripherals] ウィンドウ [Peripherals] ウィンドウは、デバイスの周辺モジュールに関連する SFR の内容を表 示します。少数の SFR を表示するには、[Watches] ウィンドウを使う事を推奨します。 ハードウェア デバッグツール使用時の速度の問題の対策に役立つ事があります ( ウィン ドウ更新レートが速いため )。 ブレークが発生すると常に SFR の内容が更新されます。 可視レジスタ データメモリ レジスタが物理的にデバイスに実装されていない場合、SFR の一覧に 表示されない事があります。シミュレータ等の一部のツールを使うと、実際のデバイス 上に存在しないプリスケーラ等のレジスタを表示できます。 シングルステップ実行 [Freeze Peripherals On Halt]を選択した場合、SFRのI/Oポートビットまたは[Watches] ウィンドウはシングルステップ実行では更新されません。ピンは変更されますが、 新規の値を取得するための読み出し要求はフリーズによって阻止され、次のステップ または実行コマンドまで更新されません。 データは以下の列に表示されます。 • • • • Address – SFR の 16 進物理アドレスです。 Virtual – バスマトリクスで定義した SFR の 16 進仮想アドレスです。 Name – SFR のシンボル名です。 基数情報 – Hex, Decimal, Binary, Char 行の見出しバーを右クリックして画面に基数情報を追加できます。HEX は 4 バイト のブロックで表示されます。 12.9.10 [Configuration Bits] ウィンドウ プロジェクト デバイスによって利用できるコンフィグレーション ビットが異なります。 各種オプションはデバイスのデータシートで確認してください。 このウィンドウの詳細は本書のセクション 12.9.4「[Configuration Bits] ウィンドウ」 を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.249 MPLAB® X IDE ユーザガイド 12.9.11 [CPU Registers] ウィンドウ [CPU Registers] ウィンドウは、デバイスの CPU に関連する SFR の内容を表示します。 少数の CPU SFR を表示するには、[Watches] ウィンドウを使う事を推奨します。ハー ドウェア デバッグツール使用時に速度問題対策に役立つ事があります ( ウィンドウ更 新レートが速いため )。 ブレークが発生すると常に CPU レジスタの内容が更新されます。 可視レジスタ データメモリ レジスタが物理的にデバイス上に実装されていない場合、SFR の一覧 に表示されない事があります。シミュレータ等の一部のツールを使うと、実際のデバ イス上に存在しないプリスケーラ等のレジスタを表示できます。 シングルステップ実行 [Freeze Peripherals On Halt]を選択した場合、SFRのI/Oポートビットまたは[Watches] ウィンドウはシングルステップ実行では更新されません。ピンは変更されますが、 新規の値を取得するための読み出し要求はフリーズによって阻止され、次のステップ または実行コマンドまで更新されません。 データは以下の列に表示されます。 • Address – SFR の 16 進物理アドレスです。 • Name – SFR のシンボル名です。 • 基数情報 – Hex, Decimal, Binary, Char 行の見出しバーを右クリックして画面に基数情報を追加できます。 • Virtual – バスマトリクスで定義した SFR の 16 進仮想アドレスです。 12.9.12 [User ID Memory] ウィンドウ 一部のデバイスは、ユーザがチェックサムまたはその他のコード識別 (ID) 番号を格納 できるメモリ位置を持っています。これらの位置はプログラム / ベリファイ中に読み 書き可能です。デバイスによっては、通常の実行中も TBLRD および TBLWT 命令を 使ってこれらの位置をアクセスできます。 データは以下の列に表示されます。 • Address – ユーザ ID の 16 進アドレスです。右クリックし、仮想アドレスと物理 アドレスのどちらかを表示します。 • User ID – ユーザ ID メモリの内容 (HEX 形式 ) です。 この欄に入力する値はデバイスのプログラミング仕様を参照してください。ほとんど のデバイスでは、この値でデバイスの ID ワードの下位ニブルを設定し、上位ニブル は「0」に設定されます。上位ニブルは、テーブル書き込み等を使ってプログラム的 にのみ書き込む事ができます。 DS50002027D_JP - p.250 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.9.13 [Memory] ウィンドウのメニュー [Memory] ウィンドウで右クリックすると、下表の項目が表示されます。一部のデバ イスでは使えない項目もあります。 表 12-13: [Memory] ウィンドウのメニュー項目 項目 説明 Virtual Address Physical Address [Address] 列の下に表示するアドレスのタイプをチェックマークで選 択します。 Hex Display Width 16 進数の表示幅を設定します ( 選択肢はデバイスによって異なります )。 32 ビットデバイスの例 : One byte( 例 : 00 01 02 ...0E 0F) Two bytes( 例 : 00 02 04 ...0C 0E) Four bytes( 例 : 00 04 08 0C) Run to Cursor 現在のカーソル位置までプログラムを実行します。 Set PC at Cursor プログラム カウンタ (PC) を現在のカーソル位置に設定します。 Focus Cursor at PC カーソルを現在の PC アドレス位置へ移動し、このアドレスをウィン ドウの中心に表示します。 Toggle Breakpoint 既存のブレークポイントの ON/OFF を切り換えます。 Symbolic Mode 逆アセンブル HEX コードをシンボルで表示します。 Verbose Labels 内部コンパイララベルを表示します。 Fill Memory メモリの [Start Address] ~ [End Address] に [Data] 内の値を書き込み ます。 [Fill Memory] ダイアログで、その他のオプションを指定します。 Go To [Go To] ダイアログで指定したアドレス / 関数に移動します。 Find [Find] ダイアログで指定したテキストを検索します。 Enable Multiline Rows [Configuration Bits] ウィンドウで複数の行を有効にします。 Output To File ウィンドウの表示内容をテキストファイルに書き出します。 [Output to File Range] ダイアログで、出力するデータの範囲を指定し ます。 Import Table ファイルから [Memory] ウィンドウに表形式のデータをインポートし ます。 [Import Table Range] ダイアログで、インポートするデータの範囲を 指定します。 Export Table [Memory] ウィンドウからファイルへ表形式のデータをエクスポート します。 [Export Table Range] ダイアログで、エクスポートするデータの範囲 を指定します。1 列にエクスポートするかどうかも指定します。 Print このウィンドウの内容を印刷します。 NOTE: メモリ容量の大きなデバイスの場合、印刷ページ数が非常に 多くなる事があります。その場合、ウィンドウの内容をファイルに出 力した後 ([Print] ダイアログの [General] タブの [Print to File] チェック ボックス )、そのファイルから必要なページだけ選んで印刷する事を 推奨します。 Adjust Table Columns 行を自動的に調節します。 [Window] タブを右クリックすると、その他のオプション (Close、Maximize/Minimize window、Dock/Undock window 等 ) を選択できます。 2016 Microchip Technology Inc. DS50002027D_JP - p.251 MPLAB® X IDE ユーザガイド 12.10 [Message Center] ウィンドウ [Message Center] ウィンドウは、全ての [Output] ウィンドウのメッセージを収集し、 時系列で 1 つの画面に表示します。各種のフィルタを選択して関連するメッセージを 表示できます。 図 12-5: [Message Center] ウィンドウ 表 12-14: [Message Center] ボタン DS50002027D_JP - p.252 番号 ボタン 機能 1 Search 検索テキストボックスを切り換えます。検索ボックスが表示されている 場合、テキストを入力するとその文字列を [Message Center] ウィンドウ 内で検索します。 2 Filters 既定値では、[Output] ウィンドウに表示される全てのメッセージが [Message Center] ウィンドウに表示されます。 このボタンをクリックすると、[Output] ウィンドウのタブ項目のリストを含 むウィンドウが開きます。リストから項目を選択して、表示メッセージに フィルタをかけます。 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.11 [Output] ウィンドウ [Task] ペインは、各種 NetBeans ウィンドウと MPLAB X IDE 専用ウィンドウを表示 します。[Output] ウィンドウは、MPLAB X IDE 出力情報を表示します。情報はウィン ドウ内のタブ上に表示されます。 表 12-15: [Output] ウィンドウのタブ項目 項目 説明 Debugger Console [User program running] 等の主要なデバッグ動作を表示します。 Tool-specific ツールのファームウェア バージョン、デバイス ID、動作ステータスを 表示します。 Build, Load ビルドとプログラム読み込みに関する情報とステータスを表示します。 Clean, Build, Load クリーン、ビルド、プログラミングに関する情報とステータスを表示し ます。 Peripheral Output シュミレータを使ったデバッグにおいて、UART 等の周辺モジュールの 出力を表示します。 [Output] ウィンドウで右クリックすると、下表の項目が表示されます。 表 12-16: [Output] ウィンドウのメニュー項目 メニュー項目 説明 Copy 選択しているテキストをクリップボードにコピーします。 Paste 現在選択しているテキストをクリップボードから [Output] ウィンドウに貼り 付けます。 Find 現在選択しているテキスト、または入力したテキストを [Output] ウィンドウ 内で検索します。正規表現、大文字 / 小文字の区別にも対応しています。 Find Next テキストを順方向に検索します。 Find Previous テキストを逆方向に検索します。 Filter テキストまたは正規表現によって出力をフィルタ処理します。 Wrap Text [Output] ウィンドウの行送りを有効にします。 Larger Font フォントサイズを大きくします。 Smaller Font フォントサイズを小さくします。 Choose Font フォントタイプ、スタイル、サイズを選択します。 Save As 選択したテキストをファイルに保存します。 Clear [Output] ウィンドウ内のテキストを全てクリアします。 Close [Output] ウィンドウを閉じます。 2016 Microchip Technology Inc. DS50002027D_JP - p.253 MPLAB® X IDE ユーザガイド 12.12 [Project Properties] ウィンドウ このウィンドウは、プロジェクトのデバイス、ツール、ツール設定を表示または変更 するために使います。詳細は以下を参照してください。 • セクション 4.4「プロジェクト プロパティの表示と変更」 • セクション 4.5「デバッガ / プログラマツール オプションをセットアップまたは変 更する方法」 • セクション 4.6「言語ツールオプションを設定または変更する方法」 • セクション 5.4「読み込み可能なプロジェクト、ファイル、シンボル」 • セクション 4.12「ライブラリやオブジェクト ファイルの追加と設定」 • セクション 4.14「ビルドプロパティの設定」 12.13 [Projects] ウィンドウ [Projects] ウィンドウは NetBeans ウィンドウです。しかし、MPLAB X IDE プロジェ クトに関連する論理 ( 仮想 ) フォルダを表示するために、カスタマイズしています。 また、右クリックで開くコンテクスト メニューには、MPLAB X IDE 専用の項目を追 加しています。 •「[Projects] ウィンドウ – 論理フォルダ」 •「[Projects] ウィンドウ – [Project] メニュー」 •「[Projects] ウィンドウ – [File] メニュー」 •「[Projects] ウィンドウ – [Window] メニュー」 図 12-6: DS50002027D_JP - p.254 [Projects] ウィンドウのコンテクスト メニュー 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.13.1 [Projects] ウィンドウ – 論理フォルダ MPLAB X プロジェクト用に論理フォルダを追加しています。そのため、表示された 全てのフォルダは以下のファイルタイプのいずれかに分類できます。 • Header Files – MPLAB X IDE はビルド時にこのカテゴリを使いません。このフォ ルダは、ヘッダファイルに対するプロジェクトの依存性を示し、また、これらの ファイルに容易にアクセスするために設けられています。[Projects] ウィンドウで ファイルをダブルクリックすると、エディタで開きます。 • Linker Files – リンカスクリプトをプロジェクトに追加する必要はありません。 プロジェクトの言語ツールが、デバイスに適合する汎用リンカスクリプトを自動的 に選択するためです。従って、リンカスクリプトをユーザが自分で作成しない限り このフォルダは空になります。 ファイルは 1 つだけ格納します。複数のリンカスクリプトを格納した場合、最初の 1 つだけが有効となります。 • Source Files – ツールチェーンがファイルコマンドへの入力として受け入れるの は、これらのファイルのみです。 • Important Files – 他のどのカテゴリにも属さないファイルは、全てこのフォルダに 格納します。 あるいは、プロジェクトに関連するデータシート (PDF) を、[Projects] ウィンドウ 内のこのフォルダに追加しておけば、ダブルクリックでデータシートを開く事がで きます (PDF リーダーをインストールしておく必要があります )。 • Libraries – ツールチェーンは、このフォルダ内の全てのファイルとオブジェクト ファイルを最終リンクステップでインクルードします。詳細はセクション 4.12「ラ イブラリやオブジェクト ファイルの追加と設定」を参照してください。 • Loadables – プロジェクト HEX ファイルと結合または置換するプロジェクトと ファイルです。詳細はセクション 5.4「読み込み可能なプロジェクト、ファイル、シ ンボル」を参照してください。 2016 Microchip Technology Inc. DS50002027D_JP - p.255 MPLAB® X IDE ユーザガイド 12.13.2 [Projects] ウィンドウ – [Project] メニュー [Projects] ウィンドウでプロジェクト名を右クリックすると、[Project] メニューが開 きます。表 12-17 に、メニュー項目を示します。 表 12-17: [Project] コンテクスト メニューの項目 メニュー項目 説明 New ファイルを新規作成します。 MPLAB® X IDE では、[embedded] ファイルタイプを選択できます。 Add Existing Item 既存のファイルをプロジェクトに追加します。 フ ァイルへのパスは、[Auto] (MPLAB X IDE が選択 )、[Absolute]、 [Relative] のいずれかに設定できます。さらに、そのファイルをプロ ジェクト フォルダにコピーできます。 Add Existing Items 指定したフォルダに含まれる全てのファイルを追加します。 from Folders また、特定のフォルダを含めないようにパターンを指定する事もでき ます。[Default] をクリックすると既定値のパターンを参照できます。 また、[Tools] > [Options] で [Miscellaneous] ボタンをクリックし、 [Files] タブで [Files ignored by the IDE] も参照してください。 New Logical Folder 新規の論理フォルダを作成します。 実際のフォルダの表示は、[Files] ウィンドウを参照してください。 Locate Headers C コード プロジェクト ファイル内で呼び出されている全てのヘッダ ファイル (.h) を検索し、プロジェクトに追加できるようにチェック リスト ウィンドウに表示します。 プロジェクトにヘッダを追加する理由は複数あります。 • PC 上でヘッダファイルの保存場所を探す事なく、[Projects] ウィン ドウの [Header Files] から開く事ができます。 • [Save Project As] でプロジェクトを作成した場合、ヘッダファイルは ユーザが追加しない限りプロジェクトには含まれません。従って、 ユーザ作成のヘッダファイルが必要な場合、このプロジェクトは ビルドできません。 • [Package] で圧縮済みプロジェクトを作成した場合、ヘッダファイル はユーザが追加しない限りプロジェクトには含まれません。従って、 ユーザ作成のヘッダファイルが必要な場合、これを解凍したプロ ジェクトはビルドできません。 この機能を使うと、Microchip 社の全てのツールチェーンのユーザ作 成ヘッダファイルを検索できます。 Add Item to Important 既存のアイテムをプロジェクトに追加します。 Files フ ァイルへのパスは、[Auto] (MPLAB X IDE が選択 )、[Absolute]、 [Relative] のいずれかに設定できます。さらに、そのファイルをプロ ジェクト フォルダにコピーする事を選択できます。 これは、シミュレータ ファイル、データシート (PDF)、その他のファ イルを参考資料としてプロジェクトに追加するのに便利です。 Export Hex プロジェクトのビルド結果を HEX ファイルとしてエクスポートします。 MPLAB IDE v8ではメモリ オブジェクトの抽出結果をエクスポートし ます。MPLAB X IDE ではビルドの結果を納めた HEX ファイルをエク スポートします。従って、このファイルは、コード内のコンフィグ レーションと EEPROM に必要な全ての補助的メモリ設定を含む必要 があります。 Build [Project Properties] ウィンドウで選択したオプションに従ってビルド します。 Note: [Debug] または [Run] を実行すると、プロジェクトは自動的に ビルドされます。 Clean and Build [Clean] を実行した後、[Project Properties] ウィンドウで選択したオプ ションに従ってビルドします。 Note: [Debug] または [Run] を実行すると、プロジェクトは自動的に ビルドされます。 Clean 以前のビルドで生成されたファイルを削除してプロジェクトを空に します。 Package 現在のプロジェクトを 1 つの ZIP ファイルにアーカイブします。 詳細はセクション 6.6「MPLAB X IDE プロジェクトのパッケージ化」 の「Locate Headers」を参照してください。 DS50002027D_JP - p.256 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 表 12-17: [Project] コンテクスト メニューの項目 ( 続き ) メニュー項目 Set Configuration Run Debug Step In Make and Program Device Set as Main Project Open Required Projects Close Rename Move Copy Delete Code Assistance Find Share on Team Server Versioning Local History Properties 2016 Microchip Technology Inc. 説明 プロジェクトのコンフィグレーションを設定するために [Project Properties] ダイアログを開きます。 プロジェクト コードを実行します。 詳細はセクション 4.16「コードの実行」を参照してください。 プロジェクト コードをデバッグ環境で実行します。 詳細はセクション 4.17「コードのデバッグ実行」を参照してください。 デバッグ環境で実行中の一時停止したコードを順番に実行します。 詳細はセクション 4.19「コードのステップ実行」を参照してください。 ターゲット デバイスをプログラミングした後、プログラムを実行せず にリセット状態に保持します。 このプロジェクトをメイン プロジェクトに設定します。 これは複数のプロジェクトを使う場合に便利な機能です。セクション 6.3「複数プロジェクトを使った作業」も参照してください。 選択したプロジェクトの実行に必要なその他の全てのプロジェクト を読み込みます。 選択したプロジェクトを閉じます。 プロジェクト名を変更します。 プロジェクトを別の場所に移動します。 プロジェクトと一緒に、プロジェクト フォルダ内のソースファイルも 移動します。プロジェクト フォルダ外部のファイルは移動しません。 しかしプロジェクトは、プロジェクト フォルダ外のファイルへの参照 を維持します。これは設計仕様に基づいた動作です。 プロジェクトのコピーを作成します。 ソースファイルがプロジェクト フォルダ内にある場合、ソースファイ ルも新規の場所にコピーします。プロジェクト フォルダ外にあるファ イルはコピーしません。しかしプロジェクトは、プロジェクト フォルダ 外のファイルへの参照を維持します。これは設計仕様に基づいた動作 です。 プロジェクト ファイルを削除します。 プロジェクト ファイルは削除しますが、プロジェクト フォルダ内の ファイルは削除しません。[Also delete sources] を選択した場合のみ、 全ソースファイルを削除します。 コード生成支援機能 ( 例 : コード折り畳み、コード補完 ) を選択します。 このプロジェクトのファイル内で特定のテキストを検索します。 チームサーバでこのプロジェクトを共有します。 詳細はセクション 5.21「コード開発とエラー追跡の連携」を参照して ください。 バージョン管理システムを使ってプロジェクトのバージョンを管理 します。詳細はセクション 5.20「ソースコードの管理」を参照してく ださい。 プロジェクトのローカル履歴を表示します。または、そのローカル履 歴に戻します。 詳細はセクション 5.20「ソースコードの管理」を参照してください。 プロジェクトのプロパティを設定します。 MPLAB X IDE の [Project Properties] ウィンドウは、組み込み開発専用に カスタマイズされています。セクション 12.12「[Project Properties] ウィンドウ」を参照してください。 DS50002027D_JP - p.257 MPLAB® X IDE ユーザガイド 12.13.3 [Projects] ウィンドウ – [File] メニュー [Projects] ウィンドウでファイル名を右クリックすると、[File] メニューが開きます。 表 12-18 に、専用のメニュー項目を示します。 表 12-18: [File] コンテクスト メニューの項目 メニュー項目 Open Cut Copy Paste Compile File Remove from Project Rename Save as Template Local History Tools Properties 説明 このファイルをエディタ ウィンドウで開きます。 ファイルをプロジェクトから削除し、クリップボードに移動します。 ファイルをクリップボードにコピーします。 クリップボードのファイルをプロジェクトに貼り付けます。 現在のファイルのみをコンパイルします。 ファイルをプロジェクトから削除します。 この操作では、ファイルは PC から削除されません。ファイルを プロジェクトとコンピュータから削除するには、<Delete> キーを 使います。 ファイル名を変更します。 現在のファイルをテンプレート ファイルとして保存します。 ファイルのローカル履歴を表示します。または、そのローカル履 歴に戻します。 詳細はセクション 5.20「ソースコードの管理」を参照してください。 ファイルツールは以下を含みます。 • Apply Diff Patch: Diff が作成した既存のパッチを適用します。 • Diff to: 2 つのファイルの差分を表示します。 • Add to Favorites: このファイルを [Favorites] ウィンドウに追加 します。 プロジェクト プロパティとは異なるファイル プロパティを設定 します。 [Exclude from build] にチェックを入れると、このファイルをプロ ジェクトのビルドから除外します。[Override build options] に チェックを入れると、ここで選択したビルドオプションをプロ ジェクト コンフィグレーション内のビルドオプションよりも優先 させます。 詳細はセクション 4.13「ファイルおよびフォルダ プロパティの設 定」を参照してください。 12.13.4 [Projects] ウィンドウ – [Window] メニュー [Projects] ウィンドウの空いた場所で右クリックすると、[Window] メニューが表示さ れます。表 12-19 に、専用のメニュー項目を示します。 表 12-19: [File] コンテクスト メニューの項目 メニュー項目 New Project New File Open Project Open Recent Project Open Project Group Run Project Set Main Project DS50002027D_JP - p.258 説明 [New Project] ウィザードを起動します。 詳細はセクション 4.2「新規プロジェクトの作成」を参照してくだ さい。 [New File] ウィザードを起動します。 詳細はセクション 4.9「ファイルの新規作成」を参照してください。 既存のプロジェクトを開きます。 最近編集したプロジェクトの一覧の中から、既存のプロジェクト を開きます。 プロジェクト グループの一覧の中から、既存のプロジェクト グループを開きます。 メイン プロジェクトを実行します。 開かれているプロジェクトの一覧の中から、メイン プロジェクト を設定します。 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.14 [Tools] > [Options] > [Embedded] ウィンドウ このウィンドウは [Tools] > [Options](Mac OS X の場合、[mplab_ide] > [Preferences]) で開きます。 [Options] ウィンドウは NetBeans ウィンドウです。ただし、[Embedded] ボタンを追加 して MPLAB X IDE プロジェクト用にカスタマイズしています。このボタンをクリック すると、以下のタブとオプションを利用できます。 •「[Generic Settings] タブ」 •「[Project Options] タブ」 •「[Build Tools] タブ」 •「[Static Tools] タブ」 •「[Suppressible Messages] タブ」 •「[Diagnostics] タブ」 •「[Other] タブ」 2016 Microchip Technology Inc. DS50002027D_JP - p.259 MPLAB® X IDE ユーザガイド 12.14.1 [Generic Settings] タブ ログファイル等のプロジェクト機能を設定します。 表 12-20: [Generic Settings] タブの項目 項目 説明 Open source file and locate line in editor when debugger halts この機能を使うと、ブレークポイントのように停止したコード行 にジャンプし、コードを確認できます。 無効にすると単に実行を停止します。 Clear tool output window on new session (debug, program, upload) 実行、デバッグ実行、アップロードを開始する際に、[Output] ウィン ドウの内容をクリアします。 Halt build on first failure ビルド時に、障害が最初に発生した時点でプロセスを停止します。 どのエラーが発生したらプロセスを停止するかは、選択したプロ ジェクト言語ツールで設定できます。[Project Properties] ダイアログ の [Categories] で言語ツールを選択します。[Option Categories] では、エラー、警告、メッセージの設定もできます。 Maintain active connection to hardware tool これにチェックを入れると、実行時以外もハードウェア ツールを 常時接続したまま (MPLAB® IDE v8 の挙動 ) にします。 この機能を有効にしたままするようにプロジェクトを切り換える 場合 ( 例 : ブートローダ アプリケーションの開発 )、ツールとデバ イスの設定が同じである事を確認します。異なる場合、エラーメッ セージが表示されます。 Read Device Memory to [Read Device Memory to File] アイコン / 機能では、ファイルに使 File: Export only memory われているデバイスメモリのみを保存します。 used Silent build ビルドの際に、[Output] ウィンドウにメッセージを表示しません。 Enable alternate watch list views during debug session [Watches] ウィンドウに 3 つのウォッチビュー ダイアモンドを表 示し、ウォッチビューを観察する変数に関連付けます。ウォッチ ビュー ダイアモンドをクリックすると、そのビューに関連付けら れた変数だけが表示されます。いわばフィルタのような機能です。 Disable auto refresh for call stack view during debug sessions 有効にすると、一時停止または停止時に内容を自動で更新します。 ウィンドウが閉じられている場合、またはフォーカスされていない 場合、ウィンドウを選択しこのボタンをクリックすると更新が表示 されます。再度実行および一時停止 / 停止する必要はありません。 無効にすると、一時停止または停止時にウィンドウを手動で更新 します。一時停止 / 停止時にウィンドウの内容を更新するには、 このボタンをクリックする必要があります。 On mouse-over structure and array expressions, evaluate integral members only チェックを入れると、コードの構造体または配列の式をマウス オーバーした際、必須メンバーのみを表示します。 チェックを外すと、コードの構造体または配列の式をマウスオー バーした際、全てのメンバーを表示します。 Hold-off period before memory view synchronization: Give priority to debug events (step over, step in, continue) デバイスが停止してからデバイスのデータがメモリウィンドウに 同期するまでの間の遅延時間を指定します。 長い遅延時間を設定すると、更新の前により多くのシングルス テップ実行が発生します。この機能は、ファイルレジスタとデータ メモリ等の一般的な [PIC Memory Views] のみに適用できます。 Reset @ リセット時の動作を選択します。 Main: リセット時に main() で停止します。 Reset Vector: リセット時にリセットベクタ位置で停止します。 Debug start-up デバッグ開始時の動作を選択します。 Run: 即座に実行を開始します。 Main: main() で停止します。 Reset Vector: リセットベクタ位置で停止します。 Default Charset プロジェクトの既定値の文字セットを選択します。 DS50002027D_JP - p.260 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.14.2 [Project Options] タブ プロジェクトに関連するオプションを設定します。 表 12-21: [Project Options] タブの項目 項目 説明 Make Options プロジェクトをビルドする際に使うmakeオプションを入力します。 これらのオプションは、ツールチェーンによって異なります。 詳細は使用する言語ツールの文書を参照してください。 File Path Mode プロジェクト内のファイルのパス情報の保存方法を指定します。 Auto: プロジェクト フォルダ内のファイルへのパスを相対パスと して保存し、プロジェクト フォルダ外のファイルへのパスを絶対 パスとして保存します。 Always Relative: 全てのパスを、プロジェクト フォルダに対する 相対パスとして保存します。 Always Absolute: 全てのパスを絶対パス ( フルパス ) として保存 します。 Save All Modified Files Before Running Make これを選択した場合、make を実行する前に、IDE 内の全ての未保 存ファイルを保存します。このチェックは入れたままにしておく 事を推奨します。外した場合、変更したファイルをあらかじめ保 存しておかないと、ファイルへの変更が make に反映されません。 Reuse Output Tabs from Finished Processes 選択すると、[Output] ウィンドウの同じタブに出力メッセージが表 示されます。選択しない場合、新規プロセスごとに新規タブが開 きます。 Show profiler indicators during run (new projects only) これにチェックを入れると、新規作成したプロジェクトの実行時 にプロファイラ ツール (CPU 使用率、メモリ使用率等 ) を実行し ます。表示されるツールは、[Tools] > [Profiler Tools] で選択した [Profile Configuration] によって決まります。 Use parallel make make -j 2n) これにチェックを入れると、make によって複数のプロセスが同時 に実行されます。-j( または --jobs) は並列実行を指定するオプ ション、2n はプロセス数、n はコンピュータで使用可能なプロ セッサ数です。コンピュータが並列処理をサポートしていない場合、 並列 make は無効化されます。 また、[Make Options] で 2 より大きいプロセスを指定する事も可 能です ( 例 : -j 10)。 Note 1: MPLAB XC16 または MPLAB C30 の場合、並列 make を 使うには手続きの抽象化を無効にする必要があります ([File] > [Project Properties]、コンパイラ カテゴリ、[Optimizations] オプ ション カテゴリで、[Unlimited procedural abstraction] のチェック を外します )。 Note 2: MPASMX は、ツールチェーンとして使う場合も MPLAB C18 プロジェクトの一部として使う場合も並列 make では実行で きません。並列 make 機能は、MPASMX ツールチェーンを使う プロジェクトまたは C18 ツールチェーンを使うプロジェクト (.asm ファイルを含む ) では無視されます。 Force makefile regeneration when opening a project チェックを外すと、プロジェクトが既に開いている場合 ( 例 : 別の コンピュータ上でプロジェクトを開いている場合 ) の makefile の 再生成の要否を MPLAB IDE が決定します ( これが既定値です )。 チェックを入れると、プロジェクトを開いた時に makefile の再生 成を強制的に実行します。makefile を再生成する必要があるにも かかわらず再生成されない場合、この機能を使います。 Note: 再生成には若干の時間を要します。 2016 Microchip Technology Inc. DS50002027D_JP - p.261 MPLAB® X IDE ユーザガイド 12.14.3 [Build Tools] タブ Mac の場合、このタブ上の情報にアクセスする方法が異なります。メインメニュー バーから [mplab_ide] > [Preferences] を選択してビルドツールにアクセスします。 セクション 3.3.6「言語ツールのパスの指定」を参照してください。 インストールしていない言語ツールは [Toolchain] リストに表示されません。インス トールしたはずの言語ツールがこのリストに表示されない場合、[Scan for compilers] をクリックします。それでも表示されない場合、[Add] をクリックして、そのツール をリストに追加します。 以下の言語ツールは MPLAB X IDE に付属しています。 • MPASM toolchain – MPASM アセンブラ、MPLINK リンカ、各種ユーティリティを 含みます。 その他のツールは、Microchip 社ウェブサイト (www.microchip.com) またはサードパー ティから入手できます。 表 12-22: [Build Tools] タブの項目 項目 説明 Toolchain インストールされている言語ツールのリストを表示します。 プロジェクトに使うツールを選択し、右側に表示されるパスが正 しい事を確認します。 Base directory: ツールのメインフォルダへのパス C compiler: C コンパイラへのパス ( 利用可能な場合 ) Assembler: アセンブラへのパス ( 利用可能な場合 ) Make command: MPLAB® X IDE が生成した make コマンドの名前 Add リストに新しい言語ツールを追加します。 [Scan for Build Tools] を使う方法もあります。 Add Custom Compiler カスタマイズしたコンパイラを追加します。 この例では、サポートしている Microchip 社製デバイスを指定する 必要があります。 Remove リストから言語ツールを削除します。 言語ツールそのものは PC から削除されません。 Default ツールをクリックして [Default] を選択すると、選択したデバイス 用の既定値コンパイラ / アセンブラとなります。 Scan for Build Tools インストールされているコンパイラ / アセンブラをスキャンします。 これは、システム全体ではなく、複数の既定値フォルダだけを スキャンします。 それ以外の場所にインストールした場合、手動でコンパイラを追 加する必要があります。 12.14.4 [Static Tools] タブ 使用するリモート接続を選択します。リモート USB ツールブリッジ、リモート Ethernet ツール、汎用シリアルポートのために新規の接続を追加します。 DS50002027D_JP - p.262 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 図 12-7: 新規の静的ツール 12.14.5 [Suppressible Messages] タブ 抑止するエラーおよび警告メッセージを選択します。表示されたフォルダをダブル クリックして、抑止可能な項目を表示させてチェックを入れます。 図 12-8: 2016 Microchip Technology Inc. 抑止可能なメッセージの一覧 DS50002027D_JP - p.263 MPLAB® X IDE ユーザガイド 12.14.6 [Diagnostics] タブ ログファイル等の診断機能を設定します。セクション 6.8「ログデータ」を参照して ください。 表 12-23: [Diagnostics] タブの項目 項目 説明 Logging Level メッセージログのレベルを設定します。 OFF: 記録しません。 SEVERE: 重大な ( エラー ) メッセージのみ記録します。 WARNING: 警告メッセージのみ記録します。 INFO: 情報メッセージのみ記録します。 CONFIG: コンフィグレーション情報のみ記録します。 FINE: 一部のモジュール間通信を記録します。 FINER: FINE よりも詳細にモジュール間通信を記録します。 FINEST: 全てのモジュール間通信を記録します。 Log File ログファイルのパスと名前です。 USB Circular Log MPLAB REAL ICE インサーキット エミュレータ、 MPLAB ICD 3、PICkit 3 でのみ利用できます。 Start New Logging Session/Pause Logging ボタンをクリックすると、新規のログセッションが開始します。 または、進行中のログセッションが一時停止します。 Circular USB log file location ログファイルを保存する場所 ( パス ) を指定します。 Circular USB log file max size ログファイルのサイズを指定します。 in KBs 12.14.7 [Other] タブ C/C++ およびアセンブラ ソースファイルとヘッダファイル用に使えるファイル拡張 子のリストを編集します。また、各ファイルタイプの既定値拡張子 ( 太字で表示 ) も 設定します。 表 12-24: [Other] タブの項目 ファイル 既定値の拡張子 C/C++ ヘッダファイル H, SUNWCCh, h, hpp, hxx, tcc C++ ファイル C, c++, cc, cpp, cxx, mm C ファイル c, i, m Fortran ファイル なし MPLAB X IDE は Fortran によるプログラミングをサポートしてい ません。 AS, ASM, S, as, asm, s アセンブリ ファイル アセンブリ インクルード INC, inc DS50002027D_JP - p.264 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.15 [Trace] ウィンドウ トレースは、[Trace] ウィンドウでコード実行をステップごとに記録し、記録された 結果を検討する機能です。現在トレース機能を利用できるツールは以下の通りです。 • シミュレータ • MPLAB REAL ICE インサーキット エミュレータ ウィンドウでトレース列を右クリックすると、コンテクスト メニュー ( 表 12-25) が 開きます。使うツールによって、表示されるメニュー項目は異なります。 表 12-26 に、トレースに関連するダイアログを示します。 表 12-25: [Trace] ウィンドウのコンテクスト メニュー メニュー項目 説明 Symbolic Mode [Instruction] 列の表示を、リテラルレジスタ アドレス ( 例 : 0x5) とシン ボリック レジスタマクロ ( 例 : PORTA) の間で切り換えます。 Go To Trigger: トリガ行 (0) に移動します。 Top: トレース行の先頭に移動します。 Bottom: トレース行の末尾に移動します。 Trace Line: 指定したトレース行に移動します。 [Go To] ダイアログが開きます。 Go To Source Line トレース行を選択してこのオプションを選択すると、ソースコード内 の対応する行に移動します。 Display Time [Cycle] 列の表示を以下のように設定します。 As Hex Cycle Count: サイクル数を 16 進数で表示します。 As Decimal Cycle Count: サイクル数を 10 進数で表示します。 In Seconds Elapsed: サイクル数を経過秒数で表示します。 In Engineering Format: サイクル数を適切なエンジニアリング フォーマット (103 の累乗 ) で表示します。 Clear Trace File トレース表示内のデータをクリアします。 Find トレース表示内の項目を検索します。 [Find] ダイアログが開きます。 Output To File トレースデータをファイルに保存します。 [Define Range] ダイアログが開き、そこから [Save] ダイアログを開き ます。 Print データを印刷します。 [Print] ダイアログが開きます。 Adjust Table Columns トレース表示の列幅をデータに合わせて自動調整します。 Reload View 一時停止時にトレース表示の元のデータビューを再読み込みします。 表 12-26: [Trace] ダイアログ ダイアログ Go To 説明 移動するトレース行を指定します。 Find トレース表示で行番号やその他のデータを検索します。 Output to File Range ファイルに出力する行範囲を指定します。 範囲指定後 [OK] をクリックして、[Save] ダイアログに進み、データを テキストファイルに保存します。 Save データをテキストファイルに保存します。 Print 2016 Microchip Technology Inc. 印刷前にプリンタ、ページ設定、表示設定を指定します。 DS50002027D_JP - p.265 MPLAB® X IDE ユーザガイド 12.16 [Watches] ウィンドウ [Watches] ウィンドウを使って、選択したシンボルの値の変化を観察できます。 [Watches] ウィンドウを開くには、[Window] > [Debugging] > [Watches] を選択します。 12.16.1 [Watches] の動作 [Watches] ウィンドウの使い方は • セクション 4.20「シンボル値の変化の観察」 • NetBeans ヘルプトピック ([C/C++/Fortran Development] > [Debugging C/C++/Fortran Applications with gdb] > [Viewing C/C++/Fortran Program Information] > [Creating a C/C++/Fortran Watch]) を参照してください。 12.16.2 [Watches] の表示 この表示には以下の機能があります。 •「アイコン」 •「列」 •「操作」 12.16.2.1 アイコン アイコンは [Name] 行の名前のオブジェクトの左に表示されています。 表 12-27: [Name] 行のアイコン アイコン 説明 ウォッチ オブジェクト プログラムメモリのウォッチ オブジェクト オブジェクトの静的フィールド オブジェクトの非静的フィールド 12.16.2.2 列 列見出しを右クリックすると、ウィンドウに表示される列を変更できます。セクション 12.16.4「[Change Visible Columns] ダイアログ」を参照してください。 12.16.2.3 操作 各種操作はウィンドウ左側のボタンで行います。 表 12-28: [Watches] ウィンドウのアイコン ボタン 操作 トグルボタン : - メンバー フィールドの詳細名 ( 正規の名前 ) を表示します。 - メンバー フィールドの要約名 ( 相対的な名前 ) を表示します。 リストファイルからウォッチをインポートします。右クリックしてインポート 方法を選択します。 全てのウォッチをリストファイルにエクスポートします。 [Value] フィールドの既定値数値フォーマットを設定します。 DS50002027D_JP - p.266 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 12.16.3 [Watches] メニュー [Watches] ウィンドウの ( 行ではなく ) 空いた場所で右クリックすると、基本的な機 能を備えた [Watches] ウィンドウ メニューが表示されます。 表 12-29: [Watches] ウィンドウ メニュー – ウィンドウ メニュー項目 説明 New Watch ウォッチに新しいシンボルを追加します。 New Runtime Watch* MPLAB REAL ICE インサーキット エミュレータのみ 選択したシンボルに新しいランタイム ウォッチを追加します。 Export All Watches to List 観察するシンボルに関する情報をファイル (.xwatch) にエクス File ポートします。 Delete All [Watches] ウィンドウから観察対象シンボルを全て削除します。 * コード内のシンボルを右クリックして、[New Watch] または [New Runtime Watch] に追加す る事もできます。 行を右クリックすると、その他の機能を備えた [Watches] ウィンドウ メニューが表示 されます。表示されるメニュー項目は、選択した行がシンボルかどうか、そして使う デバッグツールによって異なります。 表 12-30: [Watches] ウィンドウ メニュー – 行 メニュー項目 説明 New Watch ウォッチに新しいシンボルを追加します。 New Runtime Watch MPLAB REAL ICE インサーキット エミュレータのみ 選択したシンボルに新しいランタイム ウォッチを追加します。 Run Time Update Interval MPLAB REAL ICE インサーキット エミュレータのみ シンボル値の更新速度を指定します。 [No Delay] を選択すると、コンピュータが処理できる最大速度で 更新します。実行時データにエラーが発生する場合、遅延を追加 して更新速度を緩めます。 Export Selected Watches 観察するシンボルに関する情報をファイル (.xwatch) にエクス to List File ポートします。 <Shift>+ クリック ( 連続した複数行を選択 ) または <Ctrl>+ クリック ( 複数行を個別に選択 ) を使って複数の行を選択できます。 Export Data ウォッチデータを CSV ファイルにエクスポートします。または、 文字列リテラルとしてエクスポートします。 Delete 選択したシンボル行をウォッチリストから削除します。 行を選択して <Delete> キーを押しても削除できます。 Delete All [Watches] ウィンドウから観察対象シンボルを全て削除します。 Display Value Column as 選択した行のシンボルの値を、フォーマット一覧のうちの 1 つで 表示します。 User Defined Size プログラムメモリのシンボルのサイズを一覧から指定します。 2016 Microchip Technology Inc. DS50002027D_JP - p.267 MPLAB® X IDE ユーザガイド 12.16.4 [Change Visible Columns] ダイアログ [Watches] ウィンドウに表示される列は変更できます。列見出しを右クリックすると、 [Change Visible Columns] ダイアログが開きます。 表 12-31: [Change Visible Columns] の項目 ダイアログ項目 チェックを入れた場合 Name 列の名前を表示します。チェックを外す事はできません。 Address 変数のメモリアドレスを表示します。 Binary バイナリ形式の値を表示します。 Char 文字形式の値を表示します。 Decimal 10 進形式の値を表示します。 Hexadecimal 16 進形式の値を表示します。 Type ウォッチ変数の型を表示します。 Value ウォッチ式の値を表示します (16 進 )。 12.16.5 [Fractional Integer Properties] ダイアログ このダイアログの目的は、dsPIC および PIC32 デバイスがサポートする全ての固定小 数点演算モードを評価しやすくする事です。ポップアップ メニュー項目 [Display Value Column as] > [Fractional Integer] からこのダイアログを表示してこの機能を選 択します。その後、必要に応じて [Display Value Column as] > [Fractional Properties] を選択します。 表 12-32: [Fractional Properties] ダイアログの項目 ダイアログ項目 説明 Variable 変数の名前です ( 参照用 )。 N* 整数を表現するために利用可能な総ビット数です。 Qm 固定小数点データ形式の整数部です。 「m」は整数を指定するのに使うビット数を表します。 Qn 固定小数点データ形式の小数部です。 「n」は小数を指定するのに使うビット数を表します。 Signed* チェックを入れると、1 ビットを使って符号付き値を表します。 Slider スライダをクリックおよびドラッグして、固定小数点値の計算に 適用する固定小数点の位置 (Qm 対 Qn) を選択します。 * 変数タイプが未知の場合、これらの項目は編集可能です。 DS50002027D_JP - p.268 2016 Microchip Technology Inc. MPLAB X IDE のウィンドウとダイアログ 図 12-9: 2016 Microchip Technology Inc. [Fractional Properties] ダイアログ DS50002027D_JP - p.269 MPLAB® X IDE ユーザガイド 12.17 ウィザード ウィンドウ MPLAB X IDE は各種の NetBeans ウィンドウに加えて、組み込み開発用に一部のウィン ドウをカスタマイズするか、専用に作成しています。 • [New Project] ウィザード – セクション 4.2「新規プロジェクトの作成」参照 • [New File] ウィザード – セクション 4.9「ファイルの新規作成」参照 • [Import Image File] ウィザード – セクション 5.3.3「[Import Image File] ウィザード」 参照 DS50002027D_JP - p.270 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 第 13 章 NetBeans のウィンドウとダイアログ 13.1 はじめに MPLAB X IDE では、NetBeans のウィンドウと MPLAB X IDE 専用のウィンドウを組 み合わせて使います。各種ダイアログは、メニューから対応する項目を選択すると開 きます。これらのダイアログも、ウィンドウと同様に NetBeans と MPLAB X IDE の ダイアログ両方です。 ここでは、NetBeans のウィンドウとダイアログを解説し、併せて文書への参照情報 も示します。MPLAB X IDE 専用のウィンドウとダイアログは第 12 章「MPLAB X IDE のウィンドウとダイアログ」を参照してください。 • NetBeans ウィンドウとウィンドウ メニュー • NetBeans ダイアログ 13.2 NetBeans ウィンドウとウィンドウ メニュー NetBeans ウィンドウの説明は、NetBeans ヘルプまたはウェブ上の文書に記載されて います (「序章」参照 )。ウィンドウに関するヘルプを開くには、[Window] タブを クリックで選択してから <F1> キーを押します。必要なヘルプが見つからない場合、 [Help] > [Help Contents] を選択し、ヘルプファイルの [Search] タブをクリックすると、 そ の ウ ィ ン ド ウ の 情 報 を 検 索 で き ま す。あ る い は、NetBeans ヘ ル プ ト ピ ッ ク [Managing IDE Windows] を参照してください。 大部分のウィンドウは、セクション 11.2.11「[Window] メニュー」に記載したメニュー から開く事ができます。 ウィンドウはドッキング / ドッキング解除でき ([Window] タブを右クリック )、その ウィンドウ専用のポップアップ メニュー ( またはコンテクスト メニュー ) から [Fill]、 [Goto]、[Edit Cells] 等の項目を選択できます。コンテクスト メニューは、ウィンドウ 内またはウィンドウ内のいずれかのアイテム上で右クリックすると開きます。これら のメニュー項目の大部分は、デスクトップ メニューバーからも利用できます ( セク ション 11.2「メニュー」参照 )。 ウィンドウのプロパティを設定するには、[Tools] > [Options](Mac OS X の場合、 [mplab_ide] > [Preferences]) を 選 択 し、[Miscellaneous] ボ タ ン を ク リ ッ ク し、 [Appearance] タブを開きます。 13.3 NetBeans ダイアログ NetBeans ダイアログの説明は、NetBeans ヘルプに記載されています。ダイアログ上 の [Help] ボタンをクリックすると、そのダイアログに関するヘルプが開きます。この ボタンがない場合、<F1> キーを押します。必要なヘルプが見つからない場合、[Help] > [Help Contents] を選択し、ヘルプファイルの [Search] タブをクリックすると、そのダ イアログの情報を検索できます。 大部分のダイアログは、セクション 11.2「メニュー」に記載したメニューから開く事 ができます。 2016 Microchip Technology Inc. DS50002027D_JP - p.271 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.272 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 補遺 A コンフィグレーション設定のまとめ A.1 はじめに 本章では、コード内でコンフィグレーション ビットを設定する方法を、各種の言語 ツールと関連デバイス向けに例を示しながら説明します。コンフィグレーション ビット 設定の詳細は言語ツールのマニュアルを参照してください。一部の言語ツールには、 デバイスの全てのコンフィグレーション設定の一覧を記載したコンフィグレーション 設定マニュアルが用意されています。それ以外の言語ツールに関しては、デバイスの マクロ用ヘッダファイルを参照してください。 コンフィグレーション ビットを設定するもう 1 つの方法は、[Configuration Memory] ウィンドウを使ってビットを設定し、[Generate Source Code to Output] をクリック する事です。セクション 4.22.4「コンフィグレーション ビットの設定」を参照して ください。 8 ビットおよび 16 ビットデバイス向けの MPLAB Code Configurator (MCC) と 32 ビット デバイス向けの MPLAB Harmony は、コンフィグレーション ビットとプロジェクト コードの生成に使えるツールです。これらのツールの詳細は Microchip 社のウェブ サイトを参照してください。 • • • • • • • • A.2 XC ツールチェーン MPASM ツールチェーン C18 ツールチェーン HI-TECH® PICC™ ツールチェーン HI-TECH® PICC-18™ ツールチェーン ASM30 ツールチェーン C30 ツールチェーン C32 ツールチェーン XC ツールチェーン コードの移植性を最大限に高めるには、以下の各文書の「CCI (Common Compiler Interface)」の章、config macro のセクションを参照してください。 •『MPLAB XC8 C Compiler User’s Guide』(DS50002053) または対応するヘルプ ファイル •『MPLAB XC16 C Compiler User’s Guide』(DS50002071) または対応するヘルプ ファイル •『MPLAB XC32 C/C++ コンパイラ ユーザガイド』(DS50001686) または対応する ヘルプファイル 2016 Microchip Technology Inc. DS50002027D_JP - p.273 MPLAB® X IDE ユーザガイド A.3 MPASM ツールチェーン デバイス コンフィグレーション ビットの設定には、2 種類のアセンブラ ディレクティブ (__config と config) を使います。同一コード内で __config と config の両方を 使う事はできません。 A.3.1 __config ディレクティブ「__config」は PIC10/12/16 MCU 用に使います。PIC18 MCU (PIC18FXXJ を除く ) にも使えますが、 「config」 を推奨します。 以下に構文を示します。 __config expr ; コンフィグレーション ワードが 1 つだけの場合 または __config addr, expr ; コンフィグレーション ワードが複数の場合 addr: コンフィグレーション ワードのアドレスです。リテラルでも指定できますが、通常 はマクロにより表現します。 Note: マクロは、レジスタ番号順 ( 昇順 ) に列記する必要があります。 expr: 指定したコンフィグレーション ビットに設定する値を表現する式です。リテラルで も指定できますが、通常はマクロまたは複数マクロの論理積 (AND) により表現します。 マクロはデバイス インクルード ファイル (*.inc) で定義されます。Windows OS の 場合、このファイルは以下の既定値フォルダに格納されます。 C:\Program Files\Microchip\MPLABX\mpasmx ディレクティブの大文字と小文字は区別されないため、__CONFIG と __config の どちらでも使えます。マクロの大文字 / 小文字は、ヘッダファイル内の記述に合わせ る必要があります。 例 – PIC10/12/16 MCU の場合 #include p16f877a.inc ;Set oscillator to HS, watchdog time off, low-voltage prog. off __CONFIG _HS_OSC & _WDT_OFF & _LVP_OFF 例 – PIC18 MCU の場合 #include p18f452.inc ;Oscillator switch enabled, RC oscillator with OSC2 as I/O pin. __CONFIG _CONFIG1, _OSCS_OFF_1 & _RCIO_OSC_1 ;Watch Dog Timer enable, Watch Dog Timer PostScaler count - 1:128 __CONFIG _CONFIG3, _WDT_ON_3 & _WDTPS_128_3 A.3.2 config ディレクティブ「config」は、PIC18 MCU (PIC18FXXJ を含む ) 用に使います。以下 に構文を示します。 config setting=value [, setting=value] setting: コンフィグレーション ビットを表現するマクロです。 value: 指定したコンフィグレーション ビットに設定する値を表現するマクロです。 カンマで区切る事により、一行で複数の設定を定義できます。1 つのコンフィグ レーション バイトの設定を複数行に分けて定義する事もできます。 マクロはデバイス インクルード ファイル (*.inc) で定義されます。Windows OS の 場合、このファイルは以下の既定値フォルダに格納されます。 C:\Program Files\Microchip\MPLABX\mpasmx DS50002027D_JP - p.274 2016 Microchip Technology Inc. コンフィグレーション設定のまとめ ディレクティブの大文字と小文字は区別されないため、__CONFIG と __config の どちらでも使えます。マクロの大文字 / 小文字は、ヘッダファイル内の記述に合わせ る必要があります。 例 – PIC18 MCU の場合 #include p18f452.inc ;Oscillator switch enabled, RC oscillator with OSC2 as I/O pin. CONFIG OSCS=ON, OSC=LP ;Watch Dog Timer enable, Watch Dog Timer PostScaler count - 1:128 CONFIG WDT=ON, WDTPS=128 A.4 C18 ツールチェーン ディレクティブ「#pragma config」は、アプリケーションで使うデバイスに固有 のコンフィグレーション設定 ( コンフィグレーション ビット ) を指定します。 # pragma config setting-list setting-list: 1 つまたはカンマで区切った複数の「setting-name = value-name」 マクロペアです。 マクロはデバイス ヘッダファイル (*.h) で定義されます。Windows OS の場合、この ファイルは以下の既定値フォルダに格納されます。 C:\program files\microchip\mplabc18\vx.xx\.h pragma の大文字と小文字は区別されないため、#PRAGMA CONFIG と #pragma config のどちらでも使えます。マクロの大文字 / 小文字は、ヘッダファイル内の記述 に合わせる必要があります。 例 #include <p18cxxx.h> /*Oscillator switch enabled, RC oscillator with OSC2 as I/O pin.*/ #pragma config OSCS = ON, OSC = LP /*Watch Dog Timer enable, Watch Dog Timer PostScaler count - 1:128*/ #pragma config WDT = ON, WDTPS = 128 2016 Microchip Technology Inc. DS50002027D_JP - p.275 MPLAB® X IDE ユーザガイド A.5 HI-TECH® PICC™ ツールチェーン htc.h ヘッダファイル内で定義されているマクロを使って、PIC10/12/16 MCU のデバ イス コンフィグレーション ワードを設定します : __CONFIG(x); x: 指定したコンフィグレーション ビットに設定する値を表現する式です。リテラルでも 指定できますが、通常はマクロまたは複数マクロの論理積 (AND) により表現します。 マクロはデバイス ヘッダファイル (*.h) で定義されます。Windows OS の場合、この ファイルは以下の既定値フォルダに格納されます。 C:\Program Files\HI-TECH Software\PICC\vx.xx\include version は、コンパイラのバージョン番号です。 複数のコンフィグレーション ワードアドレスを持つデバイスでは、__CONFIG() を 呼び出すたびに次のコンフィグレーション ワードを変更します。 マクロの大文字 / 小文字は、対応するヘッダファイル内の記述に合わせる必要があり ます。htc.c に対しては大文字の __CONFIG() を使います (__config() は使えま せん )。 PICC の例 #include <htc.h> __CONFIG(WDTDIS & XT & UNPROTECT); // Program config. word 1 __CONFIG(FCMEN); // Program config. word 2 A.6 HI-TECH® PICC-18™ ツールチェーン htc.h ヘッダファイルで定義されているマクロを使って、PIC18 MCU のデバイス コン フィグレーション ワードを設定します : __CONFIG(n,x); 上記式において n: コンフィグレーション レジスタ番号です。 x: 指定したコンフィグレーション ビットに設定する値を表現する式です。リテラルでも 指定できますが、通常はマクロまたは複数マクロの論理積 (AND) により表現します。 マクロはデバイス ヘッダファイル (*.h) で定義されます。Windows OS の場合、この ファイルは以下の既定値フォルダに格納されます。 C:\Program Files\HI-TECH Software\PICC\vx.xx\include version は、コンパイラのバージョン番号です。 マクロの大文字 / 小文字は、対応するヘッダファイル内の記述に合わせる必要があり ます。htc.c に対しては大文字の __CONFIG() を使います (__config() は使えま せん )。 PICC-18 の例 #include <htc.h> //Oscillator switch enabled, RC oscillator with OSC2 as I/O pin. __CONFIG(1, LP); //Watch Dog Timer enable, Watch Dog Timer PostScaler count - 1:128 __CONFIG(2, WDTEN & WDTPS128); DS50002027D_JP - p.276 2016 Microchip Technology Inc. コンフィグレーション設定のまとめ A.7 ASM30 ツールチェーン デバイス インクルード ファイルで定義されているマクロを使ってコンフィグレー ション ビットを設定します。 config __reg, value __reg: コンフィグレーション レジスタ名を表現するマクロです。 value: 指定したコンフィグレーション ビットに設定する値を表現する式です。リテラル でも指定できますが、通常はマクロまたは複数マクロの論理積 (AND) により表現 します。 マクロはデバイス インクルード ファイル (*.inc) で定義されます。Windows OS の 場合、このファイルは以下の既定値フォルダに格納されます。 C:\Program Files\Microchip\MPLAB ASM30 Suite\Support\device\inc device は、選択した 16 ビットデバイスの略称です (PIC24H、dsPIC33F)。 マクロの大文字 / 小文字は、対応するヘッダファイル内の記述に合わせる必要があり ます。例えば、ヘッダファイルで小文字の config が使われている場合、大文字の CONFIG は使えません。 詳 細 は『MPLAB® Assembler, Linker and Utilities for PIC24 MCUs and dsPIC® DSCs User’s Guide』を参照してください。 例 .include "p30fxxxx.inc" ;Clock switching off, Fail-safe clock monitoring off, ; Use External Clock config __FOSC, CSW_FSCM_OFF & XT_PLL16 ;Turn off Watchdog Timer config __FWDT, WDT_OFF A.8 C30 ツールチェーン デバイス コンフィグレーション ビットの設定には2種類のコンパイラマクロ(PIC24F MCU 用と dsPIC30F/dsPIC33F/PIC24H 用 ) を使います。 A.8.1 PIC24F のコンフィグレーション設定 デバイスヘッダ ファイルで定義されているマクロを使ってコンフィグレーション ビットを設定します。 _confign(value); n: コンフィグレーション レジスタ番号です。 value: 指定したコンフィグレーション ビットに設定する値を表現する式です。リテラル でも指定できますが、通常はマクロまたは複数マクロの論理積 (AND) により表現 します。 マクロはデバイス ヘッダファイル (*.h) で定義されます。Windows OS の場合、この ファイルは以下の既定値フォルダに格納されます。 C:\Program Files\Microchip\MPLAB C30\support\PIC24F\h マクロの大文字 / 小文字は、対応するヘッダファイル内の記述に合わせる必要があり ます。例えば、ヘッダファイルで大文字の _CONFIG1 が使われている場合、小文字の _config1 は使えません。 2016 Microchip Technology Inc. DS50002027D_JP - p.277 MPLAB® X IDE ユーザガイド 例 – PIC24F MCU の場合 #include “p24Fxxxx.h” //JTAG off, Code Protect off, Write Protect off, COE mode off, WDT off _CONFIG1( JTAGEN_OFF & GCP_OFF & GWRP_OFF & COE_OFF & FWDTEN_OFF ) //Clock switching/monitor off, Oscillator (RC15) on, // Oscillator in HS mode, Use primary oscillator (no PLL) _CONFIG2( FCKSM_CSDCMD & OSCIOFNC_ON & POSCMOD_HS & FNOSC_PRI ) A.8.2 dsPIC30F/33F/PIC24H のコンフィグレーション設定 デバイスヘッダ ファイルで定義されているマクロを使ってコンフィグレーション ビットを設定します。 _reg(value); _reg: コンフィグレーション レジスタ名を表現するマクロです。 value: 指定したコンフィグレーション ビットに設定する値を表現する式です。リテラルでも 指定できますが、通常はマクロまたは複数マクロの論理積 (AND) により表現します。 マクロはデバイス ヘッダファイル (*.h) で定義されます。Windows OS の場合、この ファイルは以下の既定値フォルダに格納されます。 C:\Program Files\Microchip\MPLAB C30\support\device\h device は、選択した 16 ビットデバイスの略称です (PIC24H、dsPIC30F、dsPIC33F)。 マクロの大文字 / 小文字は、対応するヘッダファイル内の記述に合わせる必要があり ます。例えば、ヘッダファイルで大文字の _FOSC が使われている場合、小文字の _fosc は使えません。 詳細は『MPLAB® C Compiler for PIC24 MCUs and dsPIC® DSCs User’s Guide』 を参照してください。 例 – dsPIC30F DSC #include “p30fxxxx.h” //Clock switching and failsafe clock monitoring off, // Oscillator in HS mode _FOSC(CSW_FSCM_OFF & HS); //Watchdog timer off _FWDT(WDT_OFF); //Brown-out off, Master clear on _FBORPOR(PBOR_OFF & MCLR_EN); 例 – dsPIC33F/PIC24H #include “p33fxxxx.h” // Use primary oscillator (no PLL) _FOSCSEL(FNOSC_PRI); //Oscillator in HS mode _FOSC(POSCMD_HS); //Watchdog timer off _FWDT(FWDTEN_OFF); //JTAG off _FICD(JTAGEN_OFF); DS50002027D_JP - p.278 2016 Microchip Technology Inc. コンフィグレーション設定のまとめ A.9 C32 ツールチェーン ディレクティブ「#pragma config」は、アプリケーションで使うデバイスに固有 のコンフィグレーション設定 ( コンフィグレーション ビット ) を指定します : # pragma config setting-list 上記式において setting-list: 1 つまたはカンマで区切った複数の「setting-name = value-name」 マクロペアです。 マクロはデバイス ヘッダファイル (*.h) で定義されます。Windows OS の場合、この ファイルは以下の既定値フォルダに格納されます。 C:\Program Files\Microchip\MPLAB C32\pic32mx\include\proc pragma の大文字と小文字は区別されないため、#PRAGMA CONFIG と #pragma config のどちらでも使えます。マクロの大文字 / 小文字は、ヘッダファイル内の記述 に合わせる必要があります。 詳細は『MPLAB® C Compiler for PIC32 MCUs User’s Guide』を参照してください。 例 #include “p32xxxx.h” //Enables the Watchdog Timer, // Sets the Watchdog Postscaler to 1:128 #pragma config FWDTEN = ON, WDTPS = PS128 //Selects the HS Oscillator for the Primary Oscillator #pragma config POSCMOD = HS 2016 Microchip Technology Inc. DS50002027D_JP - p.279 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.280 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 補遺 B IDE 外部での作業手順 B.1 はじめに MPLAB X IDE は、組み込みシステム向けアプリケーションの書き込み、デバッグ、 リリースを支援するように設計されています。しかし、IDE 外部でのコード開発が必 要な場合があります。 本章の方法に従うと、MPLAB X IDE の外部でコードをビルドできます。このコード をデバッグする場合、MPLAB X IDE のプロジェクトにコードをインポートできます。 詳細はセクション 5.3「プリビルド プロジェクト」とセクション 5.4「読み込み可能 なプロジェクト、ファイル、シンボル」を参照してください。 または、デバッグ情報を使ってコードをコンパイルし、コマンドライン Microchip Debugger (MDB) を使ってコードをデバッグする事もできます。MDB は MPLAB X IDE に付属しています。MDB の詳細は <MPLAB X IDE installation>/docs フォ ルダの『Microchip Debugger (MDB) ユーザガイド』(DS50002102) を参照してくだ さい。 • • • • MPLAB X IDE 外部でのデバッグのためのコンパイル MPLAB X IDE の外部でのプロジェクトのビルド MPLAB X IDE 外部での Makefile の作成 リビジョン管理システムの使い方 2016 Microchip Technology Inc. DS50002027D_JP - p.281 MPLAB® X IDE ユーザガイド B.2 MPLAB X IDE 外部でのデバッグのためのコンパイル MPLAB X IDE 外部でのデバッグ向けにコンパイルするには、コンパイラとリンカに 正しいパラメータを渡し、ツールに必要な領域を確保する必要があります。これらの パラメータ値は、デバッグツールとコンパイラによって異なります。また、これらの 領域を確保する方法が、コンパイラのバージョンで異なる場合があります。 MPLAB X IDE は、コンパイラ / アセンブラ / リンカに渡す引数を自動的に判断できます。 デバッグのための領域を確保する方法を調べる最善の方法は、同じデバイス、デバッグ ツール、コンパイラを使って IDE 内で小さなプロジェクトを作成する事です。その際、 同じコンパイラの複数バージョンを IDE がサポートできる事に注意します。そのため、 IDE でプロジェクトを作成する際、正しいコンパイラ バージョンを選択するように注 意します。 プロジェクト作成後、そのプロジェクトをデバッグ用にビルドします。デバッグ用の ビルドステップを表示した [Output] ウィンドウのテキストを保存します。次に、プロ ジェクトを再ビルド ( デバッグ用ではありません ) し、量産用のビルドステップを表 示した [Output] ウィンドウのテキストを保存します。 コンパイラ / アセンブラ / リンカに 渡された 2 組の命令を比較します。 図 B-1: ビルドアイコン メニュー [Output] ウィンドウの相違点の例を以下に挙げます。 • __DEBUG マクロで呼び出されるコンパイラ / アセンブラ / リンカ • __MPLAB_DEBUG マクロで呼び出されるコンパイラ / アセンブラ / リンカ • __ICD2_RAM または -mreserves で呼び出されるリンカこれら 2 つは互いに排他 的です。つまり、リンカは 2 つのどちらかで呼び出された場合、他方では呼び出さ れません。 • 使用デバッグツール名で呼び出されるコンパイラ / アセンブラ / リンカ これは全てを網羅したリストではありません。 DS50002027D_JP - p.282 2016 Microchip Technology Inc. IDE 外部での作業手順 B.3 MPLAB X IDE の外部でのプロジェクトのビルド MPLAB X IDE は、ビルドツールとして GNU Make を使います。MPLAB X IDE と一 緒に GNU Make もインストールされます。プログラムの保存場所は以下の通りです。 • Windows 32 ビット OS - C:\Program Files\Microchip\MPLABX\ vx.xx\gnuBins\GnuWin32\bin • Windows 64 ビット OS - C:\Program Files (x86)\Microchip\MPLABX\ vx.xx\gnuBins\GnuWin32\bin • Linux 32/64 OS – /opt/microchip/mplabx/vx.xx/mplab_ide/bin • Mac OS X – /Applications/microchip/mplabx/vx.xx/mplab_ide.app/ Contents/Resources/mplab_ide/bin MPLAB X IDE は、make を含むフォルダを自動的に専用の PATH 変数に追加します。 IDE 外でビルドする場合、このフォルダを PATH 環境変数に追加する必要があります。 既定値のコンフィグレーションでビルドする場合、MPLAB X IDE プロジェクト フォ ルダの Makefile を直接呼び出す事ができます。 コマンド 説明 $ make clean 中間オブジェクトと最終イメージを全て削除します。 $ make 量産イメージ (HEX ファイル ) を作成します。 $ make TYPE_IMAGE=DEBUG_RUN デバッグイメージ (COF/ELF ファイル ) を作成します。 プロジェクトに複数のコンフィグレーションがある場合、以下のコマンドを使いま す。 コマンド 説明 $ make -f Makefile CONF=Configuration clean Configuration というコンフィグレーションの中 間オブジェクトと最終イメージを全て削除します。 $ make -f Makefile CONF=Configuration Configuration というコンフィグレーションの量 産イメージ (HEX ファイル ) を作成します。 $ make -f Makefile CONF=Configuration TYPE_IMAGE=DEBUG_RUN Configuration というコンフィグレーションの デバッグイメージ (COF/ELF ファイル ) を作成します。 既定値のイメージ名は以下の通りです (MPLAB X IDE フォルダ基準 )。 dist/$CONF_NAME/production/$PROJ_NAME.production.hex dist/$CONF_NAME/debug/$PROJ_NAME.debug.cof( または elf) 2016 Microchip Technology Inc. DS50002027D_JP - p.283 MPLAB® X IDE ユーザガイド B.4 MPLAB X IDE 外部での Makefile の作成 MPLAB X IDE は、プロジェクトをビルドするのに GNU Make を使います。本書では、 IDE の外で MPLAB X IDE プロジェクト向けに Makefile を再生成する方法と、ファイル を再生成しないで Makefile の挙動をカスタマイズ ( プロセッサの変更、機能の追加等、 Makefileの動作を変更)する方法を説明します。本書では、コマンドラインからMakefile の make を実行する方法を説明します。 Note: B.4.1 Makefile を IDE のプロジェクトの値と一致させる最も安全な方法は、IDE で再生成する方法と、後述する prjMakefilesGenerator ユーティリティ を使う方法のどちらかです。IDE は、プロジェクトが開かれた際プロジェ クトのメイン コンフィグレーション向けに Makefile を再生成します。 しかし、Makefile の生成後、Makefile の挙動を変更するその他のカスタマ イズ手順が役に立つ場合があります。本書では、これらの手順を説明します。 Makefile の作成 コンパイラの設定が変わった場合またはファイルが追加 / 削除された場合、MPLAB X IDE は必要に応じて Makefile を作成します。また、prjMakefilesGenerator ユー ティリティを使う事で、IDE の外部で Makefile を作成する事もできます。このユーティ リティはバッチファイル (Windows 向け ) またはシェルスクリプト (Linux および Mac OS X 向け ) です。 このユーティリティを使うと、 IDE が使う情報と同じもの ( 各 MPLAB X IDE プロジェクトの $PROJECT_DIR/nbproject/configurations.xml ファイル に保存されている ) を使って Makefile を再作成できます。最初のセクションでは、IDE 外部での Makefile の作成方法を説明します。残りのセクションでは、Makefile を再生成 しないで、Makefile の挙動を変更し追加のカスタマイズを行う方法を説明します。後者 のセクションは、IDE で作成した Makefile または prjMakefilesGenerator で作成し た Makefile( 両者は同じ筈 ) に適用します。 メインの Makefile ファイルは $PROJECT_DIR/Makefile と呼びます。これは、IDE がプロジェクトを作成した時に作成されます。これはユーザが変更できます。ター ゲットの中には .build-pre のようにユーザが実装できるものがあります。このファ イ ル は 再 生 成 さ れ る 事 は あ り ま せ ん。そ の 他 の Makefile は 全 て、IDE ま た は prjMakefilesGenerator によって再生成されます。これらのフォーマットは以下 の通りです。 $PROJECT_DIR/nbproject/Makefile*.mk これらの nbproject/Makefile* ファイルは、リビジョン管理にコミットしない事 を推奨します。その代わり、IDE または prjMakefilesGenerator を使って必要に 応じてこれらのファイルを再作成します。詳細はセクション 5.20「ソースコードの管 理」を参照してください。 B.4.2 prjMakefilesGenerator prjMakefilesGenerator ユーティリティは以下で入手できます。 • Windows の場合 : $inst_mplabx\mplab_ide\bin\prjMakefilesGenerator.bat • Linux OS の場合 : $inst_mplabx/mplab_ide/bin/prjMakefilesGenerator.sh • Mac OS X の場合 : $inst_mplabx/mplab_ide.app/Contents/Resources/mplab_ide/bin/ prjMakefilesGenerator.sh DS50002027D_JP - p.284 2016 Microchip Technology Inc. IDE 外部での作業手順 このユーティリティは nbproject/Makefile* ファイルを再生成します。引数を指 定せずにこのユーティリティを実行した場合、以下のヘルプが表示されます。 $ ./prjMakefilesGenerator.sh No project has been specified.There should be at least one.Nothing to do. Invalid arguments.Usage is: prjMakefilesGenerator [-help] [-v] [-mplabx-userdir=<path>] [project_path[@config_name]*]+ <project_path> - path to the MPLAB-X project in the file system [config_name] - (optional) name of a build configuration to generate the makefile for. If missing, the makefiles are generated for all the build configurations. -help - displays this help screen. -v - verbose processing. -mplabx-userdir=<path> - the MPLAB-X user directory (useful if you run MPLAB-X with --userdir). Example: prjMakefilesGenerator /home/usr/prj1@default@custom /home/usr/prj2 /home/usr/prj3@xc16 The tool will generate the makefiles for: 1.The configurations named 'default' and 'custom' of the project named 'prj1' 2.All the configurations of the project named 'prj2' (all because none in particular is specified) 3.The configuration named 'xc16' of the project named 'prj3' このユーティリティ実行するため、その中に Makefile を再生成する MPLAB X プロ ジェクト フォルダを、引数として渡します。再生成するコンフィグレーションを指定 する事もできます。コンフィグレーションを渡さない場合 (@confName なし )、全て のコンフィグレーションに対して全ての Makefile が再作成されます。 パラメータとして -mplabx-userdir=<path> を渡す事を推奨します。<path> の 値は、IDE の [Help] > [About] ダイアログで「User directory:」の右の欄に表示されて いる値です。 図 B-2: [Help] > [About] ダイアログ このダイアログを使うと、IDE と同じコンパイラ一覧に prjMakefilesGenerator が確実にアクセスできます。 2016 Microchip Technology Inc. DS50002027D_JP - p.285 MPLAB® X IDE ユーザガイド B.4.3 Makefile の説明 前述のようにメインの Makefile は $PROJEC_DIR/Makefile に格納されています。 これは、IDE が呼び出す Makefile です。プロジェクトの各コンフィグレーションには、 Makefile-local-$conf.mk と Makefile-$conf.mkが存在します ($confはコン フィグレーション名です )。メインの $PROJEC_DIR/Makefile ファイルは、これらの コ ン フ ィ グ レ ー シ ョ ン 固 有 の フ ァ イ ル で make を 再 度 呼 び 出 し ま す 。 Makefile-local-$conf.mk は、Makefile が生成されたホストに関連するマクロ値 を収めています。別のシステムで Makefile-$conf.mk を機能させる場合、このファ イルを保存しない事も選択できます。その場合、通常はMakefile-local-$conf.mk 内にある全ての値を指定して make を呼び出し、make を実行するホストと一致させ る事ができます。この方法は後述します。 prjMakefilesGenerator を使ってファイルを再作成すると、 Makefile-local-$conf.mk がその時点で正しいものとなり、make を実行したマシン 上で機能するようになります。 B.4.4 Make 環境 make 処理は、OS ネイティブのコマンドラインから実行する必要があります。これは、 Windows では cmd.exe にあたり、Linux/Mac OS X では任意のシェルにあたります。 実行する make は GNU Make です。make を実行した際に作成されるイメージには、 以下の 2 タイプがあります。 1. 量産イメージ 2. デバッグイメージ 既定値では、make 処理を実行すると量産イメージが作成されます。make 処理で デバッグイメージを作成するには、make のコマンドラインに以下を追加する必要が あります。 TYPE_IMAGE=DEBUG_RUN デバッグイメージは、MPLAB X IDE がデバッグ セッションを実行するのに必要なも のを全て含んでいます。この情報はツールによって異なります。Makefile に書き込ま れたビルド対象ツールの情報は、この時点では変更できません。この情報は、IDE で 選択した値に基づいて各プロジェクトの各コンフィグレーション向けに Makefile を作成 した際、Makefile 内にハードコードされています。 B.4.4.1 Windows の Make 環境 make とその他の GNU ツール ( 例 : rm) は、特定のバージョンを使う必要があります。 MPLAB X IDE をインストールする時に、以下のフォルダが作成されます。 $InstallDir\gnuBins\GnuWin32\bin 上記の $InstallDir は以下のどちらかです。 • C:\Program Files\Microchip\MPLABX\vx.xx (32 ビットシステム ) • C:\Program Files (x86)\Microchip\MPLABX\vx.xx (64 ビットシステム ) このフォルダには gnuWin32 ツールが収められています。make 処理を実行するには これらのツールを使う必要があります。Cygwin またはその他の GNU ポートは使えま せん。 make 処理を実行する前に、コマンドプロンプトから以下を入力して、上記パスを PC の %PATH% 環境変数に設定しておく必要があります。 c:> set PATH=C:\Program Files\Microchip\MPLABX\vx.xx\gnuBins\GnuWin32\ bin;%PATH% DS50002027D_JP - p.286 2016 Microchip Technology Inc. IDE 外部での作業手順 B.4.4.2 Mac OS X の Make 環境 Mac コンピュータは、GNU Make 実行ファイルを除く全ての必要なツールをあらか じめ備えています。以下の 2 つの選択肢があります。 1. まず MPLAB X IDE をインストールする ( これにより以下のファイルが作成され ます )。 /Applications/microchip/mplabx/vx.xx/mplab_ide.app/ Contents/Resources/mplab_ide/bin/make 次に、make 処理を実行する前に、Make を含むフォルダを以下のようにユーザ パスに追加する。 export PATH=/Applications/microchip/mplabx/vx.xx/ mplab_ide.app/Contents/Resources/mplab_ide/bin:$PATH 2. X ツールをインストールする ( このツールで /usr/bin/make に make をインス トールします )。 B.4.4.3 Linux の Make 環境 以下の 2 つの選択肢があります。 1. MPLAB X IDE (v2.10 以降 ) をインストールする ( これにより以下のファイルが作 成されます )。 /opt/microchip/mplabx/vx.xx/mplab_ide/bin/make /opt/microchip/mplabx/vx.xx/mplab_ide/bin をユーザパスに追加する。 Note: v2.10 より前のバージョンの MPLAB X IDE には、make は含まれてい ませんでした。従来は、ユーザが自分で make をインストールする必 要がありました。v2.10以降、make はMPLAB X IDEに付属しています。 2. 代表的な Linux ディストリビューションに含まれている GNU Make を使う。 Make が利用できる事を試すには、以下を実行する。 $ which make /usr/bin/make Make がインストールされていない場合、使用中のシステムのパッケージ マネー ジャを使ってインストールする。 Note: 2016 Microchip Technology Inc. 64 ビット Linux ディストリビューションを実行中の場合、32 ビット ライブラリをインストールしておく必要があります。Microchip 社の コンパイラは 32 ビット アプリケーションであるためです。 DS50002027D_JP - p.287 MPLAB® X IDE ユーザガイド B.4.5 Makefile のインターフェイス 指定したコンフィグレーションのターゲット ファイルを全て削除する方法 1. カレントフォルダを $PROJECT_DIR に移動する。 2. make -f nbproject/Makefile-debugOption.mk SUBPROJECTS= .clean-conf これにより debugOption のコンフィグレーションのターゲット ファイルに対して クリーンが実行されます。 全てのコンフィグレーションのターゲット ファイルを全て削除する方法 1. カレントフォルダを $PROJECT_DIR に移動する。 2. make clobber 指定したコンフィグレーションの Makefile を実行する方法 1. カレントフォルダを $PROJECT_DIR に移動する。 2. 環境変数を、make 処理のオーバーライド値に設定する。 3. make -f nbproject/Makefile-$CONFIGURATION_NAME.mk SUBPROJECTS= .build-conf ($CONFIGURATION_NAME は、実行するコンフィグレーション Makefile の名前 です。) 既定値と呼ぶコンフィグレーションは以下の通りです。 make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf コンフィグレーションの出力は、.cof と .elf のどちらかのデバッグファイルです。 量産イメージは .hex ファイルです。 dist/$CONFIGURATION_NAME/production/$PROJECT_NAME.production.hex dist/$CONFIGURATION_NAME/debug/$PROJECT_NAME.debug.$COF_OR_ELF ($COF_OR_ELF は、cof と elf のどちらかです。$PROJECT_NAME はプロジェクト 名です。) B.4.6 make 処理を制御する環境変数 make 処理を制御する変数を設定するには 4 つの方法があります。 • 環境変数を使い、「-e」オプションを使って Make を呼び出す。 $ export MC_CC=/opt/microchip/xc16/v1.21/bin/xc16-gcc $ make -e • Make を呼び出す際にコマンドラインで変数を設定する。例 : $ make MC_CC=/opt/microchip/xc16/v1.21/bin/xc16-gcc • 使用中のマシン向けに nbproject/Makefile-local-$conf.mk を作成する。 環境変数の値をその中に含める。 • prjMakefilesGenerator にマシン向けの nbproject/Makefile-local-$conf.mk ファイルを作成させる。 オーバーライドされない変数は Makefile のマクロ値を取ります。Makefile には、これ らのマクロの全ての既定値を格納する領域があります。そのため、必要に応じてオー バーライドしても、残りの領域は Makefile の既定値として保護されます。 Windows でパスを入力する場合、以下のように入力する必要があります。 "C:/Program\ Files/Microchip/xc16/bin/xc16-gcc.exe" フォルダの区切り文字に「/」を使い、スペース文字は「\」でエスケープします。 最後に、コマンドラインから実行する場合、全体を引用符で囲みます。 DS50002027D_JP - p.288 2016 Microchip Technology Inc. IDE 外部での作業手順 B.4.6.1 ツールの名前 / 格納場所を制御する変数 以下の変数はオーバーライドできます。 MP_CC C コンパイラ実行ファイル名へのフルパス MP_BC Basic コンパイラ実行ファイル名へのフルパス MP_AS アセンブラ実行ファイル名へのフルパス MP_LD リンカ実行ファイル名へのフルパス MP_AR アーカイバ実行ファイル名へのフルパス MP_CC_DIR C コンパイラ実行ファイルへのフォルダ MP_BC_DIR Basic コンパイラ実行ファイルへのフォルダ MP_AS_DIR アセンブラ実行ファイルへのフォルダ MP_LD_DIR リンカ実行ファイルへのフォルダ MP_AR_DIR アーカイバ実行ファイルへのフォルダ # 例 (*nix): make MP_CC=/opt/microchip/mplabc30/v3.24/bin/pic30-gcc # 例 (Windows): make "C:/Program\ Files/Microchip/xc16/bin/xc16-gcc.exe" B.4.6.2 プロセッサ選択を制御する変数 MP_PROCESSOR_OPTION は、プロセッサ名を設定するのに使う主要な変数です。 コンパイラによって必要とするプロセッサ名が異なる事に注意する必要があります。 PIC を追加するものもあれば、小文字の「f」を使うものもあります。MPLAB X IDE が生成する Makefile は正しい値を持っています。MP_PROCESSOR_OPTION を使って これらの値をオーバーライドする場合、名前が正しい事を確認する必要があります。 Note: MPLAB X IDE v2.00 以降、 MPLAB XC コンパイラ、PIC18 MCU 用 MPLAB C コンパイラ、MPASM アセンブラの最新バージョン向けに生成した Makefile は、MP_PROCESSOR_OPTION の値を変更するだけでは別のプロ セッサで使えません。これはデバッグイメージのためだけのものです。 それでも、MP_PROCESSOR_OPTION の値を変更する事で各種デバイス向 けの HEX ファイルを作成する事はできます。 MPLAB X IDE v2.00 までは、デバッガに割り当てられたメモリ領域の一覧を含むリンク 行を使ってデバッグイメージを作成します。この一覧はデバイスによって異なります。 例として、MPLAB XC16 プロジェクトのデバッグイメージを作成するためのリンク 行を以下に示します。 ?/opt/microchip/xc16/v1.21/bin/xc16-gcc" -o dist/default/debug/Explorer16dsPIC33F_1.X.debug.elf build/default/debug/main.o -mcpu=33FJ128GP710 -D__DEBUG -D__MPLAB_DEBUGGER_REAL_ICE=1 -omf=elf -mreserve=data@0x800:0x81F -mreserve=data@0x820:0x821 -mreserve=data@0x822:0x823 -mreserve=data@0x824:0x825 -mreserve=data@0x826:0x84F -Wl,,--defsym=__MPLAB_BUILD=1,--defsym=__MPLAB_DEBUG=1,--defsym=__DEBUG=1,--defsym=__M PLAB_DEBUGGER_REAL_ICE=1,,--script=p33FJ128GP710.gld,--check-sections,--data-init,--pa ck-data,--handles,--isr,--no-gc-sections,--fill-upper=0,--stackguard=16,--no-force-lin k,--smart-io,-Map="dist/default/debug/Explorer16dsPIC33F_1.X.debug.map" 上記に太字で示す保護領域はデバイスによって異なります。プロセッサごとのデバッグ イメージを作成する場合、IDE 内でプロセッサを変更し、 prjMakefilesRegenerator を使って Makefile を作成する事を推奨します。 2016 Microchip Technology Inc. DS50002027D_JP - p.289 MPLAB® X IDE ユーザガイド 下表に示すバージョンのツールは、-mreserve キーワードをサポートしています。 またはその他の方法でデバッグ領域の一覧を引数として渡します。正しいデバッグ領域 をリンカに渡すデバッグイメージを生成するには、prjMakefilesRegenerator を 実行する必要があります。MP_PROCESSOR_OPTION を変更するだけでは不十分です。 ツールチェーン サポートする最初のバージョン このバージョン以降の全てのバージョンは -mreserve を発行します。 MPASMX C18 XC8 XC16 XC32 5.54 3.47 1.00 1.21 1.30 B.4.6.3 特殊なリンクの要求を制御する変数 ツールによっては、MP_LINKER_FILE_OPTION マクロで実行できる特殊なリンカ ファイルの処理を必要とします。 XC16 および C30/ASM30 ツールチェーンは、プロジェクトがリンカスクリプトを含む かどうかによって製品名またはファイル名をこのオプションで指定する必要があります。 MPASM/C18 ツールチェーンは、デバッグ実行ファイルの格納場所をこのオプション で指定する必要があります。 これらの変数の詳細は、本書の関連するツールチェーンのセクションで説明します ( セクション B.4.7「各言語ツールに固有の注意事項」参照 )。 B.4.6.4 コマンドラインを変更するための変数 以下の _PRE と _POST の変数は全く任意です。これらは、コマンドラインのカスタマイズ を可能にするためだけのものです。これらを定義しなくても make は実行できます。 MP_EXTRA_CC_PRE MP_EXTRA_BC_PRE MP_EXTRA_AS_PRE MP_EXTRA_AR_PRE MP_EXTRA_LD_PRE MP_EXTRA_CC_POST MP_EXTRA_BC_POST MP_EXTRA_AS_POST MP_EXTRA_AR_POST MP_EXTRA_LD_POST 多くのコンパイラ (gcc ベースのコンパイラ等 ) は、専用のメインシェル プログラム を使ってリンカ / アセンブラを呼び出します。これらのコマンドラインは第 1 の部分 (MP_EXTRA_XX_PRE が置かれている部分 ) と第 2 の部分 (MP_EXTRA_XX_POST が置 かれている部分 ) から成り、通常第 2 の部分がリンカ / アセンブラに渡されます。 これが、ツールの挙動を変更できるようにするためにツールごとに 2 つのマクロが必 要な理由です。 gcc ベースのコンパイラのリンク行の例を以下に示します。 ${MP_CC} -omf=elf ${MP_PROCESSOR_OPTION_LD} ${MP_EXTRA_LD_PRE} -o dist/$(CND_CONF}/${IMAGE_TYPE}/Explorer16PIC24DSC_1.${IMAGE_TYPE}.elf ${OBJECTFILES} -Wl,--defsym=__MPLAB_BUILD=1,--report-mem, -Tp24FJ128GA010.gld${MP_EXTRA_LD_POST} こ の 場 合、MP_EXTRA_LD_PRE はシェルに対して -Wl の 前 に 発 行 さ れ、 MP_EXTRA_LD_POST は後に発行されます。ユーザは、有効なオプションを渡す必要 があります ( 言語ツールの文書を参照してください )。 -Wl の前に含めるオプションには、 区切り文字にスペースを使います。 MP_EXTRA_LD_PRE= -D_FOO -D_BAR また、-Wl の後に含めるオプションには、区切り文字にカンマを使います。 MP_EXTRA_LD_POST=--defsym=_FOO,--defsym=_BAR ツールチェーンがドライバシェル (gcc 等 ) の使用をサポートしていない場合、単に _PRE 変数を使います。 DS50002027D_JP - p.290 2016 Microchip Technology Inc. IDE 外部での作業手順 B.4.7 各言語ツールに固有の注意事項 各ツールチェーンに必要な変数以外に、以下を設定する必要があります。 • ツールの格納場所 ( 例 : MP_CC, MP_AS) • ツールをインストールしたフォルダ ( 例 : MP_CC_DIR, MP_AS_DIR) B.4.7.1 MPASM このツールチェーンに必要なマクロは以下の通りです。 • MP_PROCESSOR_OPTION • MP_LINKER_DEBUG_OPTION 定義がない場合 MP_LINKER_DEBUG_OPTION は定義する必要があります (MP_LINKER_DEBUG_OPTION=)。このマクロはデバッグイメージをビルドする時に のみ使います。プロセッサが変わる場合、デバッグ実行ファイルの格納場所とデバッグ 実行ファイルの使用データ量の変化に応じてこのマクロも変更する必要があります。 この変数を設定しなくてもリンカは正常にビルドを実行します。しかし、コード / データ をデバッグ実行ファイルの前に置くといった問題は、リンカには全く伝わりません。 従って、正しい値に設定するのが最善の方法です。正しい値を得るには、正しいデバ イスを使って MPLAB X IDE プロジェクトを作成しデバッグ実行します。または、 prjMakefilesGenerator を使って Makefile を作成します。 このツールチェーンの選択可能なマクロは以下の通りです。 • MP_EXTRA_AS_PRE • MP_EXTRA_LD_PRE( スタンドアロン プロジェクト向け ) • MP_EXTRA_AR_PRE( ライブラリ プロジェクト向け ) B.4.7.2 C18 このツールチェーンに必要なマクロは以下の通りです。 • MP_PROCESSOR_OPTION • MP_CPP • MP_PROCESSOR_OPTION_LD • MP_LINKER_DEBUG_OPTION MP_LINKER_DEBUG_OPTION の使い方の説明はセクション B.4.7.1「MPASM」を参照 してください。 このリンカは mcc18 コンパイラとは異なる文字列を使うため、リンカ向けの別のプロ セッサ オプション (MP_PROCESSOR_OPTION_LD) が含まれています。このリンカは、 「全て小型英大文字」に適合します。 このツールチェーンの選択可能なマクロは以下の通りです。 • MP_EXTRA_AS_PRE • MP_EXTRA_LD_PRE( スタンドアロン プロジェクト向け ) • MP_EXTRA_AR_PRE( ライブラリ プロジェクト向け ) • MP_EXTRA_CC_PRE 2016 Microchip Technology Inc. DS50002027D_JP - p.291 MPLAB® X IDE ユーザガイド B.4.7.3 XC16, C30, C24, dsPIC XC16ツールチェーンはC30ツールチェーンのアップグレードです。C24およびdsPIC ツールチェーンは C30 のサブセットです。 これらのコンパイラには、異なるツールチェーンが対応します。これらは全て同じ オプションを使います。 これらのツールチェーンに必要なマクロは以下の通りです。 • MP_PROCESSOR_OPTION • MP_LINKER_FILE_OPTION MP_LINKER_FILE_OPTION は以下の 2 つの文字列のうちのどちらかです。 1. “,--script=myScript24FJ256GB106.gld” – プロジェクトがリンカスクリプトを 含む場合、この文字列を使います ( この場合、myScript24FJ256GB106.gld)。 2. “,-Tp24FJ256GB106.gld ”– プロジェクトがリンカスクリプトを含まない場合、 この文字列を使います。インストール内の既定値のリンカスクリプト名を使います ( この場合、p24FJ256GB106.gld)。Linux では、.gld ファイルの名前は大文字 と小文字を区別します。 これらのツールチェーンの選択可能なマクロは以下の通りです。 • MP_EXTRA_CC_PRE • MP_EXTRA_AS_PRE • MP_EXTRA_AS_POST • • • • MP_EXTRA_AR_PRE( ライブラリ プロジェクト向け ) MP_EXTRA_AR_POST( ライブラリ プロジェクト向け ) MP_EXTRA_LD_PRE( スタンドアロン プロジェクト向け ) MP_EXTRA_LD_POST( スタンドアロン プロジェクト向け ) B.4.7.4 ASM30 ASM30 ツールチェーンは MPLAB X IDE の v1.30 以降には付属していません。代わり に XC16 アセンブラを使います。 このツールチェーンに必要なマクロは以下の通りです。 • MP_PROCESSOR_OPTION • MP_LINKER_FILE_OPTION MP_LINKER_FILE_OPTION の使い方の説明はセクション B.4.7.3「XC16, C30, C24, dsPIC」を参照してください。 このツールチェーンの選択可能なマクロは以下の通りです。 • MP_EXTRA_AS_PRE • MP_EXTRA_AR_PRE( ライブラリ プロジェクト向け ) • MP_EXTRA_LD_PRE( スタンドアロン プロジェクト向け ) DS50002027D_JP - p.292 2016 Microchip Technology Inc. IDE 外部での作業手順 B.4.7.5 XC32, C32 XC32 ツールチェーンは C32 ツールチェーンのアップグレードです。 これらのツールチェーンに必要なマクロは以下の通りです。 • MP_PROCESSOR_OPTION • MP_LINKER_FILE_OPTION MP_LINKER_FILE_OPTION は以下の 2 つの文字列のうちのどちらかです。 1. “,--script=myScript32X.gld” – プロジェクトがリンカスクリプトを含む場合、 この文字列を使います ( この場合、myScript32X.gld)。 2. “” – プロジェクトがリンカスクリプトを含まない場合、空の文字列を使います。 これらのツールチェーンの選択可能なマクロは以下の通りです。 • MP_EXTRA_CC_PRE • MP_EXTRA_AS_PRE • MP_EXTRA_AS_POST • • • • MP_EXTRA_AR_PRE( ライブラリ プロジェクト向け ) MP_EXTRA_AR_POST( ライブラリ プロジェクト向け ) MP_EXTRA_LD_PRE( スタンドアロン プロジェクト向け ) MP_EXTRA_LD_POST( スタンドアロン プロジェクト向け ) B.4.7.6 XC8 および HI-TECH コンパイラ (PICC, PICC18-STD, PIC18-PRO, dsPIC, PIC32) XC8 ツールチェーンは、PICC および PICC18 ツールチェーンのアップグレードです。 これらのツールチェーンに必要なマクロは以下の通りです。 • MP_PROCESSOR_OPTION MP_PROCESSOR_OPTION はこれらのコンパイラごとに異なります。 MPLABX による名前 を使うと、以下の Java コードを使って「コンパイラ」名を得る事ができます。 public static String getProcessorNameForCompiler(String deviceName) { String res = deviceName; String lowerCaseDeviceName = deviceName.toLowerCase(); if (lowerCaseDeviceName.startsWith("pic")) res = deviceName.substring(3); else if (lowerCaseDeviceName.startsWith("rfpic")) res = deviceName.substring(5); else if (lowerCaseDeviceName.startsWith("dspic")) res = deviceName.substring(5); return res; } deviceName は「MPLABX」の名前です。 これらのツールチェーンの選択可能なマクロは以下の通りです。 • MP_EXTRA_CC_PRE • MP_EXTRA_AS_PRE • MP_EXTRA_LD_PRE( スタンドアロン プロジェクト向け ) これらのツールチェーンはライブラリ プロジェクトをサポートしません。 B.5 リビジョン管理システムの使い方 IDE の外部でファイルを変更する場合、これらのファイルをリビジョン管理システム に登録しようとする際に競合が発生する可能性があります。これらの問題を解決する にはセクション 5.20.2.3「リビジョン管理されたファイルの競合の解消」を参照して ください。 2016 Microchip Technology Inc. DS50002027D_JP - p.293 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.294 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 補遺 C 改訂履歴 リビジョン A (2011 年 11 月 ) • 本書は初版です。 リビジョン B (2012 年 10 月 ) • Windows および Linux オペレーティング システムで JRE のインストールが自動化 されました。Mac オペレーティング システムにおける手順を記載しました。第 2 章 「使用前の準備」、2.2「JRE と MPLAB X IDE のインストール」で解説しました。 • 第 2 章、デバイスドライバの名称とパスに関する情報を修正しました。 • 第 3 章「チュートリアル」と第 4 章「基本作業」に、デバッグツールの横に表示さ れる 2 つのマーク ( 信号灯 ) が表す意味の説明を追加しました。 • 第 3 章「チュートリアル」と第 4 章「基本作業」のアイコン定義を更新しました。 • 第 4 章「基本作業」 、4.3「新規プロジェクトの作成」 、4.3.6「Step 6: Select Compiler」に、 言語ツールチェーンの略号の一覧表を追加した。 • 新しいMPLAB XC Cコンパイラを使ってプロジェクトを表示する複数のダイアログを 更新しました。 • 第 4 章「基本作業」、4.12「ライブラリやオブジェクト ファイルの追加とセット アップ」に、[Project Properties] ダイアログの [Libraries] カテゴリに関する情報を 追加しました。 • 第 4 章「基本作業」、4.14「ビルドプロパティの設定」に、HEX ファイルの正規化 に関する情報を追加しました。 • 第 4 章「基本作業」、4.20「シンボル値の変化の観察」に、[Watches] ウィンドウへ のリテラル値追加の方法に関する情報を追加しました。 • 最新の C++ サポート ( 現状では、MPLAB XC32++ コンパイラ ) について複数の セクションを更新しました。 • 第 5 章「追加作業」 、5.5「読み込み可能なプロジェクトとファイル」に、読み込み可 能プロジェクトに関するセクションを追加しました。 • 第 5 章「追加作業」、5.7「その他の組み込みプロジェクト」で、他のアプリケー ションから組み込みプロジェクトをインポートする方法を解説しました。 • 第 5 章「追加作業」、5.8「サンプル プロジェクト」に、サンプル プロジェクトを 使った作業に関する情報を追加しました。 • 第 5 章「追加作業」、5.9「他のタイプのファイルを使った作業」で、XML 等の他の タイプのファイルによる作業方法を説明しました。 • 第 6 章「高度な作業」、6.4「ログデータ」に、ログファイルの使い方に関する情報 を追加しました。 • 第 6 章「高度な作業」、6.5「ツールバーのカスタマイズ」で、ツールバーへの機能 追加方法を説明しました。 • MPLAB X IDE エディタの使い方、オプション、機能を解説する第 7 章「エディタ」 を追加しました。 • 既定値のリンカスクリプトを変更または移動した場合に表示される可能性がある エラーメッセージに関する情報と、その回避策を説明しました。第 8 章「トラブル シュート」、8.4「MPLAB X IDE の問題」を参照してください。 •「主な相違点」と「機能上の相違点」を、第 9 章「MPLAB X IDE と MPLAB IDE v8 の相違点」、9.2「主な相違点」に統合しました。NetBeans プラットフォームがオー プンソースであるのに対し、MPLAB X IDE は独自製品である事を説明しました。 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.295 MPLAB® X IDE ユーザガイド • 第 9 章「MPLAB X IDE と MPLAB IDE v8 の相違点」 、9.4「メニューの相違点」を MPLAB X IDE の新機能を反映するように更新しました。また、9.4「ツールのサポートに関す る相違点」を新しいプラグインのサポートを反映するように更新しました。 • 第 10 章「デスクトップの詳細」、10.2「メニュー」を MPLAB X IDE の新機能を反 映するように更新しました。 •「ウィンドウとダイアログ」を第 11 章「MPLAB X IDE のウィンドウとダイアログ」 と第 12 章「NetBeans のウィンドウとダイアログ」に分割し、各種ウィンドウをよ り正確に記述しました。ウィンドウのメニューを更新しました。 • 第 13 章「プロジェクト ファイルおよびフォルダ」、13.3「[Files] ウィンドウの表 示」のプロジェクト ファイルの構造を更新しました。Makefile ファイルに関する情 報を追加しました。 • 第 14 章「コンフィグレーション設定のまとめ」、14.9「XC ツールチェーン」で、 MPLAB XC C コンパイラのコンフィグレーション ビットの解説に、CCI (Common C Interface) への参照を追加しました。 リビジョン C (2014 年 3 月 ) • 全体の変更 : 古いツールへの参照を削除しました。Windows 8 に関する情報を追加 しました。最新の GUI と一致するように画面とテキストを更新しました。 • 第 1 章「MPLAB X IDE とは」: 図の参照を更新しました。資料としてスタンドアロン ツールのヘルプと Microchip Wiki に言及しました。 • 第 2 章「使用前の準備」: 2.3.2「Windows® XP/7/8 OS 用の USB ドライバのインス トール」の内容を更新しました。2.5「言語ツールのインストール」にコンパイラの ライセンスに関する情報を追加しました。2.7.1「複数のインスタンスを使うための ハードウェア ツールの設定方法」を追加しました。 • 第 4 章「基本作業」: 4.1「はじめに」を削除しました。4.6.1「ツールチェーンの追 加または変更」と 4.6.2「ツールチェーン パス」を追加しました。4.12「ファイル およびフォルダ プロパティの設定」に、ビルドからファイル / フォルダを除く方法 を追加しました。4.13「ビルドプロパティの設定」の各セクションに、表 4-3 を拡 張しました。4.15.2「実行に関する注意事項」を追加しました。4.16.2「デバッグ 用マクロの生成」と 4.16.3「デバッグに関する注意事項」を追加しました。4.19 「シンボル値の変化の観察」にシンボル情報を追加しました。4.21.2「デバイスメモ リの変更」を更新しました。4.23.1「プロジェクトのプログラミング プロパティの 設定」を追加しました。 • 第 5 章「追加作業」: 5.1「はじめに」を削除しました。5.4「読み込み可能なプロジェ クトとファイル」を更新しました。新規のセクション (5.5「読み込み可能なプロジェ クトとファイル – ブートローダ」) を追加しました。5.12「プロジェクト フォルダと エンコードの変更」と 5.13「ビルド時間の短縮」を追加しました。5.17「ダッシュ ボードの表示」の新規の表示オプションと一致するようにテキストを更新しました。 5.19「ソースコードの管理」で、バージョン管理手順の使い方を修正し、リポジトリ に保存する必要があるプロジェクト ファイルを更新しました。5.20「コード開発と エラー追跡の連携」のオプションを更新しました。5.21「プラグインツールの追加」 と 5.21.4「プラグインコードの格納場所」のセクションを並べ換えました。 • 第 6 章「高度な作業」: 6.1「MPLAB X IDE の高速化」と 6.5「ユーザ Makefile プロ ジェクトの作成」を追加しました。6.3「複数プロジェクトを使った作業」に、アク ティブなプロジェクトを設定しない作業とプロジェクトのグループ化に関する情 報を追加しました。6.4「複数コンフィグレーションを使った作業」から、デバッグ コンフィグレーションが必要としていた文を削除しました。6.6「ログファイル」の ログファイルの要件を更新しました。 • 第 7 章「エディタ」: 「注目すべきエディタ機能」を、7.2「エディタの使い方」の 7.2.4 に移動しました。また 7.2.1「デスクトップの制御」、7.2.2「C コードのハイ パーリンク」、7.2.3「ASM コードのハイパーリンク」を追加しました。表 7-6 「[Macros] タブ」のマクロの定義を拡張しました。7.4「コード折り畳み」を 7.4.1 「コード折り畳みの使い方」(MPLAB C18 とアセンブリの折り畳みの問題を含む ) と 7.4.2「コード折り畳みのカスタマイズ」に再構成しました。 DS50002027D_JP - p.296 2011-2015 Microchip Technology Inc. • 第 8 章「プロジェクト ファイルおよびフォルダ」: この章は第 13 章から移動しま した。8.4「[Favorites] ウィンドウの表示」、8.5「[Classes] ウィンドウの表示」、8.6 「ユーザ コンフィグレーション データの表示」、8.9「プロジェクトの削除」を追加 しました。 「プロジェクトの移動」を 8.8「プロジェクトの移動、コピー、リネーム」 に変更しました。 「MPLAB X IDE の外部でのプロジェクトのビルド」を補遺 B「IDE 外部での作業手順」に移動しました。 • 第 9 章「トラブルシュート」: 9.6「エラー」に情報を追加しました。 • 第 10 章「MPLAB X IDE と MPLAB IDE v8 の相違点」: 10.2「主な相違点」の第 3 項「MPLAB X IDE では、複数のツールを選択できます。」と第 9 項「MPLAB X IDE では、コード内に設定されたコンフィグレーション ビットを使います。」を明確に しました。MPLAB X IDE のその他の選択肢の細部を修正しました。 • 第 11 章「デスクトップの詳細」: プラグインとコンパイラ ライセンスについて 11.2.10「[Tools] メニュー」を更新しました。MPLAB X IDE のその他の選択肢の細 部を修正しました。 • 第 12 章「MPLAB X IDE のウィンドウとダイアログ」: 12.2「MPLAB X IDE のウィン ドウの管理」を追加しました。12.3「MPLAB X IDE のウィンドウと関連する メニューとダイアログ」で、新規ウィンドウを表に追加し、各種ウィンドウのサブ セクションをそれぞれ専用のセクションに移動しました。12.4「[Breakpoints] ウィン ドウ」と 12.6「[Licenses] ウィンドウ」を追加しました。12.8「[Memory] ウィンドウ」 の各種メモリのウィンドウの説明を追加するために大幅に更新しました。12.11 「[Projects] ウィンドウ」のメニューを更新しました。12.12「[Tools] > [Options] > [Embedded] ウィンドウ」のオプションを更新し、12.12.5「[Diagnostics] タブ」を 追加しました。12.14「[Watches] ウィンドウ」の内容を 3 つに分割しました。 • 補遺 A: 「コンフィグレーション設定」: 第 14 章から補遺に変更しました。 [Configuration Memory] ウィンドウに関する情報を追加しました。 • 補遺 B: 「IDE 外部での作業手順」: 第 8 章「プロジェクト ファイルおよびフォルダ」 から B.1「MPLAB X IDE の外部でのプロジェクトのビルド」に移動しました。B.2 「MPLAB X IDE 外部でのデバッグのためのコンパイル」を追加しました。 • 補遺 C: 「改訂履歴」: バージョン B から C への主な変更に対応してこの章を更新 しました。 リビジョン D (2015 年 9 月 ) • MPLAB X IDE v3.00 (NetBeans 8.1 プラットフォーム ) の画像を更新しました。 • [MPLAB X Store] のタブ、アイコン、ヘルプメニュー項目に関する情報を追加しま した。 • [Help] > [Tool Help Contents] の個別のヘルプファイルに関する情報を追加しました。 • 第 2 章 : 2.6「[Start Page] からのアクセス情報」: 情報を更新しました。 • 第 2 章 : 2.9「IDE で複数のバージョンを使う方法」: バージョンの実行を明確にし ました。 • 第 4 章 : 4.13「ビルドプロパティ」: 「プロジェクト コンフィグレーション タイプ の変更」を追加しました。 • 第 4 章 : 4.2.2「Step 2: Select Device」: LF デバイスに関する情報を追加しました。 • 第 5 章 : 5.6「ライブラリ プロジェクト」: 「プロジェクト コンフィグレーション タイプの変更」のセクションへのリンクを追加しました。 • 第 6 章 : 章の名前を「高度な作業とコンセプト」に変更しました。グループ化の セクションを追加しました。 「サードパーティ製ハードウェア ツール」と「コンフィグ レーション」のセクションを追加しました。 「ユーザ Makefile プロジェクトの作成」 のセクションの内容を更新し、例を追加しました。 • 第 9 章 : 9.6「エラー」:「HEXMATE Conflict Report Address Error」と「プログラム エラー」を追加しました。 • 第 12 章 : 12.4「[Watches] ウィンドウ」: 「[Watches] の表示」と「[Watches] メニュー」 のセクションの位置を入れ換えました。メニューのセクションに内容を追加しました。 「[Fractional Integer Properties] ダイアログ」のセクションを追加しました。 2011-2015 Microchip Technology Inc. DS50002027D_JP - p.297 MPLAB® X IDE ユーザガイド • 第 12 章 : 12.7.5「[EE Data Memory] ウィンドウ」: デバッグ中またはデバッグ セッ ション後の読み出しに関する文章を更新しました。開始アドレスの表を更新しました。 • 第 12 章 : 12.10「[Message Center] ウィンドウ」を追加しました。 • 補遺 B: 既存のセクションを並べ換え、「MPLAB X IDE 外部での Makefile の作成」 のセクションを追加しました。 DS50002027D_JP - p.298 2011-2015 Microchip Technology Inc. MPLAB® X IDE ユーザガイド サポート はじめに 以下ではサポートについて説明します。 • • • • • • 保証登録 myMicrochip 変更通知サービス Microchip 社のウェブサイト Microchip フォーラム お客様サポート Microchip 社への問い合わせ 保証登録 ウェブサイト : http://www.microchipdirect.com 開発ツールをご登録頂いたお客様には新製品情報をお届けします。ソフトウェアの マイナーリリースは弊社ウェブサイトで提供しています。 2016 Microchip Technology Inc. DS50002027D_JP - p.299 MPLAB® X IDE ユーザガイド myMicrochip 変更通知サービス myMicrochip: http://www.microchip.com/pcn Microchip 社のお客様向け変更通知サービスは、お客様に Microchip 社製品の最新情 報をお届けするサービスです。ご興味のある製品ファミリまたは開発ツールに関する 変更、更新、リビジョン、エラッタ情報をいち早くメールにてお知らせします。 myMicrochip からサービスに登録し、変更通知の配信をご希望になる製品カテゴリを お選びください。よく寄せられる質問 (FAQ) と登録方法の詳細も、上記のリンク先 ページからご覧になれます。 配 信 を 希 望 す る 変 更 通 知 の 製 品 カ テ ゴ リ を お 選 び に な る 際 に、 「Development Systems」を選択すると、開発ツールのリストがご覧になれます。ツールの主なカテ ゴリは以下の通りです。 • コンパイラ - Microchip 社の C コンパイラ、アセンブラ、リンカ、その他の言語ツール の最新情報を提供します。これには MPLAB XC コンパイラ全製品 (MPLAB XC8, MPLAB XC16, MPLAB XC32)、従来の MPLAB C コンパイラ、MPASM™ アセンブラ、 MPLINK™ オブジェクト リンカ、 MPLIB™ オブジェクト ライブラリアンが含まれます。 • エミュレータ – Microchip 社製インサーキット エミュレータの最新情報を提供します。 これには MPLAB REAL ICE™ インサーキット エミュレータが含まれます。 • インサーキット デバッガ - Microchip 社製インサーキット デバッガの最新情報を提 供します。これには PICkit™ 3、MPLAB ICD 3 インサーキット デバッガが含まれ ます。 • MPLAB® X IDE - Microchip 社の MPLAB X IDE( 開発システムツール向け統合開発 環境 ) の最新情報を提供します。これには MPLAB X IDE、MPLAB X IDE プロジェ クト、MPLAB X エディタ、MPLAB X シミュレータと一般的な編集 / デバッグ機能 が含まれます。 • プログラマ - Microchip 社製プログラマの最新情報を提供します。これにはデバイス ( 量産 ) プログラマ MPLAB REAL ICE インサーキット エミュレータ、MPLAB ICD 3 インサーキット デバッガ、MPLAB PM3、開発用プログラマ PICkit 3 が含まれます。 • スタータ / デモボード – これには MPLAB スタータキット ボード、PICDEM デモ ボード、その他の各種評価用ボードが含まれます。 Microchip 社のウェブサイト ウェブサイト : http://www.microchip.com Microchip 社は自社が運営するウェブサイトを通してオンライン サポートを提供して います。このウェブサイトを通じて、お客様はファイルと情報を簡単に入手できます。 一般的なインターネット ブラウザから以下の内容がご覧になれます。 • 製品サポート - データシートとエラッタ、アプリケーション ノートとサンプル プログラム、設計リソース、ユーザガイドとハードウェア サポート文書、最新の ソフトウェアと過去のソフトウェア • 技術サポート - よく寄せられる質問 (FAQ)、技術サポートのご依頼、オンライン ディスカッション グループ、Microchip 社のコンサルタント プログラム メンバーの 一覧 • Microchip 社の事業 – プロダクト セレクタガイドとご注文案内、プレスリリース、 セミナーとイベントの一覧、営業所の一覧 DS50002027D_JP - p.300 2016 Microchip Technology Inc. サポート Microchip フォーラム フォーラム : http://www.microchip.com/forums Microchip 社のウェブフォーラムからもオンライン サポートをご利用頂けます。現在、 以下のフォーラムを開設しています。 • • • • 開発ツール 8 ビット PIC MCU 16 ビット PIC MCU 32 ビット PIC MCU お客様サポート Microchip 社製品をお使いのお客様は、以下のチャンネルからサポートをご利用頂け ます。 • 販売代理店 • 弊社営業所 • 技術サポート 技術サポートは以下のウェブページからもご利用になれます。 http://support.microchip.com 本書の内容に関して、誤りやご意見がございましたら、[email protected] まで メールでお寄せください。 Microchip 社への問い合わせ 以下の番号より、Microchip 社まで電話またはファックスでお問い合わせください。 電話 : (480) 792-7200 Fax: (480) 792-7277 2016 Microchip Technology Inc. DS50002027D_JP - p.301 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.302 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 用語集 数字 2 進数 (Binary) 0 と 1 の数字を使う、2 を底とした記数法。一番右の桁が 1 の位、次の桁が 2 の位、 その次の桁が 22 = 4 の位を表す。 8 進数 (Octal) 0 ~ 7 の数字のみを使う、8 を底とした記数法。一番右の桁が 1 の位、次の桁が 8 の 位、その次の桁が 82 = 64 の位を表す。 16 進数 (Hexadecimal) 0 ~ 9 の数字と A ~ F( または a ~ f) のアルファベットを使った、16 を底とした記数法。 16 進数の A ~ F は、10 進数の 10 ~ 15 を表す。一番右の桁が 1 の位、次の桁が 16 の位、その次の桁が 162 = 256 の位を表す。 A AND 条件ブレークポイント (ANDed Breakpoint) プログラムの実行を停止するために設定する AND 条件 ( ブレークポイント 1 とブレーク ポイント 2 が同時に発生した場合のみプログラム実行を停止する )。AND 条件で実行 が停止するのは、データメモリのブレークポイントとプログラムメモリのブレーク ポイントが同時に発生した場合のみ。 ANSI American National Standards Institute( 米国規格協会 ) の略。米国における標準規格の 策定と承認を行う団体。 ASCII American Standard Code for Information Interchange の略。7 桁の 2 進数で 1 つの文 字を表現する文字セットエンコード方式。大文字、小文字、数字、記号、制御文字等 を含む。 C C/C++ C 言語は、簡潔な表現、現代的な制御フローとデータ構造、豊富に用意された演算子 等を特長とする汎用プログラミング言語。C++ とは、C 言語のオブジェクト指向バー ジョン。 COFF Common Object File Format の略。このフォーマットのオブジェクト ファイルは、 マシンコードの他、デバッグ等に関する情報を含む。 CPU 「中央演算処理装置」参照。 D DWARF Debug With Arbitrary Record Formatの略。ELFファイルのデバッグ情報フォーマット。 2016 Microchip Technology Inc. DS50002027D_JP - p.303 MPLAB® X IDE ユーザガイド E EEPROM Electrically Erasable Programmable Read Only Memory の略。電気的に消去可能な タイプの PROM。データの書き込みと消去をバイト単位で行う。EEPROM は電源を OFF にしても内容を保持する。 ELF Executable and Linking Format の略。この形式のオブジェクト ファイルはマシンコード を含む。デバッグその他の情報は DWARF で指定する。ELF/DWARF の方が COFF よ りも最適化したコードのデバッグに適している。 EPROM Erasable Programmable Read Only Memory の略。 再書き込みが行えるタイプの ROM で、 消去は紫外線照射で行うものが主流。 F FNOP Forced No Operation の略。Forced NOP サイクルは、2 サイクル命令の 2 サイクル目で 発生する。PIC マイクロコントローラのアーキテクチャはパイプライン構造となって おり、現在の命令を実行中に物理アドレス空間の次の命令をプリフェッチする。しかし、 現在の命令でプログラム カウンタが変化した場合、プリフェッチした命令は明示的に 無視され、Forced NOP サイクルが発生する。 G GPR General Purpose Register( 汎用レジスタ ) の略。デバイスのデータメモリ (RAM) の うち、汎用目的に使える部分。 H Halt プログラム実行を停止する事。Halt を実行する事は、ブレークポイントで停止する事 と同じ。 HEX コード /HEX ファイル (Hex Code/Hex File) HEX コードは、実行可能な命令を 16 進数形式のコードで保存したもの。HEX ファ イルは、HEX コードを格納したファイル。 I ICE/ICD インサーキット エミュレータ / インサーキット デバッガの略。ターゲット デバイス のデバッグとプログラミングを行うためのハードウェア ツール。エミュレータは、 デバッガよりも多くの機能 ( トレース等 ) を備える。 インサーキット エミュレーション / インサーキット デバッグとは、インサーキット エミュレータまたはデバッガを使った作業の事を指す。 -ICE/-ICD: インサーキット エミュレーション / デバッグ用の回路を内蔵したデバイス (MCU または DSC)。このデバイスは必ずヘッダ基板にマウントし、インサーキット エミュレータまたはデバッガによるデバッグ用に使う。 ICSP In-Circuit Serial Programming の略。Microchip 社製の組み込みデバイスをシリアル通 信を利用して最小限のデバイスピンでプログラミングする方法。 IDE Integrated Development Environment の略。MPLAB IDE/MPLAB X IDE の IDE と同じ 意味。 IEEE Institute of Electrical and Electronics Engineers の略。 DS50002027D_JP - p.304 2016 Microchip Technology Inc. 用語集 L LVDS Low Voltage Differential Signaling の略。銅線を使って低ノイズ、低消費電力、低振幅 でデータを高速伝送 (Gbps) する方法。 標準の I/O シグナリングでは、データストレージは実際の電圧レベルに依存する。電圧 レベルは信号線の長さに影響を受ける ( 信号線が長いと抵抗が増え電圧が下がる )。 これに対し LVDS では、電圧レベルでなく差動入力の電位差が正か負かでのみデータ の意味を区別する。従って、長い信号線でもクリアで安定したデータストリームを維 持した伝送が可能。 出典 : http://www.webopedia.com/TERM/L/LVDS.html M make ファイル (Makefile) プロジェクトの Make に関する指示をファイルにエクスポートしたもの。このファ イルは、MPLAB IDE/MPLAB X IDE 以外の環境で make コマンドを実行してプロジェ クトをビルドする際に使う。 Make Project アプリケーションを再ビルドするコマンド。前回の完全なコンパイル後に変更された ソースファイルのみを再コンパイルする。 MCU Microcontroller Unit の略。マイクロコントローラの事。「µC」と表記する事もある。 MPASM™ アセンブラ (MPASM Assembler) PIC マイクロコントローラ、KeeLoq® デバイス、Microchip 社のメモリデバイスに対 応した Microchip 社の再配置可能なマクロアセンブラ。 MPLAB ( 言語ツール名 ) for ( デバイス名 ) (MPLAB Language Tool for Device) 特定のデバイスに対応した Microchip 社の C コンパイラ、アセンブラ、リンカ。言語 ツールは、アプリケーションで使うデバイスに対応したものを選択する必要がある。 例えば PIC18 MCU 用の C コードを作成する場合、「MPLAB C Compiler for PIC18 MCU」を使う。 MPLAB ICD MPLAB IDE/MPLAB X IDE と組み合わせて使う Microchip 社のインサーキット デバッガ。 ICE/ICD を参照。 MPLAB IDE/MPLAB X IDE Microchip 社の統合開発環境。エディタ、プロジェクト マネージャ、シミュレータが 付属する。 MPLAB PM3 Microchip 社提供のデバイス プログラマ。PIC18 マイクロコントローラと dsPIC デジ タルシグナル コントローラのプログラミングに対応。MPLAB IDE/MPLAB X IDE と の併用も、単体で使う事も可能。PRO MATE II の後継製品。 MPLAB REAL ICE™ インサーキット エミュレータ MPLAB IDE/MPLAB X IDE と組み合わせて使う Microchip 社の次世代インサーキット エミュレータ。ICE/ICD を参照。 MPLAB SIM MPLAB IDE/MPLAB X IDE と組み合わせて使う Microchip 社のシミュレータで、PIC MCU と dsPIC DSC に対応する。 MPLIB™ オブジェクト ライブラリアン (MPLIB Object Librarian) MPLAB IDE/MPLAB X IDE と組み合わせて使う Microchip 社のライブラリアン。MPLIB ライブラリアンは、MPASMアセンブラ(mpasmまたはmpasmwin v2.0)またはMPLAB C18 C コンパイラで作成した COFF オブジェクト モジュールに使うオブジェクト ライブラリアン。 2016 Microchip Technology Inc. DS50002027D_JP - p.305 MPLAB® X IDE ユーザガイド MPLINK™ オブジェクト リンカ (MPLINK Object Linker) Microchip 社の MPASM アセンブラと C18 C コンパイラに対応したオブジェクト リンカ。 Microchip 社の MPLIB ライブラリアンとの併用も可能。MPLAB IDE/MPLAB X IDE に 統合して使うように設計されているが、MPLAB IDE/MPLAB X IDE 以外の環境でも使 える。 MRU Most Recently Usedの略。最近使ったファイルとウィンドウの事。 MPLAB IDE/MPLAB X IDE のメインメニューで選択できる。 N NOP No Operation の略。実行してもプログラム カウンタが進むだけで何も動作を行わな い命令。 O OTP One Time Programmable の略。パッケージに窓のない EPROM デバイス。EPROM を消去するには紫外線照射が必要なため、パッケージに窓のあるデバイスしか消去で きない。 P PC パーソナル コンピュータまたはプログラム カウンタの略。 PIC MCU Microchip 社の全てのマイクロコントローラ ファミリの総称。 PICkit 2/3 Microchip 社の開発用デバイス プログラマで、Debug Express によるデバッグ機能を 備える。サポートしているデバイスの種類は、各ツールの Readme ファイル参照。 Psect GCC のセクションに相当する OCG の用語。 プログラム セクション (program section) の略語。リンカが 1 つのまとまりとして処理するコードまたはデータのブロック。 PWM 信号 (PWM Signal) パルス幅変調 (Pulse Width Modulation) 信号。一部の PIC MCU は周辺モジュールと して PWM を内蔵している。 R RAM Random Access Memory の略。データメモリ。任意の順にメモリ内の情報にアクセスで きる。 ROM Read Only Memory の略。プログラムメモリ。メモリの内容を変更できない。 Run エミュレータを Halt から解放するコマンド。エミュレータはアプリケーション コード を実行し、I/O に対してリアルタイムに変更、応答を行う。 S SQTP (Serialized Quick Turn Programming) デバイス プログラマでマイクロコントローラをプログラムする際に、各デバイスに異 なるシリアル番号を書き込めるようにする機能。この番号はエントリコード、パス ワード、ID 番号として使える。 SQTP 「Serialized Quick Turn Programming」参照。 DS50002027D_JP - p.306 2016 Microchip Technology Inc. 用語集 MPLAB Starter Kit for ( デバイス名 ) (MPLAB Starter Kit for Device) 特定のデバイスでの作業を開始する上で必要となるものを全てセットにした Microchip 社のスタータキット。書き込み済みアプリケーションの動作を確認し、 一部を変更してカスタム アプリケーションとしてデバッグとプログラムを行える。 Step Over Step Over を実行すると、サブルーチン内をステップ実行せずにコードをデバッグ できる。Step Over では、CALL 命令があると CALL の次の命令にブレークポイントが 設定される。何らかの理由によりサブルーチンが無限ループになる等正しく戻らない 場合、次のブレークポイントには到達しない。CALL 命令の処理以外は、Step Over コマンドと Single Step コマンドは同じ。 Step Out 現在ステップ実行中のサブルーチンから抜け出すためのコマンド。このコマンドを実 行すると、サブルーチンの残りのコードを全て実行し、サブルーチンの戻りアドレス で実行が停止する。 U USB Universal Serial Bus の略。2 本のシリアル伝送線で PC と外部周辺機器の通信を行う 外部周辺インターフェイス規格。USB 1.0/1.1 は最大 12 Mbps のデータレートを サポートしている。USB 2.0( ハイスピード USB) は最大 480 Mbps のデータレートを サポートしている。 V Volatile メモリ内の変数へのアクセス方法に影響を与えるコンパイラの最適化を抑制する 変数修飾子。 W [Watches] ウィンドウ (Watches Window) ウォッチ変数の一覧が表示され、ブレークポイントで毎回表示が更新されるウィンドウ。 あ アーカイブ / ライブラリ (Archive/Library) アーカイブ / ライブラリは、再配置可能なオブジェクト モジュールの集まり。複数の ソースファイルをオブジェクト ファイルにアセンブルした後、アーカイバ / ライブラ リアンを使ってこれらオブジェクト ファイルを 1 つのアーカイブ / ライブラリ ファ イルにまとめると生成される。アーカイブ / ライブラリをオブジェクト モジュールや 他のアーカイブ / ライブラリとリンクすると、実行コードが生成される。 アクセス エントリポイント (Access Entry Point) リンク時に定義されていない可能性のある関数に、セグメントの境界を越えて制御を 渡すための手段。ブートセグメントとセキュア アプリケーション セグメントを別々 にリンクする方法を提供する。 アクセスメモリ (Access Memory) PIC18 のみ - PIC18 でバンクセレクト レジスタ (BSR) の設定にかかわらずアクセス できる特殊なレジスタ。 アセンブリ / アセンブラ (Assembly/Assembler) アセンブリとは、2 進数のマシンコードをシンボル表現で記述したプログラミング言語。 アセンブラとは、アセンブリ言語のソースコードをマシンコードに変換する言語ツール。 アップロード (Upload) エミュレータやプログラマ等のツールからホスト PC へ、またはターゲットボードか らエミュレータへデータを転送する事。 2016 Microchip Technology Inc. DS50002027D_JP - p.307 MPLAB® X IDE ユーザガイド アドレス (Address) メモリ内の位置を一意に特定する値。 アプリケーション (Application) PIC® マイクロコントローラで制御されるソフトウェアとハードウェアを組み合わせ たもの。 アルファベット文字 (Alphabetic Character) アルファベットの小文字と大文字の総称 (a,b, ・・・ ,z,A,B, ・・・ ,Z)。 い イベント (Event) アドレス、データ、パスカウント、外部入力、サイクルタイプ ( フェッチ、R/W)、 タイムスタンプ等、バスサイクルを記述したもの。トリガ、ブレークポイント、割り 込みを記述するために使う。 入れ子の深さ (Nesting Depth) マクロに他のマクロを入れ込める階層の数。 インポート (Import) HEX ファイル等の外部ソースから MPLAB IDE/MPLAB X IDE にデータを取り込む事。 う ウォッチドッグ タイマ (WDT: Watchdog Timer) PIC マイクロコントローラに内蔵されたタイマの 1 つで、ユーザが設定した期間が経 過するとプロセッサをリセットする。WDT の有効化 / 無効化、設定はコンフィグレー ション ビットで行う。 ウォッチ変数 (Watch Variable) デバッグ セッション中に [Watches] ウィンドウで監視できる変数。 え 英数字 (Alphanumeric) アルファベット文字と 0 ~ 9 の 10 進数 (0,1, ・・・ ,9) の数字の総称。 永続データ (Persistent Data) クリアも初期化もされないデータ。デバイスをリセットしてもアプリケーションが データを保持できるようにするために使う。 エクスポート (Export) MPLAB IDE/MPLAB X IDE から標準フォーマットでデータを外部に出力する事。 エミュレーション / エミュレータ (Emulation/Emulator) ICE/ICD を参照。 エピローグ (Epilogue) コンパイラで生成したコードのうち、スタック領域の割り当て解除、レジスタの復帰、 ランタイムモデルで指定したその他のマシン固有の要件を実行するコード部分。関数 のユーザコードの後、関数リターンの直前にエピローグを実行する。 エラー / エラーファイル (Error/Error File) プログラムの処理を継続できない問題が発生するとエラーとして報告される。可能な 場合、エラーは問題が発生したソースファイル名と行番号を特定する。エラーファイルは、 言語ツールから出力されたエラーメッセージと診断結果を格納する。 演算子 (Operator) 定義可能な式を構成する際に使う「+」や「-」等の記号。各演算子に割り当てられた 優先順位に基づいて式を評価する。 エンディアン (Endianness) マルチバイト オブジェクトにおけるバイトの並び順。 DS50002027D_JP - p.308 2016 Microchip Technology Inc. 用語集 お オブジェクト コード / オブジェクト ファイル (Object Code/Object File) オブジェクト コードとは、アセンブラまたはコンパイラで生成されるマシンコードの事。 オブジェクト ファイルとは、マシンコードを格納したファイル。デバッグ情報を含む 事もある。そのまま実行できるものと、他のオブジェクト ファイル ( 例 : ライブラリ ) とリンクしてから完全な実行プログラムを生成する再配置可能形式のものがある。 オブジェクト ファイル ディレクティブ (Object File Directive) オブジェクト ファイル作成時にのみ使うディレクティブ。 オフチップメモリ (Off-Chip Memory) PIC18 で選択できるメモリオプション。ターゲットボードのメモリを使うか、または 全てのプログラムメモリをエミュレータから供給する。[Options] > [Development Mode] の順にクリックして [Memory] タブでオフチップメモリを選択する。 オペコード (Opcode) Operational Code の略。「ニーモニック」を参照。 か 外部 RAM (External RAM) デバイス外部にある、読み書き可能なメモリ。 外部シンボル (External Symbol) 外部リンケージを持つ識別子のシンボル。参照の場合と定義の場合がある。 外部シンボル解決 (External Symbol Resolution) リンカが全ての入力モジュールの外部シンボル定義を 1 つにまとめ、全ての外部シン ボル参照を解決しようとするプロセス。外部シンボル参照に対応する定義が存在しな い場合、リンカエラーとなる。 外部入力ライン (External Input Line) 外部信号に基づいてイベントを設定するための外部入力信号ロジックプローブ ライン (TRIGIN)。 外部ラベル (External Label) 外部リンケージを持つラベル。 外部リンケージ (External Linkage) 関数または変数が、それを定義したモジュールの外部から参照できる場合、外部リン ケージを持つという。 拡張マイクロコントローラ モード (Extended Microcontroller Mode) 拡張マイクロコントローラ モードでは、内蔵プログラムメモリと外部メモリの両方が 利用できる。プログラムメモリのアドレスが PIC18 の内部メモリ空間より大きい場合、 自動的に外部メモリの実行に切り換わる。 拡張モード (Extended Mode) (PIC18 MCU) コンパイラの動作モードの 1 つ。拡張命令 (ADDFSR、ADDULNK、CALLW、MOVSF、 MOVSS、PUSHL、SUBFSR、SUBULNK) とリテラル オフセットによるインデックス アドレス指定を利用できる。 環境 (Environment) MPLAB PM3 - デバイスのプログラミングに関する設定ファイルを保存したフォルダ。 このフォルダを SD/MMC カードに転送できる。 緩和 (Relaxation) ある命令を、機能が同じでよりサイズの小さい命令に変換する事。コードサイズを抑 えるために便利である。最新の MPLAB XC16 には、CALL 命令を RCALL 命令に緩和 する機能がある。この変換は、現在の命令から +/-32k 命令ワード以内にあるシンボルを 呼び出す場合に行われる。 2016 Microchip Technology Inc. DS50002027D_JP - p.309 MPLAB® X IDE ユーザガイド き 記憶域クラス (Storage Class) 指定されたオブジェクトに対応する記憶場所の持続期間を決定する。 記憶域修飾子 (Storage Qualifier) 宣言されるオブジェクトの特別な属性を示す ( 例 : const)。 基数 (Radix) アドレスを指定する際の記数法 (16 進法、10 進法 ) の底。 く クリーン (Clean) クリーンする事により、アクティブなプロジェクトのオブジェクト ファイル、HEX ファイル、デバッグファイル等、全ての中間ファイルが削除される。これらのファイルは、 プロジェクトのビルド時に他のファイルから再構築される。 け 警告 (Warning) MPLAB IDE/MPLAB X IDE - デバイス、ソフトウェア ファイル、装置に物理的な損傷 を与える可能性のある状況で、ユーザに注意を促すために表示されるメッセージ。 16 ビットアセンブラ / コンパイラ - 問題となる可能性のある状態を警告として報告 するが、処理は停止されない。MPLAB C30 の警告メッセージはソースファイル名と 行番号を報告するが、エラーメッセージと区別するために「warning:」の文字列も 付加する。 こ 高級言語 (High Level Language) プログラムを記述するための言語で、プロセッサから見てアセンブリよりも遠い位置 関係にあるもの。 校正メモリ (Calibration Memory) PIC マイクロコントローラの内蔵 RC オシレータやその他の周辺モジュールの校正値 を格納するための特殊機能レジスタ。 国際標準化機構 (International Organization for Standardization) コンピューティングや通信を始めとする、多くのテクノロジとビジネス関連の標準規 格の策定を行っている団体。一般的に ISO と呼ぶ。 コマンドライン インターフェイス (Command Line Interface) プログラムとユーザのやり取りをテキストの入出力だけで行う方法。 コンパイラ (Compiler) 高級言語で記述されたソースファイルをマシンコードに変換するプログラム。 コンパイルド スタック (Stack, Compiled) コンパイラが管理し割り当てるメモリの領域で、この領域内で変数に静的に空間を割 り当てる。ターゲット デバイス上にソフトウェア スタックのメカニズムを効率的に 実装できない場合、ソフトウェア スタックがコンパイルド スタックに置き換わる。 このメカニズムでは、関数は再入可能ではなくなる。 コンパイルド スタック (Compiled Stack) コンパイラが管理するメモリの領域で、この領域内で変数に静的に空間を割り当てる。 ターゲット デバイス上にソフトウェア スタックまたはハードウェア スタックのメカ ニズムを効率的に実装できない場合、コンパイルド スタックがソフトウェア スタック またはハードウェア スタックに置き換わる。 コンフィグレーション ビット (Configuration Bit) PIC MCU と dsPIC DSC の動作モードを設定するために書き込む専用ビット。コン フィグレーション ビットは事前プログラミングされている場合とされていない場合 がある。 DS50002027D_JP - p.310 2016 Microchip Technology Inc. 用語集 さ 再帰 (Recursion) 定義した関数またはマクロがそれ自身を呼び出す事。再帰マクロを作成する際は、 再帰から抜けずに無限ループとなりやすいため注意が必要。 再帰呼び出し (Recursive Call) 直接または間接的に自分自身を呼び出す関数。 再入可能 (Reentrant) 1 つの関数を複数呼び出して同時に実行できる事。直接または間接再帰、あるいは割 り込み処理中の実行によって起こる事がある。 再配置 (Relocation) リンカが絶対アドレスを再配置可能セクションに割り当てる事。再配置可能セクション 内の全てのシンボルを新しいアドレスに更新する。 再配置可能 (Relocatable) アドレスがメモリの固定番地に割り当てられていないオブジェクト。 再配置可能セクション (Relocatable Section) 16 ビットアセンブラ - アドレスが固定されていない ( 絶対アドレスでない ) セクション。 再配置可能セクションには、再配置と呼ばれるプロセスでリンカがアドレスを割り当 てる。 左辺値 (L-value) 検査または変更が可能なオブジェクトを示す式。左辺値は代入演算子の左側で使う。 し シーケンス ブレークポイント (Sequenced Breakpoint) シーケンスで発生するブレークポイント。ブレークポイントのシーケンスはボトム アップ方式で実行される。つまり、シーケンスの最後のブレークポイントが最初に発 生する。 シェル (Shell) MPASM アセンブラにおいて、マクロアセンブラへの入力を行うためのプロンプト インターフェイス。MPASM アセンブラには DOS 用シェルと Windows OS 用シェル の 2 種類がある。 式 (Expression) 算術演算子または論理演算子で区切った定数または記号の組み合わせ。 識別子 (Identifier) 関数または変数の名前。 システム ウィンドウ コントロール (System Window Control) ウィンドウと一部のダイアログの左上隅にあるコントロール。通常、このコントロール をクリックすると、[ 最小化 ]、[ 最大化 ]、[ 閉じる ] 等のメニュー項目がポップアップ 表示される。 実行可能コード (Executable Code) 読み込んで実行できる形式のソフトウェア。 シナリオ (Scenario) MPLAB SIM シミュレータでスティミュラス制御を具体的に設定したもの。 シミュレータ (Simulator) デバイスの動作をモデル化するソフトウェア プログラム。 修飾子 (Qualifier) パスカウンタで使ったり、複合トリガにおける次の動作前のイベントとして使ったり するアドレスまたはアドレスレンジ。 2016 Microchip Technology Inc. DS50002027D_JP - p.311 MPLAB® X IDE ユーザガイド 条件付きアセンブリ (Conditional Assembly) アセンブリ言語で、ある特定の式のアセンブル時の値に基づいて含まれたり除外され たりするコード。 条件付きコンパイル (Conditional Compilation) プログラムの一部を、プリプロセッサ ディレクティブで指定した特定の定数式が真の 場合のみコンパイルする事。 初期化済みデータ (Initialized Data) 初期値を指定して定義されたデータ。C では、 int myVar=5; として定義した変数は初期化済みデータセクションに格納する。 シングルステップ (Single Step) コードを 1 命令ずつ実行するコマンド。1 命令を実行するたびに、MPLAB IDE/MPLAB X IDE がレジスタ ウィンドウ、ウォッチ変数、ステータスの表示を更新するため、 命令実行を解析してデバッグできる。C コンパイラのソースコードもシングルステップ 実行できるが、その場合 MPLAB IDE/MPLAB X IDE は 1 命令ずつ実行するのではなく、 高級言語の C で記述されたコードの 1 行から生成される全てのアセンブリレベル命令 をシングルステップで実行する。 シンボル (Symbol) プログラムを構成する各種の要素を記述する汎用のメカニズム。関数名、変数名、 セクション名、ファイル名、struct/enum/union タグ名等がある。MPLAB IDE/MPLAB X IDE では、主に変数名、関数名、アセンブリラベルをシンボルと呼ぶ。リンク実行 後は、シンボルの値はメモリ内の値となる。 す 推奨しない機能 (Deprecated Feature) 後方互換性確保のためにサポートしているだけで現在は使っておらず、いずれ廃止に なる事が決まっている機能。 スキッド (Skid) ハードウェア ブレークポイントを使ってプロセッサを停止する場合、ブレークポイント 以降の命令を実行してプロセッサが停止する事がある。ブレークポイントの後に実行 する命令の数をスキッドと呼ぶ。 スキュー (Skew) 命令実行に対応する情報は、異なる複数のタイミングでプロセッサバスに表れる。 例えば、実行されるオペコードは直前の命令の実行時にフェッチとしてバスに表れる。 ソースデータのアドレスと値、およびデスティネーション データのアドレスは、オペ コードが実際に実行される時にバスに表れる。デスティネーション データの値は次の 命令の実行時にバスに表れる。トレースバッファは、1 インスタンスでバス上に存在 する情報をキャプチャする。従って、トレースバッファの 1 エントリには 3 つの命令 の実行情報が含まれる。1 つの命令実行で、ある情報から次の情報までにキャプチャ されるサイクル数をスキューと呼ぶ。 スタティック RAM (SRAM) (Static RAM or SRAM) Static Random Access Memory の略。ターゲットボード上の読み書き可能なプログラム メモリ。リフレッシュ動作は不要。 スティミュラス (Stimulus) シミュレータへの入力、すなわち外部信号に対する応答をシミュレートするために生成 するデータ。通常、テキストファイルにアクションのリストとしてこのデータを記述 する。スティミュラスの種類には非同期、同期 ( ピン )、クロック動作、レジスタがある。 ステータスバー (Status Bar) MPLAB IDE/MPLAB X IDE ウィンドウの一番下にあるバーで、カーソル位置、開発 モードとデバイス、アクティブなツールバー等に関する情報が表示される。 DS50002027D_JP - p.312 2016 Microchip Technology Inc. 用語集 ステップイントゥ (Step Into) Single Step と同じコマンド。Step Over とは異なり、Step Into では CALL 命令が呼び 出すサブルーチン内もステップ実行する。 ストップウォッチ (Stopwatch) 実行サイクルを計測するためのカウンタ。 せ 制御ディレクティブ (Control Directive) アセンブリ言語コード内で使うディレクティブで、指定した式のアセンブル時の値に 基づいてコードを含めるか除外するかを決定する。 セクション (Section) OCG の psect に相当する GCC の用語。リンカが 1 つのまとまりとして処理するコード またはデータのブロック。 セクション属性 (Section Attribute) GCC のセクションの特徴を表す情報 ( 例 : access セクション )。 絶対シンボル (Symbol, Absolute) アセンブリの .equ ディレクティブによる定義等、即値を表す。 絶対セクション (Absolute Section) リンカで変更されない固定 ( 絶対 ) アドレスを持つ GCC コンパイラのセクション。 絶対変数 / 関数 (Absolute Variable/Function) OCG コンパイラの @ address 構文を使って絶対アドレスに配置される変数または 関数。 そ 相互参照ファイル (Cross Reference File) シンボルテーブルとそのシンボルを参照するファイルリストを参照するファイル。 シンボルが定義されている場合、リストの最初のファイルがシンボル定義の位置と なる。残りのファイルはシンボルへの参照を含む。 ソースコード (Source Code) 人間が記述したコンピュータ プログラム。プログラミング言語で記述されたソース コードは、マシンコードに変換して実行するか、またはインタプリタで実行される。 ソースファイル (Source File) ソースコードを記述した ASCII テキストファイル。 属性 (Attribute) GCC の C プログラムの変数または関数の特徴を表す情報で、マシン固有の特性を記述 する目的で使う。 属性 ( セクション属性 ) (Attribute, Section) 「executable」、 「readonly」、 「data」等、GCC のセクションの特徴を表す情報。アセン ブラの .section ディレクティブでフラグとして指定できる。 ソフトウェア スタック (Stack, Software) アプリケーションが戻りアドレス、関数パラメータ、ローカル変数を保存するのに使 うメモリ。このメモリはプログラムでの命令の実行時に動的に割り当てられる。これ によって、再入可能な関数の呼び出しが可能になる。 た ターゲット (Target) ユーザ ハードウェアの事。 ターゲット アプリケーション (Target Application) ターゲットボードに読み込んだソフトウェア。 2016 Microchip Technology Inc. DS50002027D_JP - p.313 MPLAB® X IDE ユーザガイド ターゲット プロセッサ (Target Processor) ターゲット アプリケーションの基板で使われているマイクロコントローラ。 ターゲットボード (Target Board) ターゲット アプリケーションを構成する回路とデバイス。 ダウンロード (Download) ホストから別のデバイス ( 例 : エミュレータ、プログラマ、ターゲットボード ) にデータ を送信する事。 ち 致命的エラー (Fatal Error) コンパイルがただちに停止するようなエラー。エラーの発生後はメッセージも出力さ れない。 中央演算処理装置 (Central Processing Unit) デバイス内で、実行する正しい命令をフェッチし、デコードして実行する装置。必要 に応じて、算術論理演算装置 (ALU) と組み合わせて命令実行を完了する。プログラム メモリのアドレスバス、データメモリのアドレスバス、スタックへのアクセスを制御 する。 つ ツールバー (Tool Bar) MPLAB IDE/MPLAB X IDE の機能を実行するためのボタン ( アイコン ) を縦または横 に並べたもの。 て ディレクティブ (Directive) 言語ツールの動作を制御するためにソースコードに記述する命令文。 データ監視および制御インターフェイス (DMCI: Data Monitor and Control Interface) MPLAB X IDE 内のツール。このインターフェイスは、プロジェクト内のアプリケー ション変数の動的な入力制御を提供する。4 つの動的に割り当て可能なグラフィック ウィンドウを使って、アプリケーションが生成するデータをグラフィカルに表示できる。 データ ディレクティブ (Data Directive) アセンブラが行うプログラムメモリまたはデータメモリの割り当てを制御するディ レクティブ。データ項目をシンボル ( 意味のある名前 ) で参照する手段として使う。 データメモリ (Data Memory) Microchip 社の MCU と DSC では、データメモリ (RAM) は汎用レジスタ (GPR) と特 殊機能レジスタ (SFR) で構成される。EEPROM データメモリを内蔵したデバイスも ある。 デジタルシグナル コントローラ (Digital Signal Controller) デジタル信号処理機能を搭載したマイクロコントローラ。Microchip 社の dsPIC DSC デバイス等。 デジタル信号処理 / デジタルシグナル プロセッサ (Digital Signal Processing/Digital Signal Processor) デジタル信号処理 (DSP) とは、デジタル信号をコンピュータで処理する事。通常は、 アナログ信号 ( 音声または画像 ) をデジタル形式に変換 ( サンプリング ) して処理 する事をいう。デジタルシグナル プロセッサとは、信号処理用に設計されたマイクロ プロセッサの事。 デバイス プログラマ (Device Programmer) マイクロコントローラ等、電気的に書き込み可能な半導体デバイスをプログラミング するためのツール。 DS50002027D_JP - p.314 2016 Microchip Technology Inc. 用語集 デバッグ情報 (Debugging Information) コンパイラとアセンブラでこのオプションを選択すると、アプリケーション コードの デバッグに使える各種レベルの情報を出力できる。デバッグ オプションの選択の詳細 はコンパイラまたはアセンブラのマニュアル参照。 デバッグ / デバッガ (Debug/Debugger) ICE/ICD を参照。 テンプレート (Template) 後でファイルに挿入するために作成するテキスト行。MPLAB エディタでは、テンプ レートはテンプレート ファイルに保存する。 と 特殊機能レジスタ (SFR: Special Function Register) I/O プロセッサ機能、I/O ステータス、タイマ等の各種モードや周辺モジュールを制御 するレジスタ専用に使うデータメモリ (RAM) 領域。 匿名構造体 (Anonymous Structure) 16 ビット C コンパイラ – 無名の構造体。 PIC18 C コンパイラ - C 共用体のメンバーである無名の構造体。匿名構造体のメン バーは、その構造体を包含している共用体のメンバーと同じようにアクセスできる。 例えば以下のサンプルコードでは、hi と lo は共用体 caster に含まれる匿名構造体 のメンバーである。 union castaway int intval; struct { char lo; //accessible as caster.lo char hi; //accessible as caster.hi }; } caster; トライグラフ (Trigraph) 「??」で始まる 3 文字のシーケンス。ISO C で定義されており、1 つの文字に置換される。 トリガ出力 (Trigger Output) 任意のアドレスまたはアドレス範囲で生成でき、トレースとブレークポイントの設定 から独立したエミュレータ出力信号の事。トリガ出力の設定数に制限はない。 トレース (Trace) プログラム実行を記録するエミュレータまたはシミュレータの機能。エミュレータは プログラム実行のログをトレースバッファに記録し、これを MPLAB IDE/MPLAB X IDE のトレース ウィンドウにアップロードする。 トレースマクロ (Trace Macro) エミュレータ データからのトレース情報を提供するマクロ。これはソフトウェア トレースのため、トレースを利用するにはマクロをコードに追加し、コードを再コン パイルまたは再アセンブルし、ターゲット デバイスにこのコードをプログラムする必 要がある。 トレースメモリ (Trace Memory) エミュレータが内蔵するトレース用のメモリ。トレースバッファとも呼ばれる。 な 内部リンケージ (Internal Linkage) 関数または変数が、それを定義したモジュールの外部から参照できない場合、内部 リンケージを持つという。 生データ (Raw Data) あるセクションに関連付けられたコードまたはデータを 2 進数で表現したもの。 2016 Microchip Technology Inc. DS50002027D_JP - p.315 MPLAB® X IDE ユーザガイド に ニーモニック (Mnemonic) マシンコードと 1 対 1 で対応したテキスト命令。オペコードとも呼ぶ。 ね ネイティブ データサイズ (Native Data Size) ネイティブ トレースの場合、[Watches] ウィンドウで使う変数のサイズは選択した デバイスのデータメモリと同じサイズ (PIC18 の場合は同じバイトサイズ、16 ビット デバイスの場合は同じワードサイズ ) である必要がある。 の ノード (Node) MPLAB IDE/MPLAB X IDE のプロジェクトを構成するコンポーネント は ハードウェア スタック (Stack, Hardware) PIC マイクロコントローラで関数を呼び出す時に戻りアドレスを格納する場所。 パスカウンタ (Pass Counter) イベント ( 特定のアドレスの命令を実行する等 ) が発生するたびに値をデクリメント するカウンタ。パスカウンタの値がゼロになると、イベントの条件を満たす。パス カウンタはブレークロジック、トレースロジック、複合トリガダイアログの任意の シーケンシャル イベントに割り当てられる。 パワーオン リセット エミュレーション (Power-on-Reset Emulation) データ RAM 領域にランダムな値を書き込んで、初回電源投入時の RAM の非初期化 値をシミュレートするソフトウェア無作為化処理。 ひ ヒープ (Heap) 動的メモリ割り当てに使うメモリ空間。メモリブロックの割り当てと解放は実行時に 任意の順序で行う。 非拡張モード (Non-Extended Mode) (PIC18 MCU) コンパイラの動作モードの 1 つ。拡張命令もリテラル オフセットによるインデックス アドレス指定も使わない。 非初期化データ (Uninitialized Data) 初期値なしで定義されたデータ。C では、 int myVar; は、非初期化済みデータセクションに格納される変数を定義する。 非同期 (Asynchronously) 複数のイベントが同時には発生しない事。一般に、プロセッサ実行中の任意の時点で 発生する割り込みに言及する際に使う。 非同期スティミュラス (Asynchronous Stimulus) シミュレータ デバイスへの外部入力をシミュレートするために生成されるデータ。 非リアルタイム (Non Real Time) ブレークポイントで停止中、またはシングルステップ実行中のプロセッサ、あるいは シミュレータ モードで動作中の MPLAB IDE/MPLAB X IDE を指す。 ビルド (Build) 全てのソースファイルのコンパイルとリンクを行ってアプリケーションを作成する事。 ふ ファイルレジスタ (File Register) 汎用レジスタ (GPR) と特殊機能レジスタ (SFR) から成る内蔵のデータメモリ。 DS50002027D_JP - p.316 2016 Microchip Technology Inc. 用語集 ファントムバイト (Phantom Byte) dsPIC アーキテクチャで、24 ビット命令ワードを 32 ビット命令ワードとみなして扱う 場合に使う未実装バイト。dsPIC の HEX ファイルに見られる。 フィックスアップ (Fixup) リンカによる再配置後にオブジェクト ファイルのシンボル参照を絶対アドレスに 置き換える処理。 フィルタ (Filter) トレース ディスプレイまたはデータファイルにどのデータを含めるか / 除外するかを 選択するもの。 不揮発性ストレージ (Non-Volatile Storage) 電源を OFF にしても内容が失われないストレージ デバイス。 ブックマーク (Bookmark) ファイル内の特定の行に簡単な操作でアクセスできるようにする機能。 [Editor] ツールバーの [Toggle Bookmarks] を選択してブックマークを追加または削除 する。このツールバーの他のアイコンをクリックすると、次または前のブックマーク に移動する。 プラグイン (Plug-in) MPLAB IDE/MPLAB X IDE では、標準コンポーネントにプラグイン モジュールを追 加する事で、各種ソフトウェア / ハードウェア ツールに対応する。一部のプラグイン ツールは、[Tools] メニューから利用できる。 プラグマ (Pragma) 特定のコンパイラにとって意味を持つディレクティブ。一般に、実装で定義した情報 をコンパイラに伝達するために使う。MPLAB C30 は属性を利用してこの情報を伝達 する。 フラッシュ (Flash) データの書き込みと消去をバイト単位ではなくブロック単位で行えるタイプの EEPROM。 フリー スタンディング (Free-Standing) 複素数型を使っておらず、ライブラリ (ANSI C89 規格第 7 節 ) で規定する機能の使用が 標準ヘッダ (<float.h>、<iso646.h>、<limits.h>、<stdarg.h>、<stdbool.h>、 <stddef.h>、<stdint.h>) の内容にのみ限定されている厳密な規格合致プログラムを 受理する処理系。 ブレークポイント (Breakpoint) ハードウェア ブレークポイント : 実行するとファームウェアの実行が停止するイベント。 ソフトウェア ブレークポイント : ファームウェアの実行が停止するアドレス。通常、 特別な Break 命令で実行が停止される。 フレームポインタ (Frame Pointer) スタックベースの引数とスタックベースのローカル変数の境界となるスタック番地 を指し示すポインタ。ここを基準にすると、現在の関数のローカル変数やその他の値 に容易にアクセスできる。 プログラム カウンタ (Program Counter) 現在実行中の命令のアドレスを格納した場所。 プログラム カウンタユニット (Program Counter Unit) 16 ビットアセンブラ - プログラムメモリのレイアウトを概念的に表現したもの。プロ グラム カウンタは 1 命令ワードで 2 つインクリメントする。実行可能セクションでは、 2 プログラム カウンタユニットは 3 バイトに相当する。読み出し専用セクションでは、 2 プログラム カウンタユニットは 2 バイトに相当する。 2016 Microchip Technology Inc. DS50002027D_JP - p.317 MPLAB® X IDE ユーザガイド プログラムメモリ (Program Memory) MPLAB IDE/MPLAB X IDE - デバイス内で命令を保存するメモリ空間。また、エミュ レータまたはシミュレータにダウンロードしたターゲット アプリケーションの ファームウェアを格納するメモリ空間もプログラムメモリと呼ぶ。 16 ビットアセンブラ / コンパイラ - デバイス内で命令を保存するメモリ空間。 プロジェクト (Project) アプリケーションのビルドに必要なファイル ( 例 : ソースコード、リンカスクリプト ファイル ) 一式と、各種ビルドツールやビルドオプションとの関連付けをまとめたもの。 プロトタイプ システム (Prototype System) ユーザのターゲット アプリケーションまたはターゲットボードの事。 プロファイル (Profile) MPLAB SIM シミュレータにおいて、実行したスティミュラスをレジスタ別に一覧表 示したもの。 プロローグ (Prologue) コンパイラで生成したコードのうち、スタック領域の割り当て、レジスタの退避、 ランタイムモデルで指定したその他のマシン固有の要件を実行するコード部分。プロ ローグは、関数のユーザコードの前に実行する。 へ ベクタ (Vector) リセットまたは割り込みが発生した時にアプリケーションのジャンプ先となるメモリ 番地。 ほ ホスト PC (PC Host) パーソナル コンピュータ。 ポッド (Pod) インサーキット エミュレータまたはデバッガの筐体。丸型の場合パック (Puck) と呼 ぶ事もある。あるいはプローブ (Probe) とも呼ぶが、「論理プローブ」と混同せぬよ う注意が必要。 ま マイクロコントローラ (Microcontroller) CPU、RAM、プログラムメモリ、I/O ポート、タイマ等、多くの機能を統合したチップ。 マイクロコントローラ モード (Microcontroller Mode) PIC18 マイクロコントローラで設定可能なプログラムメモリ構成の 1 つ。マイクロ コントローラ モードでは、内部実行のみを許可する。つまり、マイクロコントローラ モードでは内蔵プログラムメモリしか使えない。 マイクロプロセッサ モード (Microprocessor Mode) PIC18 マイクロコントローラで設定可能なプログラムメモリ構成の 1 つ。マイクロ プロセッサ モードでは、内蔵プログラムメモリは使わない。プログラムメモリ全体を 外部にマッピングする。 マクロ (Macro) マクロ命令。一連の命令シーケンスを短い名前で表現した命令。 マクロ ディレクティブ (Macro Directive) マクロ定義の中で実行とデータ割り当てを制御するディレクティブ。 マシン語 (Machine Language) ある CPU が翻訳を必要とせず実行できる命令の集合。 DS50002027D_JP - p.318 2016 Microchip Technology Inc. 用語集 マシンコード (Machine Code) コンピュータ プログラムをプロセッサが実際に読み出して解釈できる形式で表現し たもの。2 進数のマシンコードで記述されたプログラムは、マシン命令のシーケンス ( 命令間にデータを挟む事もある ) から成る。ある特定のプロセッサで使える全ての 命令の集合を「命令セット」という。 み 未割り当てセクション (Unassigned Section) リンカのコマンドファイルで特定のターゲット メモリブロックに割り当てられてい ないセクション。リンカは、未割り当てセクションを割り当てるターゲット メモリ ブロックを検出する必要がある。 め 命令 (Instruction) CPU に対して特定の演算を実行するように指示するビット列。演算の対象となる データを含める事もできる。 命令セット (Instruction Set) 特定のプロセッサが理解できるマシン語命令の集合。 メッセージ (Message) 言語ツールの動作に問題が発生した事を知らせる文字列。メッセージが表示されても 処理は停止しない。 メモリモデル (Memory Model) C コンパイラの場合、アプリケーションで利用可能なメモリを表現したもの。PIC18 C コンパイラの場合、プログラムメモリを指し示すポインタのサイズに関する規定を 記述したもの。 も モジュール (Module) プリプロセッサ ディレクティブ実行後の前処理済みのソースファイル出力。翻訳単位 とも呼ぶ。 ゆ 優先順位 (Precedence) 式の評価順を定義した規則。 よ 読み出し専用メモリ (Read Only Memory) 恒久的に保存されているデータへの高速アクセスが可能なメモリ ハードウェア。ただし、 データの追加や変更は不可。 ら ライブラリ / ライブラリアン (Library/Librarian) 「アーカイブ / ライブラリ」を参照。 ランタイム ウォッチ (Runtime Watch) アプリケーションの実行につれて変数の値がリアルタイムに変化する [Watch] ウィン ドウ。ランタイム ウォッチの設定方法は各ツールの関連文書参照。ランタイム ウォッチ をサポートしていないツールもある。 ランタイムモデル (Run-time Model) ターゲット アーキテクチャのリソースの使用を記述したもの。 2016 Microchip Technology Inc. DS50002027D_JP - p.319 MPLAB® X IDE ユーザガイド り リアルタイム (Real Time) インサーキット エミュレータまたはデバッガが Halt 状態から解放されると、 プロセッサ の実行はリアルタイム モードとなり、通常のチップと同じ挙動をする。リアルタイム モードでは、エミュレータのリアルタイム トレースバッファが有効になり、選択した 全てのサイクルを常時キャプチャする。また、全てのブレークロジックが有効になる。 インサーキット エミュレータまたはデバッガでは、有効なブレークポイントで停止 するか、またはユーザが実行を停止するまでプロセッサはリアルタイムで動作する。 シミュレータでは、ホスト CPU でシミュレート可能な最大速度でマイクロコントローラ の命令を実行する事をリアルタイムと呼ぶ。 リスティング (Listing File) ソースファイルにある各 C ソース ステートメント、アセンブリ命令、アセンブラ ディレクティブ、マクロに対して生成されたマシンコードを記述した ASCII テキスト ファイル。 リスティング ディレクティブ (Listing Directive) アセンブラのリスティング ファイルのフォーマットを制御するディレクティブ。タイ トルや改ページ指示等、リスティング ファイルに関する各種の設定を行う。 リトル エンディアン (Little Endian) マルチバイト データで最下位バイト (LSB) を最下位アドレスに格納するデータ並び 順方式。 量産プログラマ (Production Programmer) デバイスを高速にプログラミングできるようにリソースを強化したプログラマ。各種 電圧レベルでのプログラミングに対応し、プログラミング仕様に完全に準拠している。 量産環境では応用回路が組み立てラインにとどまる時間をなるべく短くする必要が あるため、デバイスへの書き込み時間の短縮が特に重要である。 リンカ (Linker) オブジェクト ファイルとライブラリを結合し、モジュール間の参照を解決して実行可 能コードを生成する言語ツール。 リンカスクリプト ファイル (Linker Script File) リンカのコマンドファイル。リンカのオプションを定義し、ターゲット プラット フォームで利用可能なメモリを記述する。 る ループバック テストボード (Loop-Back Test Board) MPLAB REAL ICE インサーキット エミュレータの動作をテストするために用いる。 れ レイテンシ (Latency) イベントが発生してからその応答までの時間の長さ。 ろ ローカルラベル (Local Label) マクロ内で LOCAL ディレクティブを使って定義されたラベル。ローカルラベルは、 マクロの同一インスタンス内でのみ有効。すなわち、LOCAL として宣言されたシン ボルとラベルには、ENDM マクロ以降はアクセスできない。 ロジックプローブ (Logic Probe) Microchip 社製エミュレータには、 最大 14 のロジックプローブを接続できるものがある。 ロジックプローブは、外部トレース入力、トリガ出力信号、+5 V、共通グランドを 提供する。 DS50002027D_JP - p.320 2016 Microchip Technology Inc. 用語集 わ ワークブック (Workbook) MPLAB SIM シミュレータにおいて、SCL スティミュラスの生成に関する設定を保存 したもの。 割り当てセクション (Assigned Section) リンカのコマンドファイルで特定のターゲットメモリ ブロックに割り当てられた GCC コンパイラのセクション。 割り込み (Interrpt) CPU に対する信号の一種。この信号が発生すると、現在動作中のアプリケーション の実行を一時停止し、制御を割り込みサービスルーチン (ISR) に渡してイベントを処 理する。ISR の実行が完了すると、通常のアプリケーションの実行を再開する。 割り込みサービス要求 (IRQ: Interrupt Service Request) プロセッサの通常の命令実行を一時的に停止し、割り込みハンドラルーチンの実行開 始を要求するイベント。プロセッサによっては複数の割り込み要求イベントを持ち、 優先度の異なる割り込みを処理できるものもある。 割り込みサービスルーチン (ISR: Interrupt Service Routine) 言語ツールの場合、割り込みを処理する関数。 MPLAB IDE/MPLAB X IDE の場合、割り込みが発生すると実行されるユーザ作成コード。 通常、発生した割り込みの種類によってプログラムメモリ内の異なる位置のコードを 実行する。 割り込みハンドラ (Interrupt Handler) 割り込み発生時に専用のコードを実行するルーチン。 割り込みベクタ (Interrupt Vector) 割り込みサービスルーチンまたは割り込みハンドラのアドレス。 2016 Microchip Technology Inc. DS50002027D_JP - p.321 MPLAB® X IDE ユーザガイド NOTE: DS50002027D_JP - p.322 2016 Microchip Technology Inc. MPLAB® X IDE ユーザガイド 索引 記号 __DEBUG ..............................................................157, 204 //TODO ..................................................................... 91, 177 A About .............................................................................. 227 AN851 ブートローダのサポート ............................... 214 AN901 BLDC チューニング インターフェイスの サポート ..................................................................... 214 AN908 ACIM チューニング インターフェイスの サポート ..................................................................... 214 Apply Code Changes ................................................... 169 Apply Diff Patch ............................................................ 224 ASM30 ツールチェーン .................................................78 Attach Debugger ........................................................... 169 B Back ................................................................................ 220 Batch Build Project ....................................................... 222 Bookmarks ..................................................................... 225 [Bookmark] ウィンドウ ............................................... 220 Breakpoints .................................................................... 172 Build for Debugging...................................................... 102 Build for Debugging Main Project .............................. 170 Build Main Project ........................................................ 170 Build Project ................................................. 102, 170, 222 C C++ ファイルタイプ .................................................... 131 C18 ツールチェーン .......................................................78 C24 ツールチェーン .......................................................78 C30 ツールチェーン .......................................................78 C32 ツールチェーン .......................................................78 Call Graph ...................................................................... 172 Call Stack ....................................................................... 172 Cannot find file – リンカエラー ................................. 195 [Change Visible Columns] ダイアログ ..................... 268 Classes ........................................................................... 171 Clean and Build............................................................. 102 Clean and Build for Debugging .................................. 102 Clean and Build Main Project ..................................... 170 Clean and Build Project .......................................170, 222 Clean Main Project ....................................................... 170 [Clean Only] アイコン.................................................. 168 Clean Project ................................................................. 170 Clear Document Bookmarks....................................... 169 Clear tool output window on new session ................ 260 Close All Projects ......................................................... 217 Close Project ................................................................. 217 Code Folding ................................................................. 219 Compile File................................................................... 170 Complete Code ............................................................. 221 2016 Microchip Technology Inc. [Configuration Bits] ウィンドウ .................................. 247 [Configure] メニューの相違点..................................... 211 Continue................................................................. 169, 223 Copy ....................................................................... 169, 218 [CPU Registers] ウィンドウ ....................................... 250 CPU メモリ .................................................................... 113 Customize Zoom ........................................................... 171 Cut .......................................................................... 169, 218 CVS Check CVS ............................................................. 171 Commit .................................................................... 171 Diff............................................................................ 171 Revert Modifications ............................................. 171 Show Annotations ................................................. 171 Update..................................................................... 171 C 拡張子............................................................................ 88 C ファイルタイプ ......................................................... 131 D [Dashboard] ウィンドウ ..................................... 139, 172 [Data Memory] ウィンドウ .......................................... 248 Debug File ............................................................. 169, 223 Debug Main Project ...................................................... 169 Debug Project ................................................................ 223 [Debug Project] アイコン............................................. 105 Debug Test File .................................................... 169, 223 [Debugger] メニューの相違点 .................................... 210 [Debug] メニュー .......................................................... 223 Delete ..................................................................... 169, 218 Diff.................................................................................... 224 Disassembly Listing File .............................................. 172 [Disassembly] ウィンドウ .................................. 137, 168 Disconnect from Debug Tool ............................. 168, 224 Discrete Debugger Operation ..................................... 223 DMA Address ................................................................. 245 DMCI のサポート .......................................................... 213 dsPIC Filter Design のサポート.................................. 213 dsPIC30F SMPS 降圧型コンバータ .......................... 214 dsPIC33F SMPS 昇降圧型コンバータ ...................... 214 dsPICworks のサポート ............................................... 213 dsPIC ツールチェーン ................................................... 78 DTDs and XML Schemas ............................................ 224 Dual Port Display .......................................................... 245 Duplicate Down ............................................................. 221 Duplicate Up................................................................... 221 E [Edit] メニュー ............................................................... 218 [Edit] メニューの相違点 ............................................... 207 [EE Data Memory] ウィンドウ ................................... 247 EEPROM .......................................................................... 15 EE データメモリ ........................................................... 113 DS50002027D_JP - p.323 MPLAB® X IDE ユーザガイド Enable alternate watch list views during debug session ....................................................................... 260 Erase Device Memory Main Project .......................... 170 Ethernet ツール接続..................................................... 262 [Exception Reporter] ウィンドウ ............................... 172 [Execution Memory] ウィンドウ ................................ 248 Exit .................................................................................. 217 [Experimental Terminal] ウィンドウ ......................... 172 Export Hex ..................................................................... 256 Export Project ................................................................ 217 [Hierarchy] ウィンドウ .................................................172 History ............................................................................. 224 HI-TECH DSPICC ツールチェーン.............................. 78 HI-TECH PICC18 ツールチェーン ............................... 78 HI-TECH PICC32 ツールチェーン ............................... 78 HI-TECH PICC ツールチェーン ................................... 78 Hold In Reset ................................................................. 117 Hold in Reset.................................................................. 170 [Hold in Reset] アイコン ..............................................103 [How Do I] テキストボックス......................................230 F I [Favorites] ウィンドウ ................................................. 172 [File Registers] ウィンドウ ......................................... 245 Files ................................................................................. 170 [Files] ウィンドウの表示 ............................................. 188 [File] メニュー ............................................................... 217 [File] メニューの相違点 ............................................... 206 Fill Memory .................................................................... 251 Find .........................................................................169, 218 Find in Projects .....................................................169, 218 Find Next ........................................................................ 218 Find Previous ................................................................ 218 Find Selection................................................................ 218 Find Usages .................................................................. 218 [Find Usages] ウィンドウ ........................................... 172 Finish Debugger Session ....................................169, 223 Fix Code ......................................................................... 221 Focus Cursor at PC ..................................... 168, 223, 251 Force Makefile regeneration when opening a project ......................................................................... 261 Format ............................................................................ 221 Forward .......................................................................... 220 [Fractional Properties] ダイアログ ............................ 268 Full Screen ..................................................................... 219 ICSP .................................................................................. 25 IDE Log .................................................................. 171, 219 Import .............................................................................. 217 Insert Code ..................................................................... 221 Insert Next Matching Word ..........................................221 Insert Previous Matching Word...................................221 G [Generated Command Line] タブ .................................85 Git .................................................................................... 224 Go to Declaration .......................................................... 220 Go to File ........................................................................ 220 Go to Line....................................................................... 220 Go to Previous Window ............................................... 220 Go to Source ................................................................. 220 Go to Super Implementation ....................................... 220 Go to Symbol ................................................................. 220 Go to Type ..................................................................... 220 GPR ...................................................................................15 Graphical Display Designer (GDD) のサポート ...... 213 H Halt build on first failure ............................................... 260 Help ................................................................................. 170 Help Contents................................................................ 227 [Help] メニュー ............................................................. 227 [Help] メニューの相違点 ............................................. 212 HEXMATE...................................................................... 124 Conflict Report ...................................................... 201 HEX ファイルの正規化 ....................................... 101 読み込み可能プロジェクト ................................ 124 HEX ファイル、正規化 ............................................... 101 HEX ファイルの正規化 ............................................... 101 DS50002027D_JP - p.324 J JRE のインストール ....................................................... 31 K KeeLoq Plugin のサポート ..........................................213 Keyboard Shortcuts, MPLAB X IDE ...........................227 L Last Edit Location ..........................................................220 Launch Debugger Main Project ..................................168 Licenses .......................................................................... 224 Locate Headers .............................................................256 Log File ........................................................................... 264 Logging Level ................................................................. 264 M Macro Expansion...........................................................172 Macro Recording Start/Stop ........................................218 Maintain active connection to hardware tool ............ 260 main 関数 リセット ................................................................. 260 Make ................................................................................ 168 Make and Program Device ................................. 117, 257 Make and Program Device Main Project .................. 170 [Make and Program Device] アイコン ......................103 Make Callee Current .....................................................169 Make Caller Current ......................................................169 Make Clean .................................................................... 168 Make Options ................................................................. 261 Makefile ........................................................................... 131 Makefile プロジェクト .................................................158 make オプション ...................................................... 88, 98 MATLAB/Simulink のサポート ....................................214 [Memory] ウィンドウ ............................................. 69, 113 [Memory] ウィンドウのメニュー ...............................251 Mercurial ......................................................................... 224 [Message Center] ウィンドウ.....................................252 Microchip 社への問い合わせ .......................................301 Move Code Element Down ..........................................221 Move Code Element Up ...............................................221 Move Down .................................................................... 221 Move Up.......................................................................... 221 MPASM ツールチェーン................................................ 78 2016 Microchip Technology Inc. 索引 MPLAB C18 C コンパイラと構造 ............................. 196 MPLAB ICD 2 のサポート ........................................... 213 MPLAB ICD 3 のサポート ........................................... 213 MPLAB ICE 2000 のサポート .................................... 213 MPLAB ICE 4000 のサポート .................................... 213 MPLAB IDE v8 プロジェクト、インポート ............ 191 MPLAB PM3 のサポート ............................................. 213 MPLAB REAL ICE インサーキット エミュレータのサポート ........................................ 213 MPLAB VDI のサポート .............................................. 213 MPLAB X IDE と MPLAB IDE v8 の相違点 ............. 203 MPLAB X IDE のインストール .....................................31 MPLAB X IDE のインストールとセットアップ .........31 MPLAB X Store ............................................................. 227 myMicrochip 変更通知サービス ................................. 300 prjMakefilesGenerator .................................................. 284 PRO MATE II のサポート ............................................ 213 Program Device for Debugging .................................. 117 Program Device for Debugging Main Project........... 168 Program Device for Production .................................. 117 [Program Memory] ウィンドウ ................................... 243 Programmer to Go PICkit 3 ......................................... 117 Programmer to Go PICkit 3 Main Project ................. 170 [Programmer] メニューの相違点................................ 210 Project Group ................................................................. 217 Project Properties........................................ 171, 217, 257 [Project Properties] ウィンドウ .................................. 172 Projects ........................................................................... 170 [Projects] ウィンドウの表示 ....................................... 187 [Project] メニューの相違点 ......................................... 209 N Q [Navigate] メニュー ...................................................... 220 [Navigator] ウィンドウ ................................................ 172 New Breakpoint............................................................. 223 New Data Breakpoint ................................................... 168 New File ................................................................. 170, 217 New Project ...........................................................170, 217 New Run Time Watch ..........................................168, 223 New Runtime Watch .................................................... 267 New Watch .......................................... 168, 169, 223, 267 Next Bookmark ............................................................. 169 Next Error ...............................................................171, 220 Quick Search ................................................................. 169 O Online Docs and Support ............................................ 227 Open File................................................................ 171, 217 Open Project .........................................................170, 217 Open Recent File.......................................................... 217 Open Recent Project.................................................... 217 Open Required Projects .............................................. 170 [Option Description] タブ ...............................................85 OutOfMemoryError ....................................................... 152 [Output] ウィンドウ ..................................................... 172 P Page Setup .................................................................... 217 [Pallette] ウィンドウ .................................................... 172 Paste ....................................................................... 169, 218 Paste Formatted ........................................................... 218 Paste from History ........................................................ 218 Pause...................................................................... 169, 223 PC-Lint のサポート ...................................................... 213 PC プロファイリング .................................................. 168 PDF ................................................................................. 212 [Peripherals] ウィンドウ ............................................. 249 PIC AppIO ...................................................................... 168 PICkit 1 のサポート ...................................................... 213 PICkit 2 のサポート ...................................................... 213 PICkit 3 のサポート ...................................................... 213 PICSTART Plus のサポート ....................................... 213 Plugins ............................................................................ 224 Preserve Memory ......................................................... 116 Previous Bookmark ...................................................... 169 Previous Error .......................................................171, 220 Print ................................................................................. 217 Print to HTML ................................................................ 217 2016 Microchip Technology Inc. R Read Device Memory ................................................... 117 Read Device Memory Main Project ........................... 170 Read Device Memory to File .............................. 117, 170 Read EE/Flash Data Memory to a File...................... 117 Reading, Recommended ............................................... 12 Readme ............................................................................ 12 Redo ....................................................................... 169, 218 Refactor Change Function Parameter ............................... 222 Copy ........................................................................ 222 Move ........................................................................ 222 Rename .................................................................. 222 Safely Delete.......................................................... 222 [Refactor Preview] ウィンドウ ................................... 172 [Refactor] メニュー ....................................................... 222 [Remote Terminal] ウィンドウ .......................... 171, 172 Remove Trailing Spaces .............................................. 221 Repeat Build/Run .......................................................... 222 Replace ........................................................................... 218 Replace in Projects .............................................. 169, 218 Reset ............................................................................... 223 Reset Windows.............................................................. 226 Reuse Output Tabs from Finished Processes ......... 261 RTDM を使った DMCI ............................... 116, 124, 128 RTOS Viewer のサポート ............................................ 213 Run Debugger/Programmer Self Test ....................... 224 Run File .................................................................. 170, 222 Run Main Project ........................................................... 170 Run Project............................................................ 170, 222 Run SQL ......................................................................... 171 Run Time Update Interval............................................ 267 Run to Cursor........................................................ 169, 223 [Run] アイコン ............................................................... 168 [Run] メニュー ...................................................... 222, 224 S Save ....................................................................... 171, 217 Save All .................................................................. 171, 217 Save All Modified Files Before Running Make......... 261 Save As ........................................................................... 217 Scan for compilers ........................................................ 262 Scan for external changes ........................................... 221 DS50002027D_JP - p.325 MPLAB® X IDE ユーザガイド [Search] ウィンドウ ..................................................... 172 Segmented Display Designer のサポート................ 214 Select All ........................................................................ 218 Select Identifier ............................................................. 218 Select in Classes .......................................................... 220 Select in Favorites ........................................................ 220 Select in Files ................................................................ 220 Select in Projects .......................................................... 220 Self Test ......................................................................... 224 [Services] ウィンドウ .................................................. 172 [Sessions] ウィンドウ ................................................. 172 Set Configuration .......................................................... 257 Set Main Project ........................................................... 222 Set PC at Cursor...................................................168, 223 [Set PC to Cursor] アイコン ....................................... 168 Set Project Configuration ............................................ 222 SFR ........................................................................... 15, 113 [SFRs] ウィンドウ........................................................ 246 Shift Left ......................................................................... 221 Shift Right....................................................................... 221 Show Breadcrumbs ......................................................... 219 Documentation ...................................................... 221 Editor Toolbar ........................................................ 219 Indent Guide Lines ............................................... 219 Method Parameters.............................................. 221 Non-printable Characters .................................... 219 Profiler Indicators during Run ............................. 261 Silent build ..................................................................... 260 [Simulator Analyzer] ウィンドウ ................................ 172 Simulator Stimulus ....................................................... 172 SN( シリアル番号 )..........................................................76 [Sources] ウィンドウ ................................................... 172 [Source] メニュー ......................................................... 221 SQL History ................................................................... 171 SQL, Keep Prior Tabs.................................................. 171 Stack Make Callee Current ............................................ 223 Make Caller Current ............................................. 223 Pop Last Debugger Call ...................................... 223 Pop To Current Stack Frame ............................. 223 Pop Topmost Call ................................................. 223 Start Page ....................................................... 38, 170, 227 Start Sampling IDE ....................................................... 170 Status Toolbar Action................................................... 168 Step Instruction .....................................................168, 223 Step Into .................................................................169, 223 Step Out .................................................................169, 223 Step Over ...............................................................169, 223 Step Over Expression .................................................. 169 Stop Build/Run .............................................................. 222 Stopwatch ..............................................................172, 225 Subversion ..................................................................... 224 Synchronize Editor with Views ................................... 219 [Terminal] ウィンドウ.......................................... 171, 172 Test File ................................................................. 170, 222 Test Project ........................................................... 170, 222 [Test Results] ウィンドウ ............................................172 [Threads] ウィンドウ ...................................................172 TODO ....................................................................... 91, 177 Toggle Bookmark ...............................................................220 Comment ................................................................ 221 Line Breakpoint......................................................223 Tool Help Contents .......................................................227 Toolbars ................................................................. 219, 228 [Tools] メニューの相違点 ............................................211 [Trace] ウィンドウ ........................................................172 U Undo ....................................................................... 169, 218 USB ................................................................................. 307 デバイスドライバのインストール ....................... 32 USB ブリッジ接続 ........................................................262 [User Comments] タブ ................................................... 85 [User ID Memory] ウィンドウ .....................................250 Userdir ............................................................................. 191 V ウォッチシンボルの .....................................................267 [Variables] ウィンドウ ................................. 68, 112, 172 [View] メニュー..............................................................219 [View] メニューの相違点 .............................................208 W [Watches] ウィンドウ................................... 68, 110, 172 10 進形式 ................................................................ 268 16 進形式 ................................................................ 268 HEX 形式 ................................................................ 268 バイナリ形式 .........................................................268 文字形式 ................................................................. 268 Web Browser......................................................... 171, 219 Windows OS での 8191 文字の制限 ..........................198 Windows XP と読み込み可能プロジェクト / ファイル......................................................................196 [Window] メニュー ........................................................225 [Window] メニューの相違点 ........................................211 X XC16 ツールチェーン .................................................... 78 XC32 ツールチェーン .................................................... 78 XC8 ツールチェーン....................................................... 78 XML Check DTD .............................................................173 Check File...................................................... 173, 222 Validate File .................................................. 173, 222 XSL Transform.......................................................173 XML ファイルタイプ ....................................................131 XY Data ........................................................................... 245 T Z [Tasks] ウィンドウ ....................................................... 172 [Team Chat] ウィンドウ .............................................. 172 Team Project ................................................................. 172 [Team] メニュー ........................................................... 224 Templates ...................................................................... 224 Zoom In ........................................................................... 171 Zoom Out ........................................................................ 171 DS50002027D_JP - p.326 あ アイコン 2016 Microchip Technology Inc. 索引 [Watches] ウィンドウ .......................................... 266 赤の感嘆符 ..................................................................... 180 赤の感嘆符ポイント..................................................... 180 赤のコンパイラパス........................................................87 アセンブラ ファイルタイプ ....................................... 131 コンフィグレーション、複数 ..................................... 155 さ サードパーティ製ハードウェア ツール .................... 167 サポートされるソフトウェア ブレークポイント.... 141 い し 異なるプラットフォームで使う場合の問題 ............ 193 インターネット アドレス、Microchip 社 ................. 300 シェルスクリプト ......................................................... 131 時間の短縮 ビルド ..................................................................... 136 シミュレートする周辺モジュールを クリックする ............................................................. 140 周辺モジュール ............................................................... 17 周辺モジュールメモリ ................................................. 113 シリアルポート接続 ..................................................... 262 新規プロジェクトの作成 ........................................ 47, 72 う ウィンドウ内のデータ入力 ........................................ 233 ウィンドウのフォーカス............................................. 233 ウェブサイト、Microchip 社 ...................................... 300 ウォッチアイコン ......................................................... 266 列を指定したフォーマットで表示 ............................ 267 ウォッチデータをエクスポート ................................ 267 ウォッチドッグ タイマ (Watchdog Timer) .............. 308 え エディタのコードのエラー ........................................ 180 エディタの使い方 ..................................................... 62, 92 エディタ用ツールバー............................................. 62, 92 エラー ............................................................................. 198 お 応答ファイル ................................................................. 198 お客様サポート ............................................................. 301 か 外部 Makefile ................................................................. 158 外部 make ファイル ........................................................72 き 既存ファイルのプロジェクトへの追加 .......................91 逆アセンブル リスティング ファイル ...................... 137 行ブレークポイント..................................................... 106 け 言語ツールオプション....................................................85 言語ツールのインストール ...........................................36 言語ツールのパス ..................................................... 57, 86 こ コードの実行 ........................................................... 65, 103 コードのステップ実行........................................... 67, 109 コードのデバッグ実行........................................... 65, 104 コードのリファクタリング ........................................ 142 コールグラフ ................................................................. 138 コールスタック ............................................................. 137 高速化 MPLAB X IDE........................................................ 151 コンパイラ オプション ..................................................56 コンパイラ サポートマーク ..........................................78 コンパイラ ライセンス 有効化 ..................................................................... 224 ローミング ............................................................. 224 コンパイラ ライセンスの取得 / 返却 ........................ 224 コンフィグレーション ビット ...........................115, 273 [Memory] ウィンドウ ........................................... 113 チュートリアル........................................................62 使い方 ..................................................................... 115 コンフィグレーション、全て .................................... 174 2016 Microchip Technology Inc. す スタック ハードウェア ........................................................... 14 ステータスバー ............................................................. 231 ステータスフラグ ......................................................... 140 ストップウォッチ ......................................................... 136 せ 全ウォッチの削除 ......................................................... 267 全ウォッチのリストファイルへのエクスポート ..... 267 選択したウォッチの削除 ............................................. 267 選択したウォッチのリストファイルへの エクスポート ............................................................. 267 そ ソース管理 ..................................................................... 142 相対パス ......................................................................... 191 即座に実行を開始する ................................................. 260 その他の [Memory] ウィンドウ .................................. 248 た ターゲットへの接続 ....................................................... 36 代替プロジェクト HEX ファイル ............................... 124 タプル、ブレークポイント ......................................... 107 ち チェックサム ......................................... 64, 102, 140, 173 HEXMATE .............................................................. 101 ユーザ ID として ................................................... 100 チェックサムを使ったユーザ ID ................................ 100 つ ツールごとのヘルプ ..................................................... 227 ツールサポート マーク .................................................. 76 ツールバーのカスタマイズ ......................................... 168 ツールバーボタンの追加 ............................................. 168 て データ EEPROM ............................................................. 15 データ競合エラー ......................................................... 129 データメモリ ................................................................. 113 停止、ウィンドウの更新時 ......................................... 233 デスクトップ .................................................... 37, 40, 215 各部 ......................................................................... 215 ペイン ....................................................53, 61, 63, 82 デバイス ID .................................................................... 253 DS50002027D_JP - p.327 MPLAB® X IDE ユーザガイド デバイスのプログラミング................................... 70, 116 デバッガ / プログラマ オプション ...............................55 デバッガが停止した場合、ソースファイルを開き、 エディタ内の行を検索します。.............................. 260 デバッグ コンフィグレーション ............................... 157 デバッグビルド コンフィグレーション ...........204, 209 デバッグ読み出し ......................................................... 116 と 特殊文字 ......................................................................... 191 は バージョン管理 ............................................................. 142 ハードウェア ツール アクティブな接続 ................................................. 260 ハードウェア ツールオプション ..................................84 ハードウェア ツールの常時接続 .......................103, 104 ハードウェア ツールの選択 ..........................................76 ハードウェア ツールの電圧 ....................................... 140 ハードウェア ツールのファームウェア バージョン ................................................................. 140 ハードウェア ブレークポイント 使用中の数 ............................................................. 141 利用可能数 ............................................................. 141 パス、相対または絶対 ....................................................88 汎用シリアルポート ..................................................... 262 ひ 非アクティブ接続 ......................................................... 140 ビルド コンフィグレーション ...........................204, 209 ビルドステータス ......................................................... 253 ビルドプロパティ ファイル ................................................................. 258 プロジェクト ......................................................... 257 ビルドプロパティの設定................................................98 ヒントは見えません。................................................... 194 ふ ファームウェア バージョン ....................................... 253 ファイル ウィザード.......................................................89 ファイル プロパティ.................................................... 258 ファイルおよびフォルダ プロパティ ..........................96 ファイルパスのオプション......................................... 261 ファイル名 ..................................................................... 191 ファイルレジスタ ......................................................... 113 フォルダ名 ..................................................................... 191 複合ブレークポイント ................................................. 107 複数コンフィグレーション......................................... 155 複数プロジェクト ......................................................... 153 プラグイン ..................................................................... 146 フラッシュメモリ ......................................................... 113 プリビルド プロジェクト ........................................... 123 プリビルドおよびポストビルド マクロ ......................99 ブレークポイント ................................................... 66, 106 AND......................................................................... 107 ウィンドウ ............................................................. 107 行 ............................................................................. 106 シーケンス ............................................................. 107 ダイアログ ............................................................. 106 タイミング ............................................................. 108 タプル ..................................................................... 107 リソース .........................................................108, 139 DS50002027D_JP - p.328 プログラム カウンタ ...................................................... 14 プログラムメモリ .........................................................113 プログラムメモリとデータメモリ ............................... 14 プロジェクト ウィザード ................................. 47, 72, 73 プロジェクト ファイルの Zip ................... 166, 217, 256 プロジェクト ファイルのアーカイブ ........................217 プロジェクト ファイルの新規作成 .............................. 89 プロジェクト ファイルのパッケージ化 ........... 166, 256 プロジェクト プロパティ 既定値................................................................. 54, 83 言語ツール ............................................................... 85 デバッガ / プログラマ ............................................ 55 ハードウェア ツール .............................................. 84 プロジェクトの移動 .....................................................191 プロジェクトのビルド .......................................... 64, 102 プロジェクト、複数 .....................................................153 プロジェクトへの新規ファイルの追加 ....................... 58 プロファイリング .........................................................142 へ 並列 make ....................................................................... 261 ほ 本書について 表記規則 ................................................................... 11 本書の構成 レイアウト ................................................................. 9 ま マーク HW および SW ツール ........................................... 76 コンパイラ ............................................................... 78 め メニュー.......................................................................... 216 メニュー項目とボタンの灰色表示または非表示 ..... 231 メモリ プログラムとデータ ............................................... 14 メモリ スタータキットのサポート ............................213 メモリゲージ ................................................................. 140 メモリサイズ ( プログラムメモリの ウォッチシンボルのユーザ定義サイズ ................. 267 も モータ制御アプリケーション ................... 116, 124, 128 ゆ ユーザ ID......................................................................... 113 よ 抑止可能メッセージ ....................................................... 88 読み込み可能ファイル .................................................124 読み込み可能プロジェクト .........................................124 読み出し専用ファイル、プロジェクトのビルド ..... 144 ら ライブラリ コンフィグレーション タイプ ................. 98 ライブラリ ファイル ...................................................... 93 ライブラリ プロジェクト ............................................130 ライブラリ等のファイルのプロジェクトへの 追加 ................................................................................ 93 2016 Microchip Technology Inc. 索引 り リセット ......................................................................... 168 リセット時に main で停止する .................................. 260 リセット時にリセットベクタ位置で停止する ........ 260 リセットベクタ 停止 ......................................................................... 260 リセット ................................................................. 260 リセットベクタ位置で停止する ................................ 260 リビジョン管理 ............................................................. 142 リファクタリング ......................................................... 185 リモート Ethernet ツール ........................................... 262 リモート USB ツールブリッジ .................................. 262 リリースビルド コンフィグレーション ........... 204, 209 リンクの順序 ....................................................................91 れ レガシー MPLAB プロジェクトのインポート......... 120 連携 ................................................................................. 145 ろ ローカル履歴 ................................................................. 142 ログファイル オプション ..............................................88 ログファイル、MPLAB X IDE ................................... 167 ログファイル、NetBeans プラットフォーム.......... 167 わ ワークスペース (MPLAB v8) ...................................... 206 2016 Microchip Technology Inc. DS50002027D_JP - p.329 各国の営業所とサービス 北米 アジア / 太平洋 アジア / 太平洋 ヨーロッパ 本社 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 480-792-7200 Fax: 480-792-7277 技術サポート : http://www.microchip.com/ support URL: www.microchip.com アジア太平洋支社 Suites 3707-14, 37th Floor Tower 6, The Gateway Harbour City, Kowloon Hong Kong Tel: 852-2943-5100 Fax: 852-2401-3431 中国 - 厦門 Tel: 86-592-2388138 Fax: 86-592-2388130 オーストリア - ヴェルス Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 中国 - 珠海 Tel: 86-756-3210040 Fax: 86-756-3210049 デンマーク - コペンハーゲン Tel: 45-4450-2828 Fax: 45-4485-2829 インド - バンガロール Tel: 91-80-3090-4444 Fax: 91-80-3090-4123 フランス - パリ Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 インド - ニューデリー Tel: 91-11-4160-8631 Fax: 91-11-4160-8632 ドイツ - デュッセルドルフ Tel: 49-2129-3766400 アトランタ Duluth, GA Tel: 678-957-9614 Fax: 678-957-1455 オーストラリア - シドニー Tel: 61-2-9868-6733 Fax: 61-2-9868-6755 中国 - 北京 Tel: 86-10-8569-7000 Fax: 86-10-8528-2104 オースティン、TX Tel: 512-257-3370 中国 - 成都 Tel: 86-28-8665-5511 Fax: 86-28-8665-7889 ボストン Westborough, MA Tel: 774-760-0087 Fax: 774-760-0088 中国 - 重慶 Tel: 86-23-8980-9588 Fax: 86-23-8980-9500 シカゴ Itasca, IL Tel: 630-285-0071 Fax: 630-285-0075 クリーブランド Independence, OH Tel: 216-447-0464 Fax: 216-447-0643 ダラス Addison, TX Tel: 972-818-7423 Fax: 972-818-2924 デトロイト Novi, MI Tel: 248-848-4000 ヒューストン、TX Tel: 281-894-5983 インディアナポリス Noblesville, IN Tel: 317-773-8323 Fax: 317-773-5453 ロサンゼルス Mission Viejo, CA Tel: 949-462-9523 Fax: 949-462-9608 ニューヨーク、NY Tel: 631-435-6000 サンノゼ、CA Tel: 408-735-9110 カナダ - トロント Tel: 905-673-0699 Fax: 905-673-6509 DS50002027D_JP - p.330 中国 - 東莞 Tel: 86-769-8702-9880 中国 - 杭州 Tel: 86-571-8792-8115 Fax: 86-571-8792-8116 中国 - 香港 SAR Tel: 852-2943-5100 Fax: 852-2401-3431 中国 - 南京 Tel: 86-25-8473-2460 Fax: 86-25-8473-2470 中国 - 青島 Tel: 86-532-8502-7355 Fax: 86-532-8502-7205 中国 - 上海 Tel: 86-21-5407-5533 Fax: 86-21-5407-5066 中国 - 瀋陽 Tel: 86-24-2334-2829 Fax: 86-24-2334-2393 中国 - 深圳 Tel: 86-755-8864-2200 Fax: 86-755-8203-1760 中国 - 武漢 Tel: 86-27-5980-5300 Fax: 86-27-5980-5118 中国 - 西安 Tel: 86-29-8833-7252 Fax: 86-29-8833-7256 ドイツ - カールスルーエ Tel: 49-721-625370 インド - プネ Tel: 91-20-3019-1500 ドイツ - ミュンヘン Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 日本 - 大阪 Tel: 81-6-6152-7160 Fax: 81-6-6152-9310 イタリア - ミラノ Tel: 39-0331-742611 Fax: 39-0331-466781 日本 - 東京 Tel: 81-3-6880-3770 Fax: 81-3-6880-3771 イタリア - ヴェニス Tel: 39-049-7625286 韓国 - 大邱 Tel: 82-53-744-4301 Fax: 82-53-744-4302 オランダ - ドリューネン Tel: 31-416-690399 Fax: 31-416-690340 韓国 - ソウル Tel: 82-2-554-7200 Fax: 82-2-558-5932 または 82-2-558-5934 ポーランド - ワルシャワ Tel: 48-22-3325737 マレーシア - クアラルンプール Tel: 60-3-6201-9857 Fax: 60-3-6201-9859 マレーシア - ペナン Tel: 60-4-227-8870 Fax: 60-4-227-4068 フィリピン - マニラ Tel: 63-2-634-9065 Fax: 63-2-634-9069 スペイン - マドリッド Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 スウェーデン - ストックホルム Tel: 46-8-5090-4654 イギリス - ウォーキンガム Tel: 44-118-921-5800 Fax: 44-118-921-5820 シンガポール Tel: 65-6334-8870 Fax: 65-6334-8850 台湾 - 新竹 Tel: 886-3-5778-366 Fax: 886-3-5770-955 台湾 - 高雄 Tel: 886-7-213-7830 台湾 - 台北 Tel: 886-2-2508-8600 Fax: 886-2-2508-0102 タイ - バンコク Tel: 66-2-694-1351 Fax: 66-2-694-1350 07/14/15 2016 Microchip Technology Inc.
© Copyright 2024 Paperzz