開発環境 †
まずは一般的な組み合わせとして、AVR StudioとWinAVR。
アセンブラのみはキツイので。
後からEclipse+WinAVRの組み合わせに変更したけど、見た目はEclipseの方が全然いい気がするなぁ。
綺麗だし、見やすいし。
AVR Studioは、シミュレータデバッグが出来るのが大きいので、普段はEclipse、デバッガで動きを追いたいような時はAVR Studioと、使い分けるのがいいかも。
AVR Studioも、WinAVRも、インストーラの言うがままにインストールで問題なく終了。
AVR Studio→WinAVRのインストール順で、AVR Studioでは特にWinAVRを指定するようなとこはなかったけど、問題なく使えてるなぁ。
環境変数のPATHにWinAVRが入ってるから、実行ファイルはそれで呼べるんだろうけど。
INCLUDEとLIBの設定もせずに呼べてるのが不思議……。
WinAVR側がインストール時に何かをしたか、AVR Studioのgccプラグインが何かをしているのか?
ビルド後に出てくる、依存関係ファイルを見ても、ちゃんをWinAVRを認識して、そのフォルダを見に行ってるぽい。
ProjectのConfiguration Optionsから、Custom Optionsを選んだ所に、ちゃんとWinAVRのパスが入っているので、自動認識してるぽいね。
AVR WRT †
これは、買ったAVRライタ用のソフトです。
これを使って、プログラムをAVRに書き込みます。
まぁ、インストールは、買ったやつについてきたCDの中身を、適当な箇所にコピーして終了ですよ。
AVR Studio †
メニューのToolsから、Customizeを選び、ToolsタブでNewボタンを押し、AVR WRTのプログラムを指定。
これで、メニューのToolsからAVR WRTを立ち上げることが出来るようになるので、すぐ書き込みをすることが出来る。
終了して再度立ち上げて、プロジェクトをロードすると、なぜかWindowの位置を覚えていてくれてない……。
なにかの嫌がらせか。
そのうち覚えてくれるようになったけど、今度はショートカットが効かなかったり……。
なにかの嫌がらせか。
Eclipse †
Eclipseからでも、WinAVRが使えるらしい。
今度試してみる。
というわけで、ちょっと入れてみた。
Eclipseのダウンロードページから、「Eclipse IDE for C/C++ Developers」をダウンロード。
現在の最新版galileoのC/C++バージョンね。
そして、適当な所に解凍して、「eclipse.exe」を実行。
最初に聞かれるワークスペースの場所は適当に。
EclipseのAVRプラグイン「AVR-Eclipse」をインストールする。
方法は、EclipseのHelpから、「Install New Software」を開いて、「Work with」にhttp://avr-eclipse.sourceforge.net/updatesite/を入力してAdd。
名前は適当に。
認識したら、チェックを入れてNext→Next→acceptでFinishと進めるとインストールが始まる。
終わったら、Eclipseの再起動を求められるので、Yes。
これでインストールは終了。
起動したら、ワークベンチを表示して、新規でCプロジェクトを選択。
「AVR Cross Target Application」から空プロジェクトを作成。
Nextで、DebugとReleaseのプロジェクトプロパティが出てるけど、ここは特にいじらず、次へ。
マイコンの機種と、クロック数の入力になるので、ATmega168Pで1000000Hzを設定してFinish。
DebugとReleaseのプロパティがあるが、初期の設定では、書き込み用HEXファイルを吐くのはReleaseだけ。
Debugプロパティでは、最適化なしだったり、デバッグ情報をつけたりするオプションがONになってたりするけど、あまり使うことはないと思うので、プロジェクトのBuild Configurationsから、Releaseの方をActiveにしておこう。
ProjectのBuild Automaticallyはオフにしておいたほうがよさそう。
後は、ソースを書いてbuildすれば、HEXファイルが出来上がる。
一つ気になるのは、コンパイル時にソースを自動セーブしてくれないところ。
VC等を使っていると、ビルドをかけた時にソースが自動でセーブされ、新しいソースに対してビルドが行われるけど、eclipseはそれをやってくれないようなので、セーブしないでビルドすると、いつまでたっても古い内容の実行ファイルしか出来ない。
eclipseでは、Ctrl+S→Ctrl+Bを習慣づける必要がありそう。
と思ったら、ワークスペースの設定にあった。
これでビルド時に自動セーブできる。
書き込みは、EclipseのAVRプラグインでは通常、AVRDudeというWinAVRの中にも入っているソフトを使うようなんだけど、共立のAVR WRTはこれに対応していないので、あらかじめ立ち上げておくべきかな。
Eclipseから起動できるような登録が出来ればいいんだけど。
ついでに、後で、Pleiadesで日本語化しました。
ちょっと重いかも。
久しぶりにeclipseを立ち上げたら、「jvm terminated. exit code -1」みたいなエラーが出て起動しなかった。
Javaの実行環境が複数あったり、メモリが足りなかったりするとダメらしい。
ショートカットで、「eclipse.exe
-vm "C:\Program Files\Java\jre1.6.0_07\bin\javaw.exe"
」と、赤字の部分を足すと、問題なく起動したので、とりあえずこれで。
WinAVR †
色々ヘッダの構成とか調べて後で書くかも。