Добрый день.Пытаюсь написать скетч для счётчика оборотов при помощи моторчика от 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);
}```
Прежде чем хоть кто-то станет это смотреть - исправьте очевидные ошибки, типа неописанных переменных и функций. Выкладывать код в таком виде это крайнее неуважение к участникам.
Хинт - в сообщениях об ошибках по каждой ошибке указан номер строки в коде и краткое пояснение, что именно не так. Если пояснение непонятно - его можно скопировать и засунуть в гугл.
Так, исправляя ошибку за ошибкой, постепенно придете к тому, что компиляция пройдет до конца.
Навскидку, в вашем коде примерно с десяток ошибок.
Добавка.
Это все справедливо при условии, что вы в Ардуино ИДЕ включили подробный вывод в настройках. Если еще не сделали - начните с этого.
кстати, для вашего устройства очень мог бы пригодитья встраеваемый в некоторые авр компаратор, а уважаемый ЕвгенийП когда-то обещал поделиться инфой об аналоговых узлах в авр
С днем Космонавтики, товарищи!