
本当は正弦波が欲しいのだが、「コペルニクス的転回」により矩形波で間に合わせてしまった発振器ですが、最近使い出したCypressのPSoC(Programmable System-on-Chip)というマイコンだと正弦波を出せそうです。
PSoCはクロック24MHzのM8Cという8bitマイコンにADコンバーター、DAコンバーター、PWMモジュール、フィルター、アンプなどのアナログ回路を内蔵したマイコン?です。
PICなどではアナログ部分は外付け回路で作らなければならないわけです。(12F675のようにADコンバーターを内蔵しているものもあるが、あってもADコンバーターだけですね)
アナログ回路は経験で使いこなすところがあって、難しいですね。
それが内蔵されているので微小信号を取り扱うなどには有難いですね。
ただ、いくつか問題がありまだ充分に使いこなせていません。
ポピュラーなCY8C27443という石では、
1.パッケージがDIP28pinスリムタイプで大きい
2.価格が500円と高価だった。(最近秋月で350円で売っているのでまぁいいか)
3.開発環境に慣れていない。
まあ、3番が一番の問題なのですがね。
プログラムはDevice editorでモジュールの配置とモジュール間の配線を行い、Application editorでモジュールの起動と動作を記述します。
Application editorは通常のC言語なのでそれほどの違和感はないのですが、Device editorはなかなか慣れません。どういうモジュールを使うべきか、モジュールのinput、outputはどうすべきか、モジュール間はどう接続するか、そして、最後にIOピンにどう接続するか。。。。がイマイチ自由に使いこなせていないのです。editorの画面の大きさが小さいのも老眼に辛いものがありますし。。。。
なにはともあれ、写真は、入門書としては、日本にはこれしかない「はじめてのPSoCマイコン」桑野雅彦著 に載っていた例を少々変えて作成した、20kHzの正弦波です。
矩形波からバンドパスフィルターにより正弦波を作っています。