MENU

PICマイコンがVSCodeで開発可能に!導入からLチカまで

Lチカの様子

PICマイコンを製造しているMicrochip社から、MPLAB Tools for VS Codeが公開されています。PICマイコンやAVRマイコンが、VSCode上で開発できるようになったようです!拡張機能の導入からLチカまでを試してみました。

レジスタなどの設定コードを生成するMCC (MPLAB Code Configurator)や、AIコーディングアシスタントも含まれているようです。

ただし、#pragma configの生成機能がないのが不便です。

目次

MPLABの導入

拡張機能(左のバー内 四角形が4つのアイコン)で、「mplab」と検索すれば出てきます。

拡張機能の検索結果

一番上の「MPLAB」は13個のツールがセットになっているので楽でしょう。今回はこれをインストールしてみます。

ダイアログが表示された画面

このようなダイアログが表示されたら、「Trust Publishers & Install」を選びます。これでインストールが始まります。

左のバーにアイコンが追加された

インストールが完了すると、左のバーにMicrochip社のロゴと、MPLABの盾の形のアイコンが追加されます。初めてクリックする際は各種ソフトウェアのインストールが行われるため、時間がかかります。デバイスドライバのインストールを確認するダイアログがいくつか出ますが、すべてインストールします。

プロジェクトの作成

STEP
プロジェクトの作成
New project...を押します

盾のアイコンを押し、下の「PROJECTS」の右にある「New project…」をクリックします。

STEP
プロジェクト名の入力
プロジェクト名を入力します

任意のプロジェクト名を入力します。

STEP
プロジェクト パスの設定
プロジェクトのパスを入力します

プロジェクトのディレクトリのパスを選択します。Default Locationを選択した場合、Cドライブのユーザー直下のMPLABProjectsフォルダ内に作られます。今回はこれを選択しました。

STEP
デバイスの選択
デバイスを選択します

デバイス(使用するマイコンの型番)を入力・選択します。今回は入門に最適なPIC12F509を選択しました。

STEP
ダイアログが出たらYesする
ダイアログはYesをクリック

ダイアログが出たら、Yes を押します。

STEP
(初回)コンパイラのインストール
コンパイラのインストール

今回は初回なので、XC8コンパイラをインストールします。上のほうに出てきたら、Download and installをクリックします。コンパイラのセットアップ画面(インストーラー)が出るので、手順に従って進めます。時間がかかります。

プロジェクトの作成が完了すると、ワークスペースにmain.cなどが追加されますので、コードを書いていきましょう!

ビルド

ビルドは、画面の右上のほうか、左下のほうのプロジェクト名の右にある、虫とハンマーのアイコンをクリックして行います。

ビルドに成功すると、メモリ使用量が表示されます。

書き込み

PICKIT5などのデバッガ・書き込み装置をPCに接続し、左上のTOOLの右にある歯車マーク(Configure tool)をクリックします。Select toolに装置が選択されているのを確認します(今回はPICkit 5と表示されています)。

ツールの選択

PICkitから回路に電源供給を行う場合、「Power target circuit from PICkit 5」にチェックを入れ、希望の電圧値を入力します。チェックを入れない場合、外部から回路に電源供給が必要です。なお、流せる電流は少ないのでご注意ください。

ただ、環境の問題なのか、1回目の書き込み時に電源供給での書き込みはできませんでした。外部から電源を供給したら書き込めました。その次からは

電源の設定

書き込むには、左のバー内虫と再生マークのアイコンをクリックし、DEBUGを開きます。Run and Debugを押して、「MPLAB Debugger」を選択、その後RUN AND DEBUGの右にプルダウンが出るので、Program (プロジェクト名) を選択し、その左の再生ボタンをクリック。

Programを選択

config_1というのは間違えて作成してしまったもので(削除ができない?)なくても問題ありません。

書き込み完了

なぜか初回は電源供給での書き込みができなかったので、外部から5Vを供給することで書き込みが行えました。書き込みが完了すると、問題なくLEDが点滅しました。

#pragmaの生成機能がないのがかなり不便ですが、VSCodeの慣れた画面で開発が行えるのは良いですね。MPLAB X IDEは個人的に見づらい、使いづらい、眩しい等の不満がありました。

MCCもあるようなので、今回使用した12F509はMCC非対応ですが、今後様々な機能を試してみます。

今回のプログラム

すべての出力ピンを0.5秒ごとにON/OFFするLチカのプログラムです。

/**
 * @file main.c
 * @author Nonotchi
 * @date 2025-10-31
 * @brief Main function
 */

#include <xc.h>

#define _XTAL_FREQ 4000000  // クロックは4MHz

#pragma config MCLRE = OFF              // MCLRピンは入力ピンとして使用
#pragma config CP = OFF                 // プログラムメモリのコード保護を無効化
#pragma config WDT = OFF                // ウォッチドッグタイマーを無効化
#pragma config OSC = IntRC              // 内蔵クロックを使用

int main(){
    OPTION = 0b10000000;    // GP3ピンのWPU(内蔵プルアップ)有効
    TRISGPIO = 0b00001000;  // 入力専用ピンであるGP3以外は出力
    // note: TRISは0が出力、1が入力です。OUTPUTの"O"、INPUTの"I"と似ていると覚えるとよいです🍀
    GPIO = 0b00000000;      // ポートの初期化

    while (1) {
        GPIO = 0b00110111;  // 全出力ピンをHIGHに設定
        __delay_ms(500);    // 待ち500ミリ秒
        GPIO = 0b00000000;  // 全出力ピンをLOWに設定
        __delay_ms(500);    // 待ち500ミリ秒
    }

    return 0;
}
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次