PIC32でLチカ

引き続きPIC32。
早速ウゴウゴルーガ
まずは定番のLチカだ。

プロジェクトを作成

  • MPLAB X IDEを起動
  • "File" -> "New Project..."を選択
  • "Categories"は"Microchip Embedded"、"Project"は"32-bit MPLAB Harmony Project"を選択して"Next"を押す
  • "Harmony Path"にインストールパス(デフォルトでは、C:\microchip\hamony\v1_11")を選択
  • "Project Location"はデフォルトでも良いが、ここには例題プロジェクトも入っているので、いやな人は適当なフォルダーを選択
  • "Project Name"はなんでもよい、今回は"Blink"
  • "Target Device"で、PIC32 Starter Kit III (SK3)で使用されているPIC32MX470F512Lを選択
  • "Finish"を押す

MPLAB Harmony Configuratorの設定

プロジェクトを作成するとMPLAB Harmony Configuratorが開く。
後で開きたい場合には、"Tools" -> "Embedded" -> "MPLAB Harmony Configurator"を選ぶ。

  • "Options" -> "BSP Configuration" -> "Use BSP?"をチェック
  • 下に"Select BSP To Use For PIC32MX470F512l"が出るので、サブツリーを開いて、"PIC32MX USB Starter Kit 3"にチェックが入っていることを確認
  • 上のセーブボタンを押す
  • 上の"Generate Code"ボタンを押す

これでボード特有の設定や、API、変数が定義される、判れば簡単簡単(1日を要した・・・orz)

Lチカを実装

  • MPLAB X IDEの"Projects"ペインから"Source Files" -> "app" -> "app.c"を開く
  • "APP_Initialize"に以下のコードを追加
BSP_Initialize();
  • "APP_Tasks"の "case APP_STATE_INIT:"を以下のように変更
        case APP_STATE_INIT:
        {
           /*
            bool appInitialized = true;
       
        
            if (appInitialized)
            {
            
                appData.state = APP_STATE_SERVICE_TASKS;
            }
            */
            if (BSP_SwitchStateGet( BSP_SWITCH_1 ) == BSP_SWITCH_STATE_PRESSED)
                BSP_LEDToggle( BSP_LED_1 );
            break;
        }
  • 変更を保存

ビルド

"Production" -> "Build Main Project"を選択

実機に焼く

  • PIC32 SK3をPCにつなぐ
  • "Run Main Project"ボタンを押す
  • フラッシャーの選択画面が出るので、"Microchip Starter Kits" -> "Starter Kits(PKOB)"を選択する