PSoCで遊ぶ
- PSoC FirstTouch Kitでテルミン?
1. 「はじめてのPSoCマイコン」のLED点滅プログラムをPSoC FirstTouch Kitで
デバイス:CY8C21434-24LFXIに変更
LEDのポート
青 P1(2), 赤 P1(3), 緑 P1(4);今回は赤と青のみ使用。
青=>青赤=>消灯で点滅する。
プロジェクトはLED2.zipを参照。
2. 近接センサでブザーを鳴らす
System Levelでプログラム。
ブザーのポート P1(6)
近接センサのポート
ワイヤ P2(0), FdbkResistorPin P3(1), ModulatorCapPin P(0)1
手をワイヤに近づけるとブザーがジジジと鳴る。音程も音量も変えられない。
プロジェクトは大きくてアップできなかったので回路図とHEXファイルをcapbuz.zipに置いとく。
サイプレスにもテルミンのANがあったが、LCDやら使ってて石の規模も大きいので
FirstTouchでは動かないのかな。
main.cにcsr.hをincludeしたらコンパイルは通った。
3. 明るさでブザーの音量を変える。
サンプルプログラムのLight Sensorを改造。ブザーを付け加える。
照度計の出力は0~99までの数値なので、これをそのままブザーの音量にする。
HEXファイルをlightsensor.hexに置いておく。
4. 適当な音でブザーを鳴らす(Chip Level)
PWMをブザーにつないで周波数を適当にいじると音が鳴る。
main.cのpの値を変えると音の高さが変わる。
プロジェクトファイルをbuzzertest.zipに置いておく。
5. 「PSoCマイコン・スタートアップ」p.129をPSoC FirstTouch Kitで
PSoC FirstTouch Kitと「PSoCマイコン・スタートアップ」付属基板の石は同じ。
近接センサでLEDを点滅させるプログラムはピンの設定変更でそのまま動く。
テルミンもどきが目的なのでFirstTouch Kit経由の通信の可否は知らない。
ピンの設定変更はCSDモジュールを右クリックしてCSDウィザードを表示する。
ピン配置を変更する。
LED => そのまま(赤LED)
Modulator Capacitor Pin P0(3) => p0(1)
Feedback Resistor pin P3(1) => そのまま
導線センサ P3(3) => p2(0)
ビルドして書き込むと、手がセンサに近づくとLEDが消える。なぜか逆だ。
6. PSoC FirstTouch Kitでテルミンもどきの作成
いろいろ回り道をして遊んできたが、やっとこ最終目標。
「PSoCマイコン・スタートアップ」の10章のサンプルプログラム(Prj2_Distanse_detection_sensor)を改造してテルミンもどきを作成。
音声出力用にPWM8を一個追加。サンプルプログラムではきちんと距離の計算をしているが、
その辺はぜんぶ捨てて、とにかく音が鳴る最小限のプログラムとした。
本物のテルミンとは逆に、導線センサに手を近づけると音が低くなり、LEDも光る。
プロジェクトはTheremin_test.zipを参照。
細かいところは組み込んでないけど、30行程度のプログラムでそれっぽい物ができる。
便利な石である。
-
最終更新:2009年12月25日 14:01