Arduinoをソーラーパネルだけで動かす(その4)

次に、ATtiny側の処理を紹介します。






この部分を加えた結線は以下の様になります。
UNOは5V電源の給電のためだけに使用しています。




ATtinyのスケッチは以下の通りです。
600秒ごとにoutPinを10秒間ONにするだけです。
outPinをONにすると、MOSFETリレーのOUT側(ピンクのライン)がONになります。
これでProMiniとnRF24L01に600秒間隔で3.3Vが給電されます。
stimeの値を変えれば、ProMiniの起動間隔を30分毎とか1時間毎とかにすることができます。
使用するATtinyは何でもいいですが、私はATtiny85を使いました。

/*
 * 600秒ごとにoutPinを10秒ONにする
 */
#define outPin 3   // PB3
#define stime  60  // 10Sec * 60Times

long next;

void setup() {
  pinMode(outPin,OUTPUT);
  digitalWrite(outPin,LOW);
  next=millis();
}

void loop() {
  static int num=0;
  if (((signed long)(millis() - next)) > 0) {
    num++;
    if (num == stime) {
      digitalWrite(outPin,HIGH);
      num=0;
    } else {
      digitalWrite(outPin,LOW);
    }
    next=millis() + 10000; // 10Sec
  }
}

次回はソーラーパネルを紹介します。

続く...