NXP製ARMマイコンの開発環境を整える
1:LPCXpressoのインストール
前回から始まったエアロバイク型発電機 制作企画の第2回。今回は、制御部として使用する予定であるLPC1114搭載MARY-MBの開発環境を整え、オプションのOLEDモジュールの使用方法を確認します。最終的には、このOLEDディスプレイに発電状況を表示する予定です。
まずは、NXPのIDEであるLPCXpressoをインストールします。最近はMCUXpressoとかいう後継ソフトウェアが推奨されていますが、LPC111x系はまだLPCXpressoでの対応のようです。NXPのHPからダウンロード・インストールするだけですが会員登録が必要で、海外サーバーだからか知りませんがやたらサーバーが重いです。
インストールしたら、LPCXpressoのアクティベートを行いましょう。LPCXpressoのメニューバーからHelp→Activate→Create serial number and registerを選択します。
すると、アクティベートに必要なシリアルナンバーが表示されます。ここで、下の2つにチェックを入れておくと、アクティベーション用webページがいつものブラウザで表示され、かつシリアルナンバーがクリップボードにコピーされるので便利です。
OKを押すと、アクティベーション用webページが表示されるので、「Activate」タブを選択し、先程のシリアルナンバーを入力。その下にある、なんか文字が微妙にズレているボタンを押すとアクティベーションコードが発行されるのでコピーします。そのアクティベーションコードをLPCXpressoの「Help→Activate→Activate(Free edition)」で表示されるウィンドウに入力すればアクティベーションは完了です。
2:OLEDの使用方法を確かめる
とりあえずMARY用サンプルプログラムをインポートします。雑誌で指示されている通りプロジェクトエクスプローラ内で右クリック→Importからworkspaceフォルダを指定したのですが、なぜかエラーで読み込めず。エラー内容はプロジェクトの名前がかぶってるとのことだったので確認すると、全プロジェクトが同一名称「LPC1114」と認識されていました。これは恐らくIDEのバージョンが大きく異なることに起因するのだと思いますが、とりあえずは必要なやつを1つずつインポート→インポート後にリネームを繰り返すことで解決しました。
最後に、雑誌の指示通りCMSISのクリーン+ビルドを行っておきます。CMSISというのはARM用の共通フレームワークで、ARMファミリ間でのコードの再利用を簡単にする「便利アイテム」らしいです。これでMARY用の開発環境の準備は完了。
次は、オプションのOLEDモジュールの使い方を簡単に確認します。プログラミングの苦手な筆者による、約2年ぶりのプログラミングですが、サンプルプログラム+専用API+日本語の雑誌による説明という手厚いサポートのおかげで任意の文字表示を簡単に行うことができました。
例えば、I/Oの設定やOLEDの初期化は Init_OLED(); と一行書けば終わりですし、文字表示も専用APIが用意されていてprintfの要領で使用できるのでかなり楽でした。 画面サイズや解像度はかなり小さいですが、表示は割と鮮明で、結構使えそうな印象でした。
この先は電圧・電流測定用にADCを使用したり、ゲートドライブ用にGPIOを使用したりする予定ですが、これらに対してもAPIが用意されているようです。筆者は以前8051マイコン+USB I/FでオリジナルUSB機器を開発するというなかなか渋いことをしていたのですが、それに比べればネット上の情報量も多そうですし何とかなりそうです。やはり問題は如何にして不安定な電源を安定化させるかにかかっている気がします。