2014年12月28日日曜日

Arduinoでインパルス波生成

PT2399エコーの入力をPCとかAndroidのソフトでなんとか簡単に生成できないかと考えていたが
なんかめんどくさそうなので保留していおいた

ほしい波形はこんなの


PSoC Pioneer Kitをいじってるうちに
こんなのマイコンならすぐできるやん!

と思いついてAruduinoでさっそくやってみた


/*
 * PINアサイン
 * A0 パルス間隔を設定するPOT
 * D2 出力
*/
int pulseWidthHigh = 10;
int pulseWidthLow = 2000;

void setup() {
  // put your setup code here, to run once:
  
  pinMode(2, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly: 

  pulseWidthLow = analogRead(0) * 2;  
  digitalWrite(2, HIGH);
  delay(pulseWidthHigh);
  digitalWrite(2, LOW);
  delay(pulseWidthLow);
}


Lチカでチェックしてブレッドボードで組んでるPT2399エコー(http://dad8893.blogspot.jp/search/label/PT2399)に入力



入力波形と出力波形をソフト・オシロのHandy Oscillo Scope(http://www.vector.co.jp/soft/win95/art/se376225.html)でチェックした

PT2399エコーの電源OFF時



上が入力、下が出力です

PT2399エコーの電源ON時



回路図を見ると電源OFF時はCRフィルタ的なもの(受動部品のみ)を通して出力されているっぽい



電源をONにするとBLOCK DIAGRAMのLPF1で反転されて出てくるのか?



波形を見ると矩形波は反転されていて(かなり時定数のでかい)LPFを通ってるように見える

あれ?何かいろいろ間違えてる気がしてきた(^q^;

アナログ部は生きてそうだが、デジタル部はかなりあやしい

PT2399を取り換えて実験しようにも手持ちはあと1個しかないので
オシロスコープを買いに行くついでに調達してこようと思います

0 件のコメント:

コメントを投稿