d-satoのマイクロマウス研修キット製作研修

VSCodeを使ったRXマイコン開発環境の紹介 – d-satoのマイクロマウス研修 Part8

VSCodeを使ったRXマイコン開発環境の紹介 – d-satoのマイクロマウス研修 Part8 d-satoのマイクロマウス研修

d-satoです。初日から在宅勤務のため、自宅でマイクロマウス研修に取り組んでいます。記事一覧はこちらです。
Part6からよりスムーズな走行を目指してスラローム走行を実装しています。前回はスラローム走行のために実装するプログラムの中身と迷路内でのロボットの動きについて軽く紹介しました。今回はRXマイコンのためのCS+用プロジェクトをGitでバージョン管理する上でより便利に使うための開発環境について紹介します。

本当は今回スラローム走行で迷路内を走っている様子を紹介したかったのですが、連休があって時間が少なかったことと、部屋の片付けが中途半端なままなのでブログ用の動画撮影ができませんでした。
走行させる度にカメラで撮影しておけばよいのですが、自宅だと常に三脚を出しておく訳にはいかず、難しいですね。在宅勤務ならではですね(?)。

紹介する環境の概要

Part3でGitによるバージョン管理を導入することを紹介しました。
Gitでバージョン管理しているのでエディタからも履歴をたどりたいなと思って調べていたところ、CS+用プロジェクトをVSCodeで編集してコンパイルする方法にたどり着いたので紹介します。

今回紹介する方法では、以下の画像のようにフォーカスしている行の更新履歴を確認したり、

フォーカスしている行の更新履歴を確認

以下の画像のように未保存の編集箇所の更新内容を確認したり、

未保存の編集箇所の更新内容を確認

以下の画像のように変数の参照箇所を確認したりできます。

変数の参照箇所を確認

また、VSCodeのタスク機能を利用してVSCodeからビルドしたり、書き込みしたりできます。

VSCodeのタスク機能を利用

使用環境

今日現在、使用しているソフトウェアのバージョンは下記の通りです。

  • Windows 10 Home
    • バージョン 1909
    • OSビルド 18363.959
  • CS+ for CC V8.03.00
  • Renesas Flash Programmer V 3.06.01 無償版
  • Visual Studio Code
    • バージョン: 1.47.3 (user setup)
    • コミット: 91899dcef7b8110878ea59626991a18c8a6a1b3e
    • 日付: 2020-07-23T13:12:49.994Z
    • Electron: 7.3.2
    • Chrome: 78.0.3904.130
    • Node.js: 12.8.1
    • V8: 7.8.279.23-electron.0
    • OS: Windows_NT x64 10.0.18363

プロジェクトファイルを問題なく呼び出せることを確認するため、このページで紹介する設定を有効にする前に、

  • CS+でプロジェクトがビルドできること
  • Renesas Flash Programmerでマイコンへ書き込みができること

を確認しておくことをおすすめします。本記事では予め書き込みまではできるよう設定されている前提で話を進めています。

設定内容

実際にVSCodeで設定する内容は以下の通りです。

  • エディタ用の設定
  • RXマイコン用の設定
    • 文字コードの設定
    • ヘッダファイル読み込みの設定
    • ビルド、書き込み用タスクの設定

エディタ用の設定

GitLensというVSCode用のプラグインでフォーカスしている行の更新履歴を確認できるようにしています。

C/C++というVSCode用のプラグインで変数の参照時箇所を確認できるようにしています。

RXマイコン用の設定

設定ファイル(.vscodeフォルダ内)を以下のように記述するとうまくいくと思います(パス等は環境に合わせて適宜修正してください)。

設定ファイルの中身について説明します。

文字コードの設定

settings.json"files.encoding"が該当箇所です。

CS+はShift-JISでファイルを保存するようなのでVSCodeでも同様に設定します。

ヘッダファイル読み込みの設定

settings.json"C_Cpp.default.defines""C_Cpp.default.includePath"が該当箇所です。

追加でiodefine.hに以下の3行を追加しておきます。

レジスタへアクセスする構造体についてもVSCode内で入力補完してくれるようになります。

#ifdef _VSCODE
#define __evenaccess
#endif

ビルド、書き込み用タスクの設定

task.jsonが該当する設定ファイルです。

ビルド設定では「.mtpj」ファイルを、書き込み設定では「.rpj」ファイルをそれぞれプロジェクトファイルとして指定します。

オプションについてはそれぞれ以下のページを参考にしました。

ビルド設定のオプション

Development Tools
Renesas tools (IDE, compiler, emulator, flash programmer) provide strong support for your embedded system development.

書き込み設定のオプション

https://www.renesas.com/br/ja/doc/toolnews/eng/2017/r20ts0167ej0100-rfp.pdf

以上の設定ができると、VSCodeからビルドとマイコンへの書き込みができるようになります。

VSCodeからビルドとマイコンへの書き込み

次回以降は実際にスタートとゴールのある迷路を探索して走行させていきます。また実装したプログラムの一部を示しながら解説をする予定です。

参考サイト

タイトルとURLをコピーしました