法人向けのETC専用カード

私はPC-9801からコンピュータに触れました。

電源投入時の「ピポ」という音は、当時は当たり前のように聞いてました。
しかし今となっては懐かしく感じます。

ふとZnOさんが98のピポ回路を製作しているのを見つけました。
私も作りたかったのですが、あいにく必要なロジックICの手持ちがありません。
自分はマイコンを使っているので、いっそのことマイコンで音を出してみることにしました。


といっても製作は非常に簡単です。
マイコンのポートに圧電ブザーを取り付けて、「ピポ」と鳴らすための周波数をポートに出力すればいいだけです。

とりあえずPIC16F84で作ってみました。

RB0に圧電素子、RB5に動作確認用のLEDを繋いでいるだけです。

音の周波数ですが、ZnOさんのページによると、ピポの「ピ」は2000Hz、「ポ」は1000Hzです。

「ピ」は1秒間に2000回の振幅となり、500μ秒の間隔でポートをHigh/Lowにすればいいはずです。
単純に書けば、「ピ」は下記のようになります。
for(i = 0; i < 時間; i++){
  port = high;
  delay_us(250);
  port = low;
  delay_us(250);
}

「ポ」も同じ要領で1秒間に1000回の振幅になり、1000μ秒の間隔でポートをHigh/Lowします。
for(i = 0; i < 時間; i++){
  port = high;
  delay_us(500);
  port = low;
  delay_us(500);
}

実際にはループの分岐処理などで多少の時間がかかるため、正確な2000Hzや1000Hzではありませんが‥
聞いた感じでは、それなりの雰囲気が出ています。

サンプルソース CCSコンパイラ用
録音したWav

やっぱり聞き比べると、少し違いますね(;´Д`)
ちゃんと実行ステップを差し引いてdelayを設定すれば、実機に近づくと思います。

当サイト内の検索