1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

エレキ素人が何か考える(その16):NE555(タイマーIC)

Posted at

タイマーIC NE555

秋月電子で購入した、タイマーICとして有名なNE555を使ったときの記録である。データシートはこちら

参考サイト

  1. タイマーIC NE555P を使ってみよう
  2. 555タイマー 回路説明
  3. タイマーIC555を利用した回路の設計

ここでは、#1の回路をほぼそのまま使って、マイコン(Arduino)有無で、NE555の動作を確認する。#2には、NE555の原理がわかりやすく説明されており、#3には、タイマー値の計算式が記載されている。

ピンアサイン

データシートより引用。
ピンアサイン.png

検証

回路関連は、falstad利用。

マイコンなし

下記は、タクトスイッチ押下後、しばらくの間、LEDが点灯し、その後消灯する回路。

また、上記回路を実施している様子が下記となる。
スイッチ.gif

繰り返し回路例(ここではLEDの定期的なオンオフ)は下記のようなもの。(実演省略)

マイコンあり

タクトスイッチの代わりに、ArduinoのGPIOアウトプットをトリガーピン2(tr)に入力してみた。まずは、回路およびシミュレーションは下記のとおり。
シミュレーションHL.gif
わずかの間、トリガーピンを”L”にセットしている。下部に見えるのは、アウトプットピン3(out)の電圧の変化である。参考サイトで引用した#2のNE555の内部回路をみるとわかるとおり、内部にコンパレーターがあるので、電圧の変化は一瞬となる(矩形)。

次にArduinoから制御。

#define PIN_OUT   6
#define ANALOG_IN A0

void setup() {
  Serial.begin(9600);
  pinMode(PIN_OUT, OUTPUT);
  digitalWrite(PIN_OUT, HIGH);
}

void loop() {
  int val;
  float volt;
  if (Serial.available() > 0) {
    (void)Serial.readStringUntil('\n');
    val = analogRead(ANALOG_IN);
    volt = val * 5.0/ 1023.0;
    Serial.print("Start: "); Serial.println(volt);
    digitalWrite(PIN_OUT, LOW);
    delay(1);
    digitalWrite(PIN_OUT, HIGH);
    do {
      val = analogRead(ANALOG_IN);
      volt = val * 5.0/ 1023.0;
      Serial.println(volt);
      delay(20);
    } while (val >= 10);
  }
}

GPIOピン6をNE555のトリガーピンに接続、アナログピンA0をアウトプットピンに接続する。シリアル(PC)から入力があったときに、わずかな時間(ここでは1msでも十分だった)”L”にセットし、その時のアウトプットの電圧を測定するもの。結果は下記のとおり。

09:33:50.478 -> Start: 0.00
09:33:50.524 -> 4.35
09:33:50.524 -> 4.35
09:33:50.524 -> 4.35
09:33:50.570 -> 4.35
09:33:50.570 -> 4.35
09:33:50.570 -> 4.35
09:33:50.616 -> 4.35
09:33:50.616 -> 4.35
09:33:50.663 -> 4.35
09:33:50.663 -> 4.35
09:33:50.709 -> 4.35
09:33:50.709 -> 4.35
09:33:50.755 -> 4.35
09:33:50.755 -> 4.35
09:33:50.755 -> 4.35
09:33:50.802 -> 4.36
09:33:50.802 -> 4.36
09:33:50.849 -> 4.36
09:33:50.849 -> 4.36
09:33:50.896 -> 4.36
09:33:50.896 -> 4.36
09:33:50.942 -> 4.35
09:33:50.942 -> 4.35
09:33:50.942 -> 4.36
09:33:50.989 -> 4.36
09:33:50.989 -> 4.36
09:33:51.035 -> 0.00

タイマー満了後、すぐに電圧が変化している。オシロスコープの変化でも同様である。
2022_08_06_09.36.43.jpg

参考までに、アウトプットピンに、LEDを接続したときの様子は下記のとおり。
FromArduino.gif

期待どおりの結果が得られている。

終わりに

マイコンなしでも、タイマーとしては十分に使えることを理解。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?