Deprecated: Assigning the return value of new by reference is deprecated in /home/users/2/floppy.jp-999953/web/kagakusukimono/class/View.php on line 25

Deprecated: Assigning the return value of new by reference is deprecated in /home/users/2/floppy.jp-999953/web/kagakusukimono/class/View.php on line 30

Warning: Cannot modify header information - headers already sent by (output started at /home/users/2/floppy.jp-999953/web/kagakusukimono/class/View.php:25) in /home/users/2/floppy.jp-999953/web/kagakusukimono/class/View.php on line 81
科学好き者の日々::オーディオ発振器のマイコン化

オーディオ発振器のマイコン化

オーディオ帯域の発振器を、555タイマーを用いて矩形波の発振器としてしまいましたが、矩形波でいいならマイコンを使ってもいいと思いました。
コスト面では555タイマー(¥20)のほうがずっと有利ですが、マイコン(¥150)なら自由度がずっと大きくなります。
回路図

例によってPICの12F675でVRの値をADコンバータで読み取り、ADコンの値(0〜255)に比例するディレイを作ります。ディレイ長さで出力をONあるいはOFFすればディレイ長さの2倍が周期となる矩形波となるわけです。
ところが、Cで書くと遅くて高い音が出ません。仕方なくアセンブラーで書いてやっと500Hzから12kHzまでになりました。

スイッチを2つ付けているのは、マイコンならでの遊びで、スイッチ1をONとして電源をいれると、テーマソングを演奏してから通常の発振器となります。(実をいうと、この部分がソフトのなんと90%!!を占める。遊びはたかくつくねぇ)
スイッチ2をONとすると連続音ではなく、「ピーッ ピーッ」という100msの無音期間をいれた断続音になります。

電源は単三の電池2本で3Vです。

残念ながら2台は不必要で、555タイマーくんが活躍しているので、このマイコンくんはベンチを暖めている毎日です。


Calendar
<< May 2024 >>
SunMonTueWedThuFriSat
   1234
567891011
12131415161718
19202122232425
262728293031
search this site.
tags
archives
recent comment
recent trackback
others
admin