ニコニコ動画をバイブルとしてChaN氏の電子オルゴールを製作

前回までで、AVRマイコンの ATtiny45 や ATtiny2313 に、AVR Studio上でC言語で組んだプログラムを HIDaspx を使って書き込む環境と、Arduino IDE上でスケッチで組んだプログラムを Arduino を使って書き込むという2つの環境を構築することが出来ました。

ニコニコ動画をバイブルとして、「ChaN氏の電子オルゴール」製作にチャレンジ

さて、環境は出来上がったけど、その環境で何を作っていくのかなんですが、実は色々とやっている間に出会ってしまったんです。「ChaN氏の電子オルゴール」と呼ばれるものに。

これは、WaveTable方式で音声合成をすることによって、機械式オルゴールの音に近い音を出すというもので、サイトにある見本の演奏を聴いたら、惚れ惚れするような澄んだ音なんです。

使っているマイコンはATtiny45と、まさにピッタリだし、私も是非作ってみたい。

が、このサイトにある情報だけでは、私には逆立ちしたって作ることはできません。

が、いたんです、救世主が。この「ChaN氏の電子オルゴール」を自分で作って、その方法を事細かに動画にしてアップしてくれている人が。

ちらたきさんという方の「AVRでオルゴール作ってみた」というニコニコ動画です。この動画をバイブルとして何度も何度も繰り返し見ながら、私も製作にチャレンジしてみました。

ただ、最後まで辿り着きはしたけど、何となく曖昧に理解している個所もあり、時間が経てばきっと忘れてしまうだろうなって思うので、改めて手順を辿りながら記録に残しておこうと思います。

HIDaspxで書き込めることを願いつつATtiny85をたくさん買い込んだ

うp主殿は、マイコンにはATtiny85を、書き込み装置には AVRISP mkII を使っています。

ATtiny45と85との違いは、メモリ容量の違いだけのようで、容量が増えるので私的にも望ましい。ってことで、ATtiny85を AliExpress でたくさん買いました

ATtiny85

実は、最初に買った3個のATtiny45の内、2つを使えなくしています(多分、ヒューズの設定ミスをどこかでやらかしてるんだと思う)。なので、安い奴をまとめて買ってみた次第。

うp主殿の開発環境は AVR Studio+AVRISP mkII ですが、AVR Studio+HIDaspx という環境は既に構築できているので、こちらで何とか代用できることを願いつつ先へと進みます。

動画内のAVR Studioの設定周りをピックアップ

曲データと、音源プログラムはChaN氏のサイトからダウンロードさせて頂きました。

AVRでオルゴール-1

AVR Studioを起動して、各種設定をしていきます。因みに、うp主殿はAVR Studio4.18+サービスパック(AVR Studio 4.18 SP3)ですが、私の方のバージョンは4.19です。

更に言えば、C言語ではなくアセンブラを使っていくので、ここで言及した AVR Toolchain も WinAVR も、(少なくとも今回は)必要ないようです。

ということで、AVR Studioを起動したら「Atmel AVR Assembler」を選択し、「Project name:」には mg と記入し、2か所にチェックいを入れます。

AVRでオルゴール-3

プロジェクトフォルダの場所(Location:)は、これもここで言及した通り、「Cドライブのルートにavrというフォルダを作ります」。

続いてフィニッシュをクリックすれば、「avr」フォルダの中に「mg」という名称の新しいプロジェクトフォルダが出来ています。

ここでChaN氏のサイトからダウンロードしたZIPファイルを解凍し、出来た「mg」フォルダの中身をすべて、このプロジェクトフォルダへとコピー(上書き)します。

AVR Studio を再起動すると、「Recent projects」の中に「mg」プロジェクトが出来ているので、それを選択して次へと進み、次のウィンドウで「AVR Simulator 2」と「ATtiny85」を選択。

AVRでオルゴール-7

これで[Finish]すると、先ほど上書きしたChaN氏のアセンブラコードが表示されます。

ここからATtiny45用にコーディングされたChaN氏のプログラムを、ATtiny85用に一部変更していくのですが、続きは次回


コメント:












管理者にだけ表示を許可する
トラックバック:
トラックバック URL:

http://55life555.blog.fc2.com/tb.php/1263-c22aed7b

<< topページへこのページの先頭へ >>