1

Topic: The building of a graph

The program dasn't build a Graph. What is the problem?


// определение режима соединения и подключение библиотеки RemoteXY
#define REMOTEXY_MODE__ESP8266WIFI_LIB_POINT
#include <ESP8266WiFi.h>

#include <RemoteXY.h>

// настройки соединения
#define REMOTEXY_WIFI_SSID "one"
#define REMOTEXY_WIFI_PASSWORD "12345678"
#define REMOTEXY_SERVER_PORT 6377
const byte dynPin=2;
//генерация звука на втором пине
const int IN_PIN = A0;
//прием звука на аналоговом пине а0
const int MAX_ADC_VALUE = 1023;//возможно изменить на 255
int frec;

// конфигурация интерфейса 
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =   // 45 bytes
  { 255,1,0,4,0,38,0,16,126,0,68,49,7,7,87,42,94,186,97,109,
  112,108,105,116,117,100,101,0,2,0,33,51,22,11,2,26,31,31,79,78,
  0,79,70,70,0 };
 
// структура определяет все переменные и события вашего интерфейса управления
struct {

    // input variables
  uint8_t switch_1; // =1 если переключатель включен и =0 если отключен

    // output variables
  float onlineGraph_1;

    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0

} RemoteXY;
#pragma pack(pop)

/////////////////////////////////////////////
//           END RemoteXY include          //
/////////////////////////////////////////////



void setup()
{
  RemoteXY_Init ();
   pinMode(dynPin,OUTPUT);
  pinMode(IN_PIN, INPUT);
frec=3000;//исходное значение частоты 3000 Гц
 
 
 
}

void loop()
{
  RemoteXY_Handler ();
  if ((RemoteXY.switch_1!=0)and (frec<5000)){
//инициализируем переменные
int mn = 1024;
int mx = 0;
tone(dynPin,frec);//запускаем генератор звука
for (int i=0; i < 1000; ++i) {//ищем макс и мин значения амплитуды
int val = analogRead(IN_PIN);
mn = min(mn, val);
mx = max(mx, val);
}
//нашли размах амплитуды
       frec=frec+100;//увеличиваем частоту на 100 для следующего измерения
    noTone(dynPin);//отключаем звук
       RemoteXY.onlineGraph_1 = float (5.0 / MAX_ADC_VALUE* (mx - mn));
}
else {
    /*  выключатель выключен */
  }
  }