Arduino рдкрд░ "рд╕реНрдорд╛рд░реНрдЯ рд╣реЛрдо" рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЯреЗрдореНрдкрд▓реЗрдЯ - рджреВрд╕рд░рд╛ рднрд╛рдЧ

Arduino рдкрд░ рдЖрдзрд╛рд░рд┐рдд "рд╕реНрдорд╛рд░реНрдЯ рд╣реЛрдо" рдХреА рдирд┐рд░рдВрддрд░рддрд╛ред

рдЫрд╡рд┐


рд╣реИрд▓реЛред

рдмреЗрд╣рддрд░ рд╕рдордЭ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдкрд╣рд▓реЗ рднрд╛рдЧ рдХреЛ рдкрдврд╝рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ ред

рдпрд╣ рд╣рд┐рд╕реНрд╕рд╛ рдкреНрд░рдХрд╛рд╢ рдХреЗ рд╕реБрдЪрд╛рд░реВ рдирд┐рдпрдВрддреНрд░рдг ( рдбрд┐рдорд░ , рдЗрд╕рдХреЗ рдмрд╛рдж PWM) рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ , рд╕рд╛рде рд╣реА рдореЗрдореЛрд░реА рдореЗрдВ рдЧреИрд░-рд╡рд╛рд╖реНрдкрд╢реАрд▓ EEPROM рдореЗрдВ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред

рдбреЗрдЯрд╛ рдХреЛ рдореЗрдореЛрд░реА рдореЗрдВ рд╕рд╣реЗрдЬрдирд╛ рдПрдХ рдмреНрд▓реИрдХрдЖрдЙрдЯ рдХреЗ рдмрд╛рдж рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЕрдкрдиреА рдкрд┐рдЫрд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИред

рдпрд╣рд╛рдВ рдЖрдк рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ рджреЗрдЦ рдФрд░ рдЫреВ рд╕рдХрддреЗ рд╣реИрдВред

рд╡реАрдбрд┐рдпреЛ рд╕рдВрд▓рдЧреНрди рд╣реИ
ipad.



рдмрдЯрди рд╕рдВрдмрдВрдзрд┐рдд рдкрд┐рдВрд╕ рдХреЛ рд╕рдХреНрд╖рдо / рдЕрдХреНрд╖рдо рдХрд░реЗрдВрдЧреЗ рдФрд░ рд╕реНрд▓рд╛рдЗрдбрд░реНрд╕ рдХреЛ рд╣рд┐рд▓рд╛рдиреЗ рдкрд░ D5 рдФрд░ D6 рдкрд░ PWM рдмрдврд╝реЗрдЧрд╛ / рдШрдЯреЗрдЧрд╛ред

рд╕рдВрдХреЗрддрдХ рдХреЗ рдЕрдВрджрд░ рдЕрд░реНрдзрд╡реГрддреНрддрд╛рдХрд╛рд░ рдмрдЯрди рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рддреБрд░рдВрдд рдкреАрдбрдмреНрд▓реВрдПрдо рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдФрд░ рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЪрд╛рд▓реВ рд╣реЛрдиреЗ рдкрд░, рдмрдВрдж рдХрд┐рдпрд╛ рдЧрдпрд╛ PWM рдорд╛рди рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдореИрдВ рд╕рд╣реА рдмрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ ...

Arduino


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ EEPROM рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░реЗрдВред рдЗрд╕ рд╕реНрдХреЗрдЪ рдХреЛ рднрд░реЗрдВ:

#include <EEPROM.h>

void setup()
{
  // write a 0 to all 512 bytes of the EEPROM
  for (int i = 0; i < 512; i++)
    EEPROM.write(i, 0);

  // turn the LED on when we're done
  digitalWrite(13, HIGH);
}

void loop()
{
}


рдЕрдм рдореБрдЦреНрдп рдХрд╛рд░реНрдпрдХреНрд░рдо:
#include <EEPROM.h>

byte d2 = EEPROM.read(2);     //  ( )   EEPROM,  
byte d3 = EEPROM.read(3);
byte d4 = EEPROM.read(4);
int shim1 = EEPROM.read(5); //     EEPROM,  
int shim2 = EEPROM.read(6);
byte d11 = EEPROM.read(11);
byte d12 = EEPROM.read(12);
byte d13 = EEPROM.read(13);

byte descript[5]; // 

void setup() 
{
  Serial.begin(57600);
  pinMode(2, OUTPUT); 
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(11, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(13, OUTPUT);
  
  if(d2) digitalWrite(2, HIGH); else digitalWrite(2, LOW); //    d2  ,  ,  ,   
  delay(500); //     ,  
  if(d3) digitalWrite(3, HIGH); else digitalWrite(3, LOW);
  delay(500);
  if(d4) digitalWrite(4, HIGH); else digitalWrite(4, LOW);
  delay(500);
  analogWrite(5, shim1 * 2.55); //   d5
  delay(500);
  analogWrite(6, shim2 * 2.55); //   d6
  delay(500);
  if(d11) digitalWrite(11, HIGH); else digitalWrite(11, LOW);
  delay(500);
  if(d12) digitalWrite(12, HIGH); else digitalWrite(12, LOW);
  delay(500);
  if(d13) digitalWrite(13, HIGH); else digitalWrite(13, LOW);
}
  
void loop() 
{  
  if (Serial.available()>4) //     
   {
    if (Serial.read()=='Y') //   ,   'Y',   ,  ,     
     {
      for (byte i=0; i < 5; i++)
        {
           descript[i] = Serial.read(); //       
        } 
        
    if((descript[0] =='+') && (descript[1] =='=') && (descript[2] =='Z')) //  
     {
      switch (descript[3])
       {
         case 'o': // 
         glavnaia(); //  
         break;
         
         case 'A': // d2 
         digitalWrite(2, HIGH); //  d2
         d2 = 1; //     ()
         EEPROM.write(2, d2); //   d2   тДЦ2 EEPROM 
         glavnaia(); //  
         break;
         
         case 'a': // d2 
         digitalWrite(2, LOW); //  d2
         d2 = 0; //     ()
         EEPROM.write(2, d2); //   d2   тДЦ2 EEPROM 
         glavnaia(); //  
         break; 
 
         case 'B': // d3
         digitalWrite(3, HIGH);
         d3 = 1;
         EEPROM.write(3, d3);
         glavnaia();
         break;
         
         case 'b': // d3
         digitalWrite(3, LOW);
         d3 = 0;
         EEPROM.write(3, d3);
         glavnaia();
         break;          
  
         case 'C': // d4
         digitalWrite(4, HIGH);
         d4 = 1;
         EEPROM.write(4, d4);
         glavnaia();
         break;
         
         case 'c': // d4
         digitalWrite(4, LOW);
         d4 = 0;
         EEPROM.write(4, d4);
         glavnaia();
         break;   
  
         case 'D': // d5  shim1
         shim1++; // 
         if(shim1 > 100) shim1 = 100;  //   ,   
         EEPROM.write(5, shim1); //     тДЦ5 EEPROM 
         analogWrite(5, shim1 * 2.55); //   D5 
         glavnaia(); //   
         break;
         
         case 'd': // d5  shim1
         shim1--;
         if(shim1 < 1) shim1 = 0;
         EEPROM.write(5, shim1);
         analogWrite(5, shim1 * 2.55);
         glavnaia();
         break; 
  
         case 'E': // d6  shim2
         shim2++;
         if(shim2 > 100) shim2 = 100;
         EEPROM.write(6, shim2);
         analogWrite(6, shim2 * 2.55);
         glavnaia();
         break;
         
         case 'e': // d6  shim2
         shim2--;
         if(shim2 < 1) shim2 = 0;
         EEPROM.write(6, shim2);
         analogWrite(6, shim2 * 2.55);
         glavnaia();
         break;   
  
         case 'F': //     D5
         shim1 = EEPROM.read(5); //     EEPROM
         analogWrite(5, shim1 * 2.55); //   D5
         glavnaia();
         break;
         
         case 'f': //     D5
         shim1 = 0;
         analogWrite(5, shim1); //   D5,     EEPROM
         glavnaia();
         break;  
 
         case 'G': //     D6
         shim2 = EEPROM.read(6); //     EEPROM
         analogWrite(6, shim2 * 2.55); //   D6
         glavnaia();
         break;
         
         case 'g': //     D6
         shim2 = 0;
         analogWrite(6, shim2); //   D6,     EEPROM
         glavnaia();
         break;  
 
         case 'J': // d11
         digitalWrite(11, HIGH);
         d11 = 1;
         EEPROM.write(11, d11);
         glavnaia();
         break;
         
         case 'j': // d11
         digitalWrite(11, LOW);
         d11 = 0;
         EEPROM.write(11, d11);
         glavnaia();
         break;  
        
         case 'K': // d12
         digitalWrite(12, HIGH);
         d12 = 1;
         EEPROM.write(12, d12);
         glavnaia();
         break;
         
         case 'k': // d12
         digitalWrite(12, LOW);
         d12 = 0;
         EEPROM.write(12, d12);
         glavnaia();
         break;         
      
         case 'M': // d13
         digitalWrite(13, HIGH);
         d13 = 1;
         EEPROM.write(13, d13);
         glavnaia();
         break;
         
         case 'm': // d13
         digitalWrite(13, LOW);
         d13 = 0;
         EEPROM.write(13, d13);
         glavnaia();
         break;
 
         default:
         glavnaia();
       }
     }
   
    else //   ,   
      {
        for(byte i=0; i < 255; i++) 
         {
           Serial.read();    
         } 
      } 
     }    //  if (Serial.read()=='Y')
   }    //   
 
} //  loop

void glavnaia() //  
 {
      Serial.print(d2);//0
      Serial.print(",");
      Serial.print(d3);//1
      Serial.print(",");
      Serial.print(d4);//2
      Serial.print(",");
      Serial.print(0);//3  //   ,   
      Serial.print(",");
      Serial.print(0);//4  //   ,   
      Serial.print(",");
      Serial.print(0);//5 //   ,   
      Serial.print(",");
      Serial.print(0);//6 //   ,   
      Serial.print(",");
      Serial.print(0);//7  //   ,   
      Serial.print(",");
      Serial.print(0);//8 //   ,   
      Serial.print(",");
      Serial.print(d11);//9
      Serial.print(",");
      Serial.print(d12);//10
      Serial.print(",");
      Serial.print(d13);//11 
      Serial.print(",");
      Serial.print(shim1); // 12  
      Serial.print(",");
      Serial.println(shim2); // 13  14   
 }


Arduino рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп рдпрд╣рд╛рдБ рдпрд╛ рдпрд╣рд╛рдБ рд╡рд░реНрдгрд┐рдд рд╣реИ ред рдмрдЯрди

рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ

:

рдЫрд╡рд┐


рдПрдХ рдмрдЯрди (рдЬреИрд╕реЗ D13 ) рдПрд▓рдИрдбреА рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдЧрд╛ рдФрд░ рдпреВрдирд┐рдЯ рдХреЛ EEPROM рдкрд░ рд▓рд┐рдЦ рджреЗрдЧрд╛ред рдлреНрд▓реИрдЧ 1 рдХреЛ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛, рдЬреЛ рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдХрдорд╛рдВрдб рдкреВрд░рд╛ рд╣реЛ рдЪреБрдХрд╛ рд╣реИред рдмрдЯрди рд░реЛрд╢рдиреАред

рдЬрдм рдлрд┐рд░ рд╕реЗ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрд▓рдИрдбреА рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╢реВрдиреНрдп рдХреЛ EEPROM рдХреЛ рд▓рд┐рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдлреНрд▓реИрдЧ 0 рдХреЛ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ ред рдмрдЯрди рд░рдВрдЧ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред

рдпрд╣реА рд╣реИ, рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдореЗрдВ рдХреЗрд╡рд▓ рдЧрд╛рд░рдВрдЯреАрдХреГрдд рдХрдорд╛рдВрдб рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

...
         case 'M': // d13
         digitalWrite(13, HIGH); // 
         d13 = 1; //  
         EEPROM.write(13, d13); //    
         glavnaia(); //   
         break;
         
         case 'm': // d13
         digitalWrite(13, LOW);
         d13 = 0;
         EEPROM.write(13, d13);
         glavnaia();
         break;
...


рдпрджрд┐ рдЖрдк D13 рдХреЛ рдЪрд╛рд▓реВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ Arduin рдХреЛ рдбреА-рдПрдирд░реНрдЬрд╛рдЗрдЬрд╝ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЕрдЧрд▓реА рдмрд╛рд░ рдЬрдм рдЖрдк Arduin рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдВрдЧреЗ, рддреЛ рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рдореЗрдореЛрд░реА рд╕реЗрд▓ рдХреЛ рдкрдврд╝реЗрдЧрд╛:

...
byte d13 = EEPROM.read(13);
...


рдФрд░ рдЕрдЧрд░ рд╡рд╣рд╛рдБ рдПрдХ рдерд╛, рддреЛ рд╢реВрдиреНрдп рд╕реЗрдЯрдЕрдк рдореЗрдВ () рдмреНрд▓реЙрдХ рдПрд▓рдИрдбреА рдЪрд╛рд▓реВ рд╣реЛрдЧрд╛:

...
  delay(500);
  if(d13) digitalWrite(13, HIGH); else digitalWrite(13, LOW);

рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рд╡рд┐рд░рд╛рдо рдЖрд╡рд╢реНрдпрдХ рд╣реИ рддрд╛рдХрд┐ рд╕рднреА рдЙрдкрднреЛрдХреНрддрд╛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЪрд╛рд▓реВ рди рд╣реЛрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рдЧрд░реНрдорд┐рдпреЛрдВ рдХрд╛ рдХреЙрдЯреЗрдЬ рд╣реИ, рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдХрдорд░реЛрдВ рдореЗрдВ рд╣реАрдЯрд░ рдЖрд░реНрджреАрдиреЛ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ)ред

"рд╕реНрд╡рдЪрд╛рд▓рд┐рдд" рдирд┐рдпрдВрддреНрд░рдг рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкрд┐рди d2 рдХреЗ рд▓рд┐рдП , рдЖрдкрдХреЛ рдХреЛрдб рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЗрд╕реЗ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

...
byte d2 = EEPROM.read(2);
...


рдЗрд╕ рдкрд░:

byte d2 = 0;


рдореЗрдВ рд╢реВрдиреНрдп рд╕реЗрдЯрдЕрдк (), рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдВ:

...
if(d2) digitalWrite(2, HIGH); else digitalWrite(2, LOW); 
delay(500);
...


рдФрд░ рд╕реНрд╡рд┐рдЪ рдмреНрд▓реЙрдХ рдореЗрдВ (рд╡рд░реНрдгрди [3]) EEPROM рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХреЛ рдЗрд╕ рддрд░рд╣ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ:

...
         //////////////  ///////////////////
         case 'A': // d2 
         digitalWrite(2, HIGH); //  d2
         d2 = 1; //     ()
         //EEPROM.write(2, d2); //   d2   тДЦ2 EEPROM 
         glavnaia(); //  
         break;
         
         case 'a': // d2 
         digitalWrite(2, LOW); //  d2
         d2 = 0; //     ()
         //EEPROM.write(2, d2); //   d2   тДЦ2 EEPROM 
         glavnaia(); //  
         break; 
...


рдорджреНрдзрдо:

рдЫрд╡рд┐


PWM рдорд╛рдиреЛрдВ рдХреА рд╕реАрдорд╛ 0 рд╕реЗ 255 рддрдХ рд╣реЛрддреА рд╣реИ, arduino 0 рд╕реЗ 100 рдХреА рд╕реАрдорд╛ рдореЗрдВ (рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ) рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдЕрдВрджрд░ 2.55 рд╕реЗ рдЧреБрдгрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ "рдкреИрд░" рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИред


         case 'D': // d5  shim1
         shim1++; //  
         if(shim1 > 100) shim1 = 100; //   ,   
         EEPROM.write(5, shim1); //    
         analogWrite(5, shim1 * 2.55); //  
         glavnaia(); //   
         break;
         
         case 'd': // d5  shim1
         shim1--;
         if(shim1 < 1) shim1 = 0;
         EEPROM.write(5, shim1);
         analogWrite(5, shim1 * 2.55);
         glavnaia();
         break; 


рдпрджрд┐ рд╕реНрд▓рд╛рдЗрдбрд░ рдЪрд▓рддрд╛ рд╣реИ, рддреЛ рдПрдХ рд╕реЗ PWM рдХреЛ рдмрдврд╝рд╛рдиреЗ / рдШрдЯрд╛рдиреЗ рдХрд╛ рдЖрджреЗрд╢ arduino (рдФрд░ рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╕рдордп) рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╢рд┐рдо 1 ++ рдЪрд░; рдмрдврд╝ рдЬрд╛рддреА рд╣реИ, рдЗрд╕рдХреЗ рдореВрд▓реНрдп рдХреЛ рдореЗрдореЛрд░реА рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╢рд┐рдо 1 рдХреЛ 2.55 рд╕реЗ рдЧреБрдгрд╛ рдХрд░рдХреЗ рдкрд┐рди рдХреЛ рдЦрд┐рд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЙрд╕рдХреЗ рдмрд╛рдж, shim1 рдХрд╛ рдорд╛рди рд╡рд╛рдкрд╕ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╕рдВрдХреЗрддрдХ рдФрд░ рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕рдВрдХреЗрддрдХ рдФрд░ рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЛ рдЙрд╕ рдореВрд▓реНрдп рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рдПрдЧрд╛ рдЬреЛ рдХрд┐ arduino рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдХреА рдЧрд╛рд░рдВрдЯреА рд╣реИред

рдпрджрд┐ рдбреЗрдЯрд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдЦреЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕реНрд▓рд╛рдЗрдбрд░ рдПрдХ рддрд░рдл рдЪрд▓рд╛ рдЬрд╛рдПрдЧрд╛ред

рдЬрдм рдЖрдк рд╕рдВрдХреЗрддрдХ рдХреЗ рдЕрдВрджрд░ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ:

рдЫрд╡рд┐


Nulling рдХрдорд╛рдВрдб shim1 рдХреЛ arduino рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛

         case 'F': //     D5
         shim1 = EEPROM.read(5); //     EEPROM
         analogWrite(5, shim1 * 2.55); //   D5
         glavnaia();
         break;
         
         case 'f': //     D5
         shim1 = 0;
         analogWrite(5, shim1); //   D5,     EEPROM
         glavnaia();
         break; 

рдЙрд╕реА рд╕рдордп, рдореЗрдореЛрд░реА рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЕрдЧрд▓рд╛ рдмрдЯрди рджрдмрд╛рдиреЗ рд╕реЗ рдореЗрдореЛрд░реА рд╕реЗ рдорд╛рди рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ред
(рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреНрд░рдХрд╛рд╢ рдХреЛ рдмрдВрдж рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ)

рдЗрдВрдЯрд░рдлреЗрд╕



рд╕рдВрдЧреНрд░рд╣ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рд╕рд░реНрд╡рд░ рдХреЗ рдХрд╛рд░реНрдпрд╢реАрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ / var / www рд╣реИ), рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП - / var / www / knopki_shimpolz (рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдирд╛ рдлрд╝реЛрд▓реНрдбрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред

рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ, рдЕрдкрдиреЗ_ рд░реВрдЯрд░ / knopki_shimpolz / рдкрд░ рдЬрд╛рдПрдВ ред рдирд┐рдореНрди рдЪрд┐рддреНрд░ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛:

рдЫрд╡рд┐


рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдпрд╣ рд╕рдВрдЧреНрд░рд╣ рд╕реЗ index.html рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЦреЛрд▓рдиреЗ рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд▓рд╛рд╣ рджреА рдЬрд╛рддреА рд╣реИред

рдбрд┐рдорд░:

рдкрд╣рд▓рд╛ рдкреГрд╖реНрда рд▓реЛрдб рд╣реЛрдиреЗ рдкрд░, рдЕрдкрдбреЗрдЯ рдлрд╝рдВрдХреНрд╢рди рд╕рдХреНрд░рд┐рдп рд╣реЛрддрд╛ рд╣реИ - рд╢реЛ (); (рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рдпрд╣ рдПрдХ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЕрдВрддрд░рд╛рд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ) рдФрд░ рдкреАрдбрдмреНрд▓реВрдПрдо рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЕрдиреНрдп рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде arduins рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

/**/
show();
setInterval(show,2000);  /*     */
function show(){  /*   */
if(flagobnov == 1) { /*        */
            $.ajax({ 
                type: "GET",
                url: "box2.php?df=o", /*    */
                timeout:200, /*  (),          */          
                cache: false,       
                success: function(data){   
                                          
                           var vars = data.split(","); /*      */
                           if(vars.length == dlina){ /*    (   ) */
                               
                               /*d2*/
                               if(vars[0] == 1) { $(".d2otkl").show(); $(".d2vkl").hide(); }  /*      /     */
                               else if(vars[0] == 0) { $(".d2otkl").hide(); $(".d2vkl").show(); } 

                               /*d3*/
                               if(vars[1] == 1) { $(".d3otkl").show(); $(".d3vkl").hide(); }
                               else if(vars[1] == 0) { $(".d3otkl").hide(); $(".d3vkl").show(); }

                               ...

                               shim1 = vars[12]; /*    */ 
                               sh1(); /*       */ 

                               shim2 = vars[13]; 
                               sh2();

                               ...     


рд╢рд┐рдо 1 рдХрд╛ рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж , рдкреНрд░реЛрдЧреНрд░рд╛рдо рдлрдВрдХреНрд╢рди sh1 () рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИ;

function sh1(){ /*    */
  var $ppc = $('.progress-pie-chart'),
    percent = shim1,
    deg = 360*percent/100;
  if (percent > 50) {
    $ppc.addClass('gt-50');
  }
  else $ppc.removeClass('gt-50');
  $('.ppc-progress-fill').css('transform','rotate('+ deg +'deg)');
  $('.ppc-percents span').html(percent+' %       D5  '); /*    - D5 */
  sl1();
}

рдореВрд▓реНрдп shim1 рдХреЛ рд╕рдВрдХреЗрддрдХ (рдЧреНрд░реАрди рд╕рд░реНрдХрд▓) рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдХрд╛рд░реНрдп рдХреЛ рдлрд╝рдВрдХреНрд╢рди sl1 () рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ;

рд╕рдорд╛рд░реЛрд╣ sl1 (); рд╢рд┐рдо 1 рдореВрд▓реНрдп рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕реНрд▓рд╛рдЗрдбрд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ

function sl1(){ /*   */
       $( "#slider" ).slider({
       value : shim1,
       min : 0,
       max : 100,
       step : 1,
       slide: function( event, ui ) {
       
       ...

рдлрд╝рдВрдХреНрд╢рди рд╕реНрд▓рд╛рдЗрдб: рдлрд╝рдВрдХреНрд╢рди (рдИрд╡реЗрдВрдЯ, рдпреВрдЖрдИ) рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред

рдЬрдм рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЛ рдПрдХ рджрд┐рд╢рд╛ рдореЗрдВ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдбрд┐рд╡реАрдЬрди рджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдирд┐рдореНрди рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛рдо рдХрд░реЗрдЧрд╛:

рдЕрдкрдбреЗрдЯ рдЕрдХреНрд╖рдо рд╣реИ тЗи

flagobnov = 0;


рдпрд╣ рдЬрд╛рдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реНрд▓рд╛рдЗрдбрд░ рдХрд┐рд╕ рджрд┐рд╢рд╛ рдореЗрдВ (рдКрдкрд░ рдпрд╛ рдиреАрдЪреЗ) рдЪрд▓рд╛ рдЧрдпрд╛ рд╣реИ)

if( ui.value > shim1 ){

else if( ui.value < shim1 ){


рдПрдХ рдкреНрд░рддреАрдХ Arduine рдХреЛ рдПрдХ тЗи рд╕реЗ PWM рдХреЛ рдмрдврд╝рд╛рдиреЗ (рдШрдЯрд╛рдиреЗ) рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИ

$.ajax({  
    type: "GET",  
    url: "box2.php?df=D", /*          */


рд╣рдо arduins рд╕реЗ рдПрдХ рдирдпрд╛ PWM рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдирдП рдорд╛рди рдХреЗ рд╕рд╛рде рд╕рдВрдХреЗрддрдХ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди (sh1 ();) рдХрд╣рддреЗ рд╣реИрдВред

shim1 = vars[12]; /*         */
sh1(); /*       */


рдЕрдкрдбреЗрдЯ рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдВ тЗи

flagobnov = 1; 


рдлрд╝рдВрдХреНрд╢рди ( sh1 (); ), рдмрджрд▓реЗ рдореЗрдВ, рдПрдХ рд╕рдВрдХреЗрддрдХ рдЦреАрдВрдЪрддрд╛ рд╣реИ рдФрд░ рдлрд╝рдВрдХреНрд╢рди ( sl1 () ;) рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ ред

рдлрд╝рдВрдХреНрд╢рди ( sl1 (); ) рдирдП PWM рдорд╛рди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕реНрд▓рд╛рдЗрдбрд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдЧрд▓реЗ рд╕реНрд▓рд╛рдЗрдбрд░ рдЖрдВрджреЛрд▓рди рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реИред

рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЛрдб:
function sh1(){ /*    */
  var $ppc = $('.progress-pie-chart'),
    percent = shim1,
    deg = 360*percent/100;
  if (percent > 50) {
    $ppc.addClass('gt-50');
  }
  else $ppc.removeClass('gt-50');
  $('.ppc-progress-fill').css('transform','rotate('+ deg +'deg)');
  $('.ppc-percents span').html(percent+' %       D5  '); /*    - D5 */
  sl1();
}

function sl1(){ /*   */
       $( "#slider" ).slider({
       value : shim1,
       min : 0,
       max : 100,
       step : 1,
       slide: function( event, ui ) {  /*     ,   ,           */
       flagobnov = 0; /*     ,    "" */
           if( ui.value > shim1 ){ /*      ,    */
		$.ajax({  
		    type: "GET",  
		    url: "box2.php?df=D", /*          */
                    timeout:200,
                    cache: false,  
                    success: function(data){                       
                         var vars = data.split(",");
                         if(vars.length == dlina) 
                             { 
			       shim1 = vars[12]; /*         */
			       sh1(); /*       */
			     }  
                    }   
 	        });
           }

           else if( ui.value < shim1 ){ /*      ,    */
		$.ajax({  
		    type: "GET",  
		    url: "box2.php?df=d", /*          */
                    timeout:200,
                    cache: false,  
                    success: function(data){                       
                         var vars = data.split(",");
                         if(vars.length == dlina) 
                             { 
			       shim1 = vars[12]; /*         */
			       sh1(); /*       */
			     }  
                    }   
 	        });
           }

        flagobnov = 1; /*   */
       }
    });
}


рд╕рдВрдХреЗрддрдХ рдХреЗ рдореВрд▓реНрдп рдФрд░ рд╕реНрд▓рд╛рдЗрдбрд░ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЖрд░реНрдбрд┐рдиреЛ рдореЗрдВ рдореВрд▓реНрдп рдХреЗ рдЕрдиреБрд░реВрдк рдХрд░рдиреЗ рдХреА рдЧрд╛рд░рдВрдЯреА рд╣реИред

рдмрдЯрди рджрдмрд╛рддреЗ рд╣реБрдП "рддреБрд░рдВрдд PWM рдХреЛ рдмрдВрдж рдХрд░реЗрдВ" рдХрдорд╛рдВрдб рдХреЛ PWM рдХреЛ Arduino рдкрд░ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреЗрдЬрддрд╛ рд╣реИ, рдФрд░ рдмрдЯрди "рддреБрд░рдВрдд PWM рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдВ", PWM рдорд╛рди рдХреЗ рд▓рд┐рдП arduino рд╕реЗ рдкреВрдЫреЗрдЧрд╛ рдЬреЛ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдерд╛ред

/* d5  */
/*    D5*/
$(".d5shimvkl").click(function(){
                    $.ajax({  
		             type: "GET",  
		             url: "box2.php?df=F",
                             timeout:200,
                             cache: false,  
                             success: function(data)
                                {                       
                                  var vars = data.split(",");
                                    if(vars.length == dlina) 
                                       { 
                                          shim1 = vars[12]; /*         */
					  sh1(); /*       */
                                       }  
                                }   
 	                   }); 
                     return false;
                  
	});

/*    D5*/
$(".d5shimotkl").click(function(){
                    $.ajax({  
		             type: "GET",  
		             url: "box2.php?df=f",
                             timeout:200,
                             cache: false,  
                             success: function(data)
                                {                       
                                  var vars = data.split(",");
                                    if(vars.length == dlina) 
                                       { 
                                          shim1 = vars[12]; /*         */
					  sh1(); /*       */
                                       }  
                                }   
 	                   }); 
                     return false;
                  
	});


рджрд┐рдЦрд╛рд╡рдЯ


рд╕рдВрдХреЗрддрдХ рдХреА рд╕реНрдерд┐рддрд┐, рдЙрдирдХрд╛ рд░рдВрдЧ рдФрд░ рдлрд╝реЙрдиреНрдЯ shim.css рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ

/*   */
.progress-pie-chart {
  width: 200px;
  height: 200px;
  top: 90px; /*  */
  left: 80px; /*  */
  border-radius: 50%;
  background-color: #E5E5E5;
  position: absolute;
}
...
.ppc-percents span {
  display: block;
  font-size: 26px; /*   */
  font-weight: 600; /*   */
  font-family: Arial, Helvetica, sans-serif; /**/
  color: #161616; /*   */
  text-shadow: 0px 1px 2px #7c7c7c; /*    */
}


рд╕реНрд▓рд╛рдЗрдбрд░реНрд╕ рдХрд╛ рдЖрдХрд╛рд░ рдФрд░ рд╕реНрдерд┐рддрд┐ slai.css рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрджрд▓реА рдЬрд╛ рд╕рдХрддреА рд╣реИ

.ui-slider { 
position: relative; 
width: 200px; /*   */
text-align: left; 
outline: none; 
}
...
/*   */
.ui-slider-horizontal .ui-slider-handle { 
width: 50px; /*  */
height: 50px;
margin-left: -25px; 
outline: none;
box-shadow: 0 0 10px 3px rgba(0,0,0,0.3);
border-radius: 4px;
border: 1px solid #2b2c2b;
cursor: pointer;
}
...
/* */
s1 { 
position: absolute; 
top: 360px; 
left: 80px;
font-size: 26px; /*   */
font-weight: 600; /*   */
font-family: Arial, Helvetica, sans-serif; /**/
color: #161616; /*   */
text-shadow: 0px 1px 2px #7c7c7c; /*    */
}

/* */
s2 { 
position: absolute; 
top: 360px; 
left: 420px;
font-size: 26px; /*   */
font-weight: 600; /*   */
font-family: Arial, Helvetica, sans-serif; /**/
color: #161616; /*   */
text-shadow: 0px 1px 2px #7c7c7c; /*    */
}


рдмрд╕ рдЗрддрдирд╛ рд╣реА, рдЕрдЧрд▓реЗ рднрд╛рдЧ рдореЗрдВ рд╣рдо рддрд╛рдкрдорд╛рди рд╕рдВрд╡реЗрджрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ рддрд╛рдкрдорд╛рди рджреНрд╡рд╛рд░рд╛ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЪрд╛рд▓реВ / рдмрдВрдж рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд▓рд┐рдП рд╕реНрд▓реАрдк рдореЛрдб рднреА рдЬреЛрдбрд╝реЗрдВрдЧреЗред

рдзрдиреНрдпрд╡рд╛рджред

All Articles