Счетчик оборотов на моторчике от CD

Добрый день.Пытаюсь написать скетч для счётчика оборотов при помощи моторчика от CD.Вывод информации идёт на ТМ1637.Моторчик подключен к А1 и А0.На ТМ1637 вывел " 0000 ".Это всё, что получилось.Затем стал пытатся подключиль моторчик, но не могу правильно написать скеч.Просьба помочь.

int8_t DispMSG[] = {1, 2, 3, 4};   
#define CLK 3
#define DIO 2
TM1637 tm1637(CLK, DIO);
int i=0;
int t[4]={0,0,0,0};
void num(unsigned int value){
  t[3]=((value/1000)%10);
  t[2]=((value/100)%10);
  t[1]=((value/10)%10);
  t[0]=((value/1)%10);
  }
void setup()
{
  tm1637.init();
  pinMode(AN0,OUTPUT);
  pinMode(AN1,OUTPUT);
  pinMode(A0,INPUT)

  tm1637.set(2);
  tm1637.point(false);
  tm1637.display(DispMSG);
  delay(1000);
}
void loop()
{
if (digitalRead(MINUS)==LOW) ctr=0; 

pinMode(A1,OUTPUT);
digitalWrite(A1,LOW);
a=analogRead(A0);
if (a>0) ctr+=1+a/9;

pinMode(A0,OUTPUT);
digitalWrite(A0,LOW);
a=analogRead(A1);
if (a>0) ctr-=1+a/9;

updateDisplay(1);
decimal(ctr/10);

 num (i);
  tm1637.display(0,t[3]);
  tm1637.display(1,t[2]);
  tm1637.display(2,t[1]);
  tm1637.display(3,t[0]);
  delay(1000);
  i++;
  if(i>=9999);{
    i=0;
    }
  delay(1000);
}```

А можно описать хотя бы принцип работы? Как и кому у Вас моторчик будет помогать обороты замерять? И чьи обороты? Свои или чьи-то чужие?

Ну и также не помешали бы кинематическая и электрическая схемы.

@Krinke

Во-первых, вставьте код правильно.

Во-вторых, он не компилируется. Прежде чем выкладывать код - хорошим тоном считается самому прогнать его через компиляцию и исправить ошибки.

В-третьих, что за алгоритм измерения оборотов вы используете в строчках 29-37? Где вы его взяли?

Алгоритм свободного вращения на основе генерации.Выроботка позитивной и негативной энергии.Если конечно это будет работать.

Моторчик подключен к А1 и А0 и при бращении генерирует энергию.

Свои обороты

Прежде чем хоть кто-то станет это смотреть - исправьте очевидные ошибки, типа неописанных переменных и функций. Выкладывать код в таком виде это крайнее неуважение к участникам.

1 лайк

Прошу прощения, это от моего невежества.Я только начал пробовать с Ардуино

Вставить код в ИДЕ и нажать компиляцию, ПРЕЖДЕ чем вываливать ЭТО в форум - вот с чего надо было начать.

Исправьте ошибки и выложите код заново, новым сообщением (не исправляйте уже выложенный).

Попробую, буду искать как.

не знаете как в код в ИДЕ вставить? Или что?

Эта ситуация показывает, что вам еще рано пытаться измерить обороты мотрчика - начните с изучения основ работы с кодом

генерирует ЭДС 8(

Нет. Выроботывает позитивную и негативную энергию, сказано ж, в #4.

1 лайк

ее потом можно разделять и использовать отдельно… как живую и мертвую воду

3 лайка

Рад, что смог развеселить вас в день космонавтики.Не компилируется, потому что написал скетч не правильно, а где, знаний не хватает.Будем искать

Хинт - в сообщениях об ошибках по каждой ошибке указан номер строки в коде и краткое пояснение, что именно не так. Если пояснение непонятно - его можно скопировать и засунуть в гугл.
Так, исправляя ошибку за ошибкой, постепенно придете к тому, что компиляция пройдет до конца.
Навскидку, в вашем коде примерно с десяток ошибок.

Добавка.
Это все справедливо при условии, что вы в Ардуино ИДЕ включили подробный вывод в настройках. Если еще не сделали - начните с этого.

1 лайк

ну и дак чо ж ты барина-то мучаешь? Исправляй давай, холллоп :slight_smile:

1 лайк

Я так и думал.Возможно кое что найду

Ну зачем так.Что то я должен и сам сделать, иначе не пойму ничего

кстати, для вашего устройства очень мог бы пригодитья встраеваемый в некоторые авр компаратор, а уважаемый ЕвгенийП когда-то обещал поделиться инфой об аналоговых узлах в авр :wink:
С днем Космонавтики, товарищи!