ニコニコ動画をバイブルとしてChaN氏の電子オルゴールを製作
前回までで、AVRマイコンの ATtiny45 や ATtiny2313 に、AVR Studio上でC言語で組んだプログラムを HIDaspx を使って書き込む環境と、Arduino IDE上でスケッチで組んだプログラムを Arduino を使って書き込むという2つの環境を構築することが出来ました。
これは、WaveTable方式で音声合成をすることによって、機械式オルゴールの音に近い音を出すというもので、サイトにある見本の演奏を聴いたら、惚れ惚れするような澄んだ音なんです。
使っているマイコンはATtiny45と、まさにピッタリだし、私も是非作ってみたい。
が、このサイトにある情報だけでは、私には逆立ちしたって作ることはできません。
が、いたんです、救世主が。この「ChaN氏の電子オルゴール」を自分で作って、その方法を事細かに動画にしてアップしてくれている人が。
ちらたきさんという方の「AVRでオルゴール作ってみた」というニコニコ動画です。この動画をバイブルとして何度も何度も繰り返し見ながら、私も製作にチャレンジしてみました。
ただ、最後まで辿り着きはしたけど、何となく曖昧に理解している個所もあり、時間が経てばきっと忘れてしまうだろうなって思うので、改めて手順を辿りながら記録に残しておこうと思います。
ATtiny45と85との違いは、メモリ容量の違いだけのようで、容量が増えるので私的にも望ましい。ってことで、ATtiny85を AliExpress でたくさん買いました。

実は、最初に買った3個のATtiny45の内、2つを使えなくしています(多分、ヒューズの設定ミスをどこかでやらかしてるんだと思う)。なので、安い奴をまとめて買ってみた次第。
うp主殿の開発環境は AVR Studio+AVRISP mkII ですが、AVR Studio+HIDaspx という環境は既に構築できているので、こちらで何とか代用できることを願いつつ先へと進みます。

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か所にチェックいを入れます。

プロジェクトフォルダの場所(Location:)は、これもここで言及した通り、「Cドライブのルートにavrというフォルダを作ります」。
続いてフィニッシュをクリックすれば、「avr」フォルダの中に「mg」という名称の新しいプロジェクトフォルダが出来ています。
ここでChaN氏のサイトからダウンロードしたZIPファイルを解凍し、出来た「mg」フォルダの中身をすべて、このプロジェクトフォルダへとコピー(上書き)します。
AVR Studio を再起動すると、「Recent projects」の中に「mg」プロジェクトが出来ているので、それを選択して次へと進み、次のウィンドウで「AVR Simulator 2」と「ATtiny85」を選択。

これで[Finish]すると、先ほど上書きしたChaN氏のアセンブラコードが表示されます。
ここからATtiny45用にコーディングされたChaN氏のプログラムを、ATtiny85用に一部変更していくのですが、続きは次回。
ニコニコ動画をバイブルとして、「ChaN氏の電子オルゴール」製作にチャレンジ
さて、環境は出来上がったけど、その環境で何を作っていくのかなんですが、実は色々とやっている間に出会ってしまったんです。「ChaN氏の電子オルゴール」と呼ばれるものに。これは、WaveTable方式で音声合成をすることによって、機械式オルゴールの音に近い音を出すというもので、サイトにある見本の演奏を聴いたら、惚れ惚れするような澄んだ音なんです。
使っているマイコンはATtiny45と、まさにピッタリだし、私も是非作ってみたい。
が、このサイトにある情報だけでは、私には逆立ちしたって作ることはできません。
が、いたんです、救世主が。この「ChaN氏の電子オルゴール」を自分で作って、その方法を事細かに動画にしてアップしてくれている人が。
ちらたきさんという方の「AVRでオルゴール作ってみた」というニコニコ動画です。この動画をバイブルとして何度も何度も繰り返し見ながら、私も製作にチャレンジしてみました。
ただ、最後まで辿り着きはしたけど、何となく曖昧に理解している個所もあり、時間が経てばきっと忘れてしまうだろうなって思うので、改めて手順を辿りながら記録に残しておこうと思います。
HIDaspxで書き込めることを願いつつATtiny85をたくさん買い込んだ
うp主殿は、マイコンにはATtiny85を、書き込み装置には AVRISP mkII を使っています。ATtiny45と85との違いは、メモリ容量の違いだけのようで、容量が増えるので私的にも望ましい。ってことで、ATtiny85を AliExpress でたくさん買いました。

実は、最初に買った3個のATtiny45の内、2つを使えなくしています(多分、ヒューズの設定ミスをどこかでやらかしてるんだと思う)。なので、安い奴をまとめて買ってみた次第。
うp主殿の開発環境は AVR Studio+AVRISP mkII ですが、AVR Studio+HIDaspx という環境は既に構築できているので、こちらで何とか代用できることを願いつつ先へと進みます。
動画内のAVR Studioの設定周りをピックアップ
曲データと、音源プログラムはChaN氏のサイトからダウンロードさせて頂きました。
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か所にチェックいを入れます。

プロジェクトフォルダの場所(Location:)は、これもここで言及した通り、「Cドライブのルートにavrというフォルダを作ります」。
続いてフィニッシュをクリックすれば、「avr」フォルダの中に「mg」という名称の新しいプロジェクトフォルダが出来ています。
ここでChaN氏のサイトからダウンロードしたZIPファイルを解凍し、出来た「mg」フォルダの中身をすべて、このプロジェクトフォルダへとコピー(上書き)します。
AVR Studio を再起動すると、「Recent projects」の中に「mg」プロジェクトが出来ているので、それを選択して次へと進み、次のウィンドウで「AVR Simulator 2」と「ATtiny85」を選択。

これで[Finish]すると、先ほど上書きしたChaN氏のアセンブラコードが表示されます。
ここからATtiny45用にコーディングされたChaN氏のプログラムを、ATtiny85用に一部変更していくのですが、続きは次回。
- 関連記事
-
-
フッ素樹脂テープとホットメルト(グルーガン)で成形もどき
-
ChaN氏の電子オルゴール、音出しまであと一歩?
-
ニコニコ動画をバイブルとしてChaN氏の電子オルゴールを製作
-
Arduinoを書き込み装置としてATtiny45にスケッチを書き込む
-
今度はArdublockからArduinoの世界へと第一歩を
-