Cubsat №2

                Never    
C++
       
#define BIT_DELAY 40 // Задержка между битами
#define DELAY_BETWEEN_MESSAGES 500 // Задержка между отправкой двух сообщений
#include <RCSwitch.h>


String input_message = "";
String answer_message = "";
RCSwitch mySwitch = RCSwitch();

const int numReadings = 10;

int readings[numReadings];
int readIndex = 0;
int total = 0;
int average = 0;

int inputPin = A0;

void setup() {
  Serial.begin(9600);
  pinMode(inputPin, INPUT);
  mySwitch.enableTransmit(2);
  for (int thisReading = 0; thisReading < numReadings; thisReading++) {
    readings[thisReading] = 0;
}

void loop() {
  if (readIndex < numReadings) {
    total = total - readings[readIndex];
    readings[readIndex] = analogRead(inputPin);
    total = total + readings[readIndex];
    readIndex = readIndex + 1;
    delay(20);
  }
  else {
    average = total / numReadings;
    Serial.println(average);
  }


  int lastReceiveTime = 0;
  if (digitalRead(inputPin) == 0) {
    input_message.push_back("0");
    for (int i = 0; i < 10; i++) {
      delay(40);
      input_message.push_back(str(digitalRead(sun)));
    }
    String sss = input_message.substr(1, 8);
    mySwitch.send(sss, 8);
    int lastReceiveTime = millis();
    input_message = "";
  }
  if (millis() - lastReceiveTime >= 500) {
    answer_message = "";
  }
}





Raw Text