今回はPICマイコンの開発環境「MPLABX IDE」の概要と、インストール手順について解説します。
今回の説明
PICマイコン電子工作入門の基礎編は、次のステップで説明しています。
この記事の説明は「❸ プログラムを作る」のうち、「MPLABX IDEの概要とインストール手順」を説明します。
- LEDを電池と抵抗のみで光らせる回路を組み立てる
PICマイコンの回路を組み立てる前に、ブレッドボードの取り扱いに慣れておくことにします。電池、抵抗、LEDのみを使って、ブレッドボード上に回路を組み立ててLEDを光らせてみます。ここでは電池、抵抗、発光ダイオードの回路記号と回路図の説明をして、回路図からブレッドボードに組む方法を説明します。まずはブレッドボードに慣れましょう! - PICマイコンのベース回路を組む
PICマイコンのはじめの一歩の回路は、LEDを1秒に1回光らせるだけの回路です。
この回路をブレッドボードに組み立てます。 - プログラムを作る ⬅︎ 今回
LEDを1秒に1回光らせるプログラムを作成します。 - PICマイコンに書き込んで動作させる
作成したプログラムをPICマイコンに書き込んで動作させてみます。 - ベース回路にスイッチを追加
LEDの点滅をスイッチで開始させるために、ベース回路にスイッチを追加します。
これまではLEDを光らせる、という出力制御をしましたが、今度はPICマイコンで外部からスイッチの信号を入力する方法を習得します。 - ベース回路にブザーを追加
スタートスイッチ付きの、1秒に1回光らせる回路を作りましたので、ブザーを追加してタイマーとして完成させます。
PICマイコン開発環境概要
今回の記事から、PICマイコンのプログラム作成のステップに入ります。
今回と次回の記事で、次の項目について説明します。
- PICマイコンのプログラム開発概要(今回の記事)
PICマイコンプログラムの開発は、Microchip社から無償で提供されている「MPLAB X IDE」というアプリケーションを使用します。
最初に、このMPLAB X IDEがどのようなものか解説します。 - 開発アプリのインストール手順(今回の記事)
MPLAB X IDEをインストールします。 - プログラム開発の流れ(次回の記事)
PICマイコンのプログラム開発の流れを説明します。 - プロジェクト作成・プログラム作成・ビルド・書き込み・動作確認(次回の記事)
1秒に1回、LEDを点滅させるプログラムを使ってブレッドボード回路の動作確認をします。
作成したブレッドボード回路が動作するかの確認を目的として、まずはプログラムをそのままコピペして動作確認します。
最初はプログラム自体の解説はせず、まずはプログラム開発の全体の流れを確認いただくことを目的としています。
PICマイコンに慣れるには、まずは開発の最初から最後まで、具体的に手を動かしてどんな感じか体験してみるのがよいと思います。
途中ちょっとぐらいわからないことがあっても問題ありません。
まずは全体の流れを知っていただければと思います。
プログラムの中身は動作確認が終わったら詳細に説明していきますので、細かいところにとらわれず、どのようにPICマイコンを動かすのか、一緒に体験していきましょう!
PICマイコンのプログラム開発環境の概要
MPLAB X IDE
PICマイコンのプログラムは、Microchip社から提供されている無償の「MPLAB X IDE」というアプリケーションを使用して開発します。
次の図はMPLAB X IDEを起動した画面で、このウィンドウでPICマイコンのプログラムを開発、ビルド、PICマイコンへの書き込みまで行います。(macOSのスクショですが、Windowsも同じ画面です)

注意点としては、MPLAB X IDEアプリケーション本体とCコンパイラは別物になっている、という点です。
「コンパイラ」は人が書いたプログラムをコンピュータが理解できるコード(機械語と呼ばれます)に変換するソフトウェアです。
この入門シリーズではC言語でプログラムを開発しますので、Cコンパイラが必要になります。
そのため、MPLAB X IDEアプリケーション本体に続いて、Cコンパイラのインストールも必要になります。
Cコンパイラ
PICマイコン用のCコンパイラは、「XC8」「XC16」「XC32」という3種類がMicrochip社から提供されています。
この3種類コンパイラの使い分けですが、PICマイコンの型番(何ビットマイコンか)により、どのコンパイラを使うか決まります。
例えば、今回使用しているPIC12F1822は8ビットマイコンですので、XC8コンパイラを使用することになります。
XC16、XC32は、それぞれ16ビット、32ビットのPICマイコン用のコンパイラです。(何ビットマイコンかは通販サイトの商品説明欄やデータシートに書かれています)
これらのコンパイラは、無償版モードと有償版モードの2種類の動作モードがあります。
通常のインストールでは無償版モードで動作しますが、有償ライセンスを購入してそのライセンス番号を入力すると有償版モードで動作するようになっています。
となると、無償版ではできることがかなり限られるのでは?という心配が出てくるかもしれませんね。
ここで無償版と有償版の違いについて簡単に説明します。
MPLAB X IDE上で作成したC言語のプログラムは、コンパイラによりPICマイコンが理解できるコードに変換されます。このコードが、PICkitを介してPICマイコンに書き込まれます。
無償版と有償版の大きな違いは、この生成されるコードがどの程度最適化されているかになります。
有償版の方が、生成されるコードはサイズが小さく、効率もよくなっています。
ここでいう「効率がよい」というのは、生成されるコードのサイズがなるべく小さく、動作速度がなるべく速い、という観点になります。
ある程度の規模のプログラムになると、無償版で生成したコードのサイズが大きくなり、PICマイコンのメモリ容量を超えてしまい書き込めない、というケースがあります。
同じプログラムでも、有償版で生成したコードはサイズが小さく、PICマイコンに書き込めることがあります。
となるとやはり有償版の方がいいような気もしますよね。
でも有償版は意外に価格が高いんです。現在は1ヶ月ごとのサブスクリプションのみでライセンスが提供されていて、1ヶ月約7,000円!です。(2025年3月時点)
この価格であれば、PICマイコン入手するときに1ランク上の余裕があるモデルを購入する、という選択をした方が良いと思います。(どうしても有償版を使いたい、ということであれば1ヶ月だけサブスクするのもありかもしれませんね…)
このような背景から、個人ユースの場合は無償版でも問題ないと思います。
インストールするコンパイラですが、この入門シリーズ記事ではXC8コンパイラしか使いませんので、まずはXC8コンパイラのみをインストールすることをお勧めします。XC16、XC32コンパイラは必要になった段階でインストールするのが得策かな、と思っています。
今回のインストール作業でXC16とXC32を一緒にインストールしても、将来使う状況になったときに結局新しいバージョンがリリースされていて、再度インストール、という可能性が高いためです。
今回のインストール作業が終わると、次のようなソフトウエア構成となります。MPLAB X IDE(青色部分)とXC8コンパイラ(緑色部分)は別のアプリケーションになっています。
MPLAB X IDEでC言語のプログラムをビルドする場合、MPLAB X IDEがXC8コンパイラを呼び出しています。
それではいよいよインストール作業を始めましょう!
MPLAB X IDEとXC8コンパイラのインストール
インストール前の準備
これからMPLAB X IDEとXC8コンパイラをインストールしますが、その前に準備をしておきます。
今後、MPLAB X IDEを使用してプログラムを作成するわけですが、作成したプログラムをどこに格納するか決めておきたいと思います。
MPLAB X IDEでは、ひとつのPICマイコンプログラムはひとつの「プロジェクト」という形でフォルダで管理します。
それぞれのプロジェクトは、デフォルトではユーザフォルダのすぐ下に「MPLABXProjects」という名称でフォルダが作成され、その中にそれぞれのプロジェクトのフォルダで管理されるようになっています。(MPLABXProjectsというフォルダはMPLAB X IDEが自動的に作成します)
でも、ユーザフォルダのすぐ下はあまり余計なフォルダを作りたくない、という方も多いのではないでしょうか?
自分で作成したファイルは「書類」フォルダや「ドキュメント」フォルダの中に作成したい、という方も多いと思います。
そこで、次のように「書類」フォルダ(macOS)や「ドキュメント」フォルダ(Windows)の中に、「MPLABX」という名称でフォルダを作成して、ここのプロジェクトファイルを格納していくことにしたいと思います。

フォルダ名称は「MPLABX」でなくても構いません。ご自身の好きな名称で作成しておいていただければと思います。
なお、デフォルトままでいい、という方は特に作業は必要ありません。
また、「書類」「ドキュメント」フォルダ以外で作業したい場合は、これからの説明をご自身のフォルダに置き換えて作業していただければと思います。
プロジェクトフォルダを作成したら、いよいよインストール作業です!
インストール手順概要
これからMPLAB X IDEとXC8コンパイラをインストールしますが、最初に全体の手順の概要を説明します。
- MPLAB X IDEのインストーラをダウンロードします
- ダウンロードしたインストーラを起動して、MPLAB X IDEをインストールします
- MPLAB X IDEのインストール手順の最後に、XCコンパイラをダウンロード、インストールするか聞かれます。YESを選択するとXCコンパイラのインストーラが自動的にダウンロードされて、インストーラが起動します。この手順によりXCコンパイラが追加でインストールされます。
この手順でインストールを進めます。
❶ MPLAB X IDEインストーラのダウンロード
最初に、次のリンクにアクセスします。MPLAB X IDEのダウンロードページが表示されます。
https://www.microchip.com/en-us/tools-resources/develop/mplab-x-ide
次のようなページが表示されますので、「Download MPLAB X IDE」というボタンをクリックします。

クリックすると、次のようなOSごとのMPLAB X IDEが表示されます。ご利用のOSのインストーラを「Download」というダウンロードリンクをクリックしてダウンロードします。

❷ MPLAB X IDEのインストール
それではMPLAB X IDEのインストールを始めましょう!
ダウンロードしたMPLAB X IDEインストーラを起動してください。インストール手順はmacOS、Windowsとも同じです。
macOSの場合、OSバージョンによってはログインユーザのパスワードの入力が求められますので、入力して進めます。これは、MPLAB X IDEがシステムレぺルの変更を加えるため、認証ステップが必要になっているためです。
インストーラを起動するとWelcom画面が表示されますので「Next >」ボタンをクリックして進めます。

次に使用許諾契約画面が表示されます。「I accept the agreement」を選択して「Next >」ボタンをクリックします。

次はインストール先フォルダなどの設定です。それぞれの項目について簡単に説明します。

「Installation Directory」はMPLAB X IDEのインストール先のフォルダ位置ですが、特に理由がない限りデフォルトのままで問題ありません。
「Proxy Settings」はプロキシの設定で、これもデフォルトで問題ありません。MPLAB X IDEはMicrochip社のサーバにアクセスして最新情報を取得するため、プロキシ設定が正しくないとアクセスできないことがあります。そのための設定ですが、デフォルトは「システム設定に従う」という状態ですので、特に理由がなければデフォルトにしておきます。
最後の2つのチェックボックスは次のような内容になります。
- 上のチェックボックス(I consent to allow…)
MPLAB X IDEの利用状況などを匿名でMicrochip社に送信して良いかかどうかの設定です。送信しない場合はチェックを外します。 - 下のチェックボックス(I would like to enable….)
MPLAB X IDE上に、最新情報を表示するかどうかの設定です。チェックしておくと最新情報が受け取れますが、アプリに関する情報がMicrochip社に送信されます。(その情報がないとどの最新情報を表示すれば良いかわからないためかな、と思います)
また、Microchipアカウントを持っている場合は製品情報のメールが届きます。
設定を確認後、「Next >」ボタンをクリックします。
次はインストールするアプリケーションの選択です。次の画面のような選択をお勧めしますが、ちょっと???って感じかもしれませんので、それぞれの項目を説明します。

この画面の上の2つのチェックボックスは次のような意味です。
- MPLAB X IDE (Integrated Development Environment)
MPLAB X IDE本体アプリをインストールするかどうかです。これは必須ですのでチェックはONのままにします。 - MPLAB IPE (Integrated Programming Environment)
PICkitを通してPICマイコンをPCに接続した状態で、PICマイコンの中身を調べたり、メモリを消去したりなど、個別の制御ができるアプリケーションです。MPLAB X IDEとは別アプリケーションです。インストールしておいて損はないので、チェックはONのままで問題ありません。
次の4つのチェックボックスは、MPLAB X IDEでどのPICマイコンの開発をできるようにするか、という選択です。
例えば一番上の「8-bit MCUs」を選択すると、8ビットのPICマイコンのプログラムを作成できるようになります。
なぜこのような選択肢があるか簡単に説明しておきます。
MPLAB X IDE上でPICマイコンのプログラムを作成しますが、そのプログラムはそれぞれのPICマイコン型番に合わせたコードに変換されて、PICマイコンに書き込まれます。
つまり、「プログラムからコードへの変換」はPICマイコンの型番に合わせる必要があるんです。そのため、MPLAB X IDEはそれぞれのPICマイコンの詳しい仕様の情報が必要になります。
上のインストールステップでは、どのPICマイコンの情報をインストールするか選択するようになっています。
「8-bit MCUs」を選択すると8ビットのPICマイコン全ての情報がインストールされます。(新しいPICマイコンがリリースされると、それに合わせてこの情報もアップデートされます。アップデート通知はMPLAB X IDE上に表示されます)
この情報は「8-bit MCUs」であれば、全ての8ビットPICマイコンの情報を含んでいるため、とてもサイズが大きく、8ビットPICマイコンの場合、2.5GBにもなります。
そのため、インストールに時間がかりますし、ディスクの容量も消費しますし、さらにはアップデートがあるとそのたびにダウンロードの案内が表示されてしまいます。
また、このファイルはMPLAB X IDE上で、あとからダウンロードすることも可能です。
そこで、この画面では「8-bit MCUs」だけを選択することをお勧めします。
設定を確認したら「Next >」ボタンをクリックします。
これで準備ができましたのでインストールを開始します。「Next >」ボタンをクリックするとインストールが始まります。

インストール途中の画面です。

インストールが終わると、次のような画面が表示されます。
この画面は、続けてXC8コンパイラもインストールするかどうかの確認画面です。インストールしますので、チェックをONにしたまま「Next >」ボタンをクリックします。

続いて、XC8コンパイラのインストールが自動的に始まります。
❸ XC8コンパイラのインストール
MPLAB X IDEのインストールに続いて、自動的にXC8コンパイラのインストーラがダウンロードされてインストールが始まります。
最初にWelcom画面が表示されますので、「Next >」ボタンをクリックします。

次に使用許諾契約画面が表示されます。「I accept the agreement」を選択して「Next >」ボタンをクリックします。

次は無償版か有償版かの選択です。無償版で使用しますのて「Free」が選択されているか確認して、「Next >」ボタンをクリックします。

次はインストール先のフォルダの設定です。特に理由がない限りデフォルトのままで問題ありません。

次は設定を適用するユーザの確認です。これらはデフォルトで問題ありません。

上の項目(Apply settings…)は、macOSやWindowsで複数のユーザアカウントを作成して使用している場合、すべてのユーザに設定を適用する場合ONにします。現在のログインユーザのみに適用する場合はOFFにします。
下の項目(Add xc8…)は、ターミナルやシェルなどのCUI環境でコンパイラを利用する場合、そのディレクトリパスを環境変数に設定するかどうかの設定です。CUI環境で利用しない限りOFFで問題ありません。
設定を確認後、「Next >」ボタンをクリックします。
これでインストール設定がか終わりました。次の画面で「Next >」ボタンをクリックするとインストールが始まります。

インストール途中は進捗が表示されます。

最後に再度ライセンスの確認です。(有償版の宣伝のような内容です。さっきFreeを選択したのに…)

これでXC8コンパイラのインストールが終わりました。「Finish」ボタンをクリックするとインストーラが終了します。

これでMPLAB X IDEとXC8コンパイラのインストールが完了しました。お疲れさまでした!
ところで、あとからXC16やXC32のコンパイラをインストールした場合、別途インストーラをダウンロード、インストールする必要があります。その手順については記事に最後に補足でまとめましたので、必要に応じてご確認ください。
プロジェクトフォルダの設定
最後にプロジェクトフォルダを設定します。
最初の方で説明しましたが、デフォルトのプロジェクトフォルダは、ユーザフォルダ直下の「MPLABXProjects」フォルダに設定されています。
これから、プロジェクトフォルダを最初に作成した「書類」フォルダ(macOS)、「ドキュメント」フォルダ(Windows)の下の「MPLABX」フォルダに設定します。
それでは、MPLABX IDEを起動してください。macOSの場合は、「アプリケーション」フォルダ→「microcip」フォルダ→「mplabx」フォルダ→「バージョン番号」フォルダ→「MPLAB X IDE vX.XX.app」です。
Windowsの場合はデスクトップのショートカット「MPLAB X IDE vx.xx」か、ショートカットがなければスタートメニューから起動します。
起動後、次の手順でプロジェクトフォルダの設定を変更します。
macOSの場合、アプリケーションメニュー(MPLAB X IDEメニュー)の「Settings…」を選択します。
Windowsの場合、「Tools」メニューから「Options」メニューを選択します。
選択すると環境設定ダイアログが表示されますので、次の手順で自分で作成したプロジェクトフォルダを指定します。
最初にEmbeddedアイコンをクリック、次にGeneric Settingsタブを選択、最後に「…」ボタンをクリックするとプロジェクトのフォルダか変更できます。
macOSの場合

Windowsの場合

なお、MPLABXの初回起動時には、ユーザフォルダのすぐ下に「MPLABXProjects」というフォルダが作成されます。このフォルダは使用しませんので削除します。
これでPICマイコンのプログラムを開発する準備ができました。
次回は、MPLABX IDEで開発をどのような感じで進めるのか、全体像をつかむために作成したブレッドボードを実際に動作させてみます。
【補足】XCコンパイラのダウンロード
XCコンパイラを個別にインストールしたい場合、それぞれのインストーラをダウンロードしてインストールする必要があります。
そこで、インストーラのダウンロード手順について補足しておきます。
次のリンクにアクセスします。MPLAB X IDEのダウンロードページが表示されます。
https://www.microchip.com/en-us/tools-resources/develop/mplab-xc-compilers
次のようなXCコンパイラのページが表示されます。このページにはそれぞれのコンパイラへのリンクがあります。例えばXC8コンパイラであれば「View XC8 Compiler Downloads」というボタンを探してクリックします。XC16、XC32コンパイラについても同様です。

次のXC8コンパイラのページが表示されたら、「View Downloads」ボタンをクリックします。

次のようにOSごとのXC8コンパイラのダウンロードリンクが表示されますので、ご自身のOSのインストーラを「Download」というダウンロードリンクをクリックしてダウンロードします。

インストール手順については、MPLAB X IDEのインストール手順で説明した内容と同じになります。
更新履歴
日付 | 内容 |
---|---|
2016.8.17 | 新規投稿 |
2018.11.22 | スクリーンショットを最新版に更新 |
2018.11.23 | 画像リンク修正 |
2022.1.31 | PICkitの対応マイコン確認方法の記述削除。Microchip社からの情報がなくなり、PICKitのファームウエアバージョンアップで最新マイコンに対応されているとのこと |
2023.4.5 | Add xc8 to the PATHのオプション設定記述を変更 |
2025.1.30 | 最新版の内容に更新 |
2025.3.28 | 導入部分説明変更 |
いつもお世話になっております。とても助かっています!
さて、このページにリンクが配置されている下記からはMPLAB X IDEとXC8コンパイラのインストーラをダウンロードできませんでした。
https://www.microchip.co.jp/
下記にリンクを更新した方が良さそうです。※その後の画面キャプチャーも差し換えるとなるとお手間になってしまいますが・・・。
https://www.microchip.com/
コメントどうもありがとうございます。
記事の内容が古くなり、ご迷惑をおかけして申し訳ございません。
現在、このサイトの入門シリーズの内容を順次最新情報に更新しております。この記事の更新はまだ先になりそうですが、影響が大きいようですので優先してアップデートしたいと思います。
なお、XC8コンパイラは次のリンクからダウンロードできますので、ご参考にしていただければと思います。
https://www.microchip.com/en-us/tools-resources/develop/mplab-xc-compilers/xc8#downloads
また何かありましたらコメントいただければと思います。
いつもツールラボ様にお世話になっております。
MPLABの機能についてお聞きしたいです。
機能のなかに書き込みと読み取り機能があるのですが、この読み取り機能とはいったいどのような事をしてくれるんでしょうか?
自分で考えてた結果とは異なったため疑問に思いお聞きした次第です。
私が試してみたのは、12F1822にて簡単なプログラムを書き、新たに別のプロジェクトを作り読み取り機能を使いました。
結果pickit3のメモ欄には
The following memory area(s)will be read:
program memory:start address=0x0,end address=0x7ff
configuration memory
EEData memory
User Id memory
Read complete
と出ており読み取ってはいるようなのですが、プログラムがMPLAB上に出てくるわけではないのでしょか?
読み取り機能の正しい使い方について教えて頂きたいです。
よろしくお願いします。
ご質問どうもありがとうございます。
読み取り機能ですが、書き込みボタンの隣にあるボタンのことですよね。
このボタンをクリックすると、接続されているPICマイコンからデータを読み取ってくれます。
この読み取るデータですが、C言語のプログラムを読み取れるわけではありません。読み取るデータは以下のものになります。
・プログラムメモリのデータ
・Configurationメモリのデータ
・EEPROMのデータ
これらのデータは0x14FE354B…..などのような16真数のデータで読み取りされます。
決してC言語のプログラム自体が読み取れるものではありませんのでご注意ください。
また、書き込み時の設定によっては、これらのデータの読み取りは禁止することができるので、読み取り禁止の場合は読み取りこともできません。
例えば、メーカーが製品に組み込むPICマイコンのプログラムやデータを読み取れらては都合が悪い場合に読み取り禁止にします。
たびたびすみません。また雑談です。
eagleから派生してこのシリーズを読み始めました。
以前12F683を何度か使ったことがあり、そのときはPICKIT2を使っていました。MPLABもすっかり変わってしまい、今回Pickit3 を購入してトライしていますがTool Labsさんの解説がないとまた挫折してしまうところでした。
(PICKIT2でも1822に使えるのでしたか?)
それにしてもeagleもそうですがソフトのバージョンアップは良いことですが見た目からガラっと変わってしまうと年寄りにはツライです。
コメントどうもありがとうございます。
PICKIT2はデフォルトでは12F1822は書き込みできません。ただ、PICKIT2のファームを書き換えると新しいPICマイコンにも書き込みできるはずですが、PICKIT3をお持ちであれば、PICKIT3を使った方がいいと思いますよ。
確かにソフトはバージョンアップで色々と変わってしまいますので、バージョンアップのたびに戸惑ってしまいます。また最近のプログラミング言語はPython2→3や、Swift2→3のように結構変わってしまうこともあるので、最近は戸惑うことばかりです。
その点、電子回路は自然現象が対象なので仕様が変わらず安心して習得できるんですよね。自分の場合、電子回路系の書籍は中古で20年とか30年前の本を買うこともあります。それでも役に立つんですよね。
とは言っても、これからはハードとソフト、両方わからないと自由にものづくりができない世界になってきていますので、ハード、ソフト、バランスよく身につけて行きたいと思っています。