Guys. Help please

  1. including, considered the provisions of the EEPROM capacitors and signal frequency, antenna number (1)

  2. get a signal “start tuner”:

1.determine the frequency

2.The number for the antenna

3.ischem memory

4.write if found from memory

4.1.check, if it is bad, then the next.

5.looking for a minimum SWR

6.Writes memory frequency, position, phone antenna

I can not understand. Help with code please

  // ?????????? ?????????? ???????:
#include <LiquidCrystal.h>
  // ?????????? ?????????? ???????? ?????????:
#include <AccelStepper.h>
// ??????? ????? ???????? ????????? ? ????????? ?????? ???????:
AccelStepper stepper(AccelStepper::FULL4WIRE, 8, 9, 10, 11);
AccelStepper stepper2(AccelStepper::FULL4WIRE, 2, 3, 4, 5);
  // ?????????? EEPROM - ?????????? ?????? ?????????:
#include <EEPROM.h>
  // ?????????? ?????????????? ???????:
#include "math.h" 
  // ????????? ?????????? ? ???????? ?? ? ???????:
float f = 0;
float SWRpad = 0;
float SWRotr = 0;
float SWR = 0;
  // ??????????? ???? ??????????:
LiquidCrystal lcd(10, 11, 12, 13, 14, 15);

void setup ()
{
analogReference(DEFAULT); // ??????????? ??????? ?????????? 5 ?.
lcd.begin(16, 2); // ?????? ??????????? ??????, 2 ?????? ?? 16 ????????.
  // ???????????? ???????? ???????? ????????? ? ???????? ? ?????? (RPM).
stepper.setMaxSpeed(300.0);
stepper.setAcceleration(100.0);
stepper.moveTo(1000000);
    
stepper2.setMaxSpeed(300.0);
stepper2.setAcceleration(100.0);
stepper2.moveTo(1000000); 
  // ????????? ???????? ?????? ? ??????:
Serial.begin(9600);
}
void loop ()
{
value = EEPROM.read(a);
f = analogRead(A0); // ?????? ??????? ???????.
SWRpad = analogRead(A2);  // ?????? ?????????? ???????? ?????.
SWRotr = analogRead(A1);  // ?????? ?????????? ?????????? ?????.
  // ?????? ? ????? ???:
SWR = (SWRpad + SWRotr)/(SWRpad - SWRotr);
  // ?????????? ????? ???? ? ???????? SWR - ??????????, ??? ????????? ???????, ???? ????? ???????? ?????, ?? ?????????? ????? ? ????? ????.
  // ????? ??????? ??????? ???????? ??????.
lcd.setCursor(0, 0);
lcd.print("SWR");
if (SWR < 1.3) {
lcd.setCursor(4, 0);
lcd.print("<1.3");  
}
else if (SWR > 3) {
// Read new position
int f = analogRead(A0);
stepper.moveTo(f);
stepper.setSpeed(100);
stepper.runSpeedToPosition();
if (SWR < 1.3) {
lcd.setCursor(4, 0);
lcd.print(SWR) {

delay(1000);


  // ???????? ? ??????? ??????:
delay (100);
lcd.clear(); 
}

I can not understand.

I can't either. Start with 1). What does EEPROM capacitors mean? What signal frequency? What antenna?

determine the frequency
looking in the memory
if found set of memory, check if it is bad, then the next.
Looking for minimum SWR, record memory frequency position.

If the SWR is more than 1.3 will be displayed if the SWR is greater than 3, then do a full step stepper motor, as long until we find the lowest SWR

This is a guess: The SWR is the Standing Wave Ratio between the impedance of the feedline to an (amateur radio) antenna and the impedance presented by the antenna. A perfect match sees a 1:1 ratio. My guess is that this is some kind of modeling software that reads an external impedance and uses capacitor values stored in EEPROM to construct a filter of some kind and keeps adjusting them until the SWR is minimized. It appears that A0 inputs the frequency while A1 and A2 supply the two impedances. Because the filter is often constructed from a capacitor and a coil, my guess is that the code jockeys the tap on a coil to change the inductance for a given capacitor. Since my Russian is a bit lacking (e.g., zero), all of this is a guess.

All right, you can help with the code please?
It is very necessary, please

There are some basic issues with the code:

  1. variables: value and a are not defined.
  2. analogRead() does not return a floating point value.
  3. you redefine f as an int later in the program. This is never a good idea.
  4. There are missing semicolons and braces ({}) missing.

Guessing at what you're trying to do and supplying the missing braces, I get:

// ?????????? ?????????? ???????:
#include <LiquidCrystal.h>
// ?????????? ?????????? ???????? ?????????:
#include <AccelStepper.h>
// ??????? ????? ???????? ????????? ? ????????? ?????? ???????:
//AccelStepper stepper(AccelStepper::FULL4WIRE, 8, 9, 10, 11);
//AccelStepper stepper2(AccelStepper::FULL4WIRE, 2, 3, 4, 5);
// ?????????? EEPROM - ?????????? ?????? ?????????:
#include <EEPROM.h>
// ?????????? ?????????????? ???????:
#include "math.h" 
// ????????? ?????????? ? ???????? ?? ? ???????:
float f = 0;
float SWRpad = 0;
float SWRotr = 0;
float SWR = 0;
// ??????????? ???? ??????????:
LiquidCrystal lcd(10, 11, 12, 13, 14, 15);

void setup ()
{
  analogReference(DEFAULT); // ??????????? ??????? ?????????? 5 ?.
  lcd.begin(16, 2); // ?????? ??????????? ??????, 2 ?????? ?? 16 ????????.
  // ???????????? ???????? ???????? ????????? ? ???????? ? ?????? (RPM).
  //stepper.setMaxSpeed(300.0);
  //stepper.setAcceleration(100.0);
  //stepper.moveTo(1000000);

  //stepper2.setMaxSpeed(300.0);
  //stepper2.setAcceleration(100.0);
  //stepper2.moveTo(1000000); 
  // ????????? ???????? ?????? ? ??????:
  Serial.begin(9600);
}
void loop ()
{
  byte value = EEPROM.read(a);
  f = analogRead(A0); // ?????? ??????? ???????.
  SWRpad = analogRead(A2);  // ?????? ?????????? ???????? ?????.
  SWRotr = analogRead(A1);  // ?????? ?????????? ?????????? ?????.
  // ?????? ? ????? ???:
  SWR = (SWRpad + SWRotr)/(SWRpad - SWRotr);
  // ?????????? ????? ???? ? ???????? SWR - ??????????, ??? ????????? ???????, ???? ????? ???????? ?????, ?? ?????????? ????? ? ????? ????.
  // ????? ??????? ??????? ???????? ??????.
  lcd.setCursor(0, 0);
  lcd.print("SWR");
  if (SWR < 1.3) {
    lcd.setCursor(4, 0);
    lcd.print("<1.3");  
  } 
  else {
    if (SWR > 3) {
      // Read new position
      byte f = analogRead(A0);
      stepper.moveTo(f);
      stepper.setSpeed(100);
      stepper.runSpeedToPosition();
    }
    if (SWR < 1.3) {
      lcd.setCursor(4, 0);
      lcd.print(SWR);
    }
    delay(1000);
  }

  // ???????? ? ??????? ??????:
  delay (100);
  lcd.clear(); 
}

which still won't compile because of missing data, but at least it's more readable.

Please correct the code, append, I will not stay in debt

Hi, you are building an AUTO ANTENNA MATCHING UNIT, I assume.
Have you googled ATU arduino it is surprising what has already been done.

Tom.... :slight_smile:

I can not deal with code :frowning:

Devil40rus:
I can not deal with code :frowning:

Then this probably wasn't a good choice of projects for you to take on, since it involves you dealing with code. If you want somebody to do the coding for you, you should ask for help in the Gigs & Collaborations section. Note that most people would expect to be paid for working for you.

Are you trying to get people to do your homework for you? Heheh. Also, your thread title is terrible, I'm not even sure why I clicked on this thread as I usually ignore such vague and pointless titles. Just an FYI.

I am willing to pay

Devil40rus:
I am willing to pay

Then Reply #10 tells you what to do.