SNSへはこちら

EPSONマイコンC17で遊んでみよう(2) - IDEで一から環境を作る

(1) の記事で「サンプルプロジェクトをインポートして使う」と言っていましたが、サンプルを使わなくても普通に IDE でプロジェクトを作れることが判明したので簡単にですが示しておきます。

参考にしたのは、EPSON 公式のチュートリアルです。
ってかこのチュートリアルは C17 コアに限らず、リンカや Eclipse の使い方を一通り網羅しているのでどなたにも結構おすすめしたいですねえ。

プロジェクトの生成

ではやっていきましょう。と言っても、普通に作るだけです。
プロジェクトを作る際は New -> Project を選択します。その後、C/C++ から GNU17 Project を選択します。

その後は機種情報を合わせて設定してください。メモリモデルはとりあえずそのままでいいと思います。後からプロジェクトのプロパティから設定できますし。

んで、前回は生成されたプロジェクト内のファイルを見て「なんだこれ、何も必要なファイルが無いじゃないか」と思っていたのでした。実際はコンパイラ標準のリンカスクリプトとスタートアップコード (crt0.o) が使用されるので実は何も心配しなくていいというわけでした。
ちなみに C++ としてビルドすることも可能ですが、C++ 用のヘッダが入っていないのでお話になりません。

コードを書く

残念ながら、レジスタマクロは生成されないしインクルードもされません。ここは自分で生成する必要がありそうです。
てなわけで書いていきます。

#define P0DAT *(volatile unsigned int *) 0x4200
#define P0IOEN *(volatile unsigned int *) 0x4202

int main(void) {
    P0IOEN |= 1 << 4;
    while(1) {
        volatile long long int i;
        for(i = 0; i < 2000; i++);
        P0DAT ^= 1 << (4 + 8);
    }
}

デバッグの準備

そのままデバッグすると、シミュレータのようなものが起動します。これはこれで面白そうなのですが、一旦 ICDmini で書き込みが行われるようにします。
まず一旦デバッグセッションを作った後に終了します。その後、虫マークの右側三角をクリックして、当該プロジェクトのデバッグセッションの設定をします。

そこで Debugger を選び、GDB Debugger を ..\gdb に、GDB command file を gdbmini3.ini とすれば良いです。

あとはこれでデバッグが普通に出来ます。