Проблема с работой прерывания и отсутствием отключения шаговика

Всё какие то ругательства.

1 лайк

На 2.3.6 не компилируется так же, как и на 1.8.19
Кто в правах - перенесите эту лажу ложь в ЧЧ.

Да тут вставка кода глючит, умножение, деление, комменты заменились на теги. Тут какой-то глюк движка вставки кода. Но это не оправдывает неаккуратности оформления поста.

/*
  Blink

  Turns an LED on for one second, then off for one second, repeatedly.

  Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
  it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
  the correct LED pin independent of which board is used.
  If you want to know what pin the on-board LED is connected to on your Arduino
  model, check the Technical Specs of your board at:
  https://www.arduino.cc/en/Main/Products

  modified 8 May 2014
  by Scott Fitzgerald
  modified 2 Sep 2016
  by Arturo Guadalupi
  modified 8 Sep 2016
  by Colby Newman

  This example code is in the public domain.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000 * 2);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000 / 2);                       // wait for a second
}

Не, не катит. “Усё упорядке , Шеф.”(с)

юникод зло))))

это код от ИИ ?)))
<em> — HTML-разметка, в коде Arduino недопустима (если только вы не делаете генерацию кода через веб-интерфейс, но это отдельная история).

в любом случае нет времени, успехов!)))

Кста, что такое ЧЧ?

Сори, второй раз здесь, но буду благодарен если укажете как оформлять посты лучше

У меня в коде стоят стандартные /* */ тут сам форум их заменил

Код писал сам

В сообщении 25 они тоже есть - однако норм. Есть вариант на количество символов, но чёй-то сомнительно.

:man_shrugging: _______

Брюс?

Эх, не понял отсылку(

#include <Wire.h>
#include <iarduino_RTC.h>
#include <Stepper.h>
#define STEPS 2048
Stepper stepper(STEPS, 4, 6, 5, 7);

iarduino_RTC watch(RTC_DS1302, 12, 10, 11);

volatile int TT = 0;
volatile int X = 0;

void setup() {
watch.begin();
pinMode(2, INPUT_PULLUP);
attachInterrupt(0, JOHOHO_ITS_TIME_MASHINE, FALLING);
pinMode(9, OUTPUT);
pinMode(13, OUTPUT);
}

void loop() {
int STT; // ИНИЦИАЛИЗАЦИЯ
int NT;
watch.gettime();
uint8_t hours24 = watch.hours;
uint8_t minutes = watch.minutes;
STT = (60 * hours24 + minutes);
NT = (60 * hours24 + minutes);
TT = (NT - STT);
stepper.setSpeed(10);
stepper.step(2048 * 4); 
digitalWrite(9, HIGH);
delay(2000);
digitalWrite(9, LOW);
while (TT < 11) { // СПОРТИВНЫЙ БЛОК
watch.gettime();
uint8_t hours24 = watch.hours;
uint8_t minutes = watch.minutes;
NT = (60 * hours24 + minutes);
TT = (NT - STT - X);
delay(1000);
}
stepper.setSpeed(10);
stepper.step(2048 * 4);
digitalWrite(9, HIGH);
delay(2000);
digitalWrite(9, LOW);
while (TT < 32) { // НАУЧНЫЙ БЛОК
watch.gettime();
uint8_t hours24 = watch.hours;
uint8_t minutes = watch.minutes;
NT = (60 * hours24 + minutes);
TT = (NT - STT - X);
delay(1000);
}
stepper.setSpeed(10);
stepper.step(2048 * 4);
digitalWrite(9, HIGH);
delay(2000);
digitalWrite(9, LOW);
delay(2000);
digitalWrite(9, HIGH);
delay(2000);
digitalWrite(9, LOW);
while (TT < 38) { // ПОВТОРЕНИЕ НАУЧНОГО БЛОКА
watch.gettime();
uint8_t hours24 = watch.hours;
uint8_t minutes = watch.minutes;
NT = (60 * hours24 + minutes);
TT = (NT - STT - X);
delay(1000);
}
stepper.setSpeed(10);
stepper.step(2048 * 4);
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
delay(1000);
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
while (TT < 69) { // ОТДЫХ
watch.gettime();
uint8_t hours24 = watch.hours;
uint8_t minutes = watch.minutes;
NT = (60 * hours24 + minutes);
TT = (NT - STT - X);
delay(1000);
}
stepper.setSpeed(10);
stepper.step(2048 * 4);
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
delay(1000);
digitalWrite(9, HIGH);
delay(3000);
digitalWrite(9, LOW);
while (TT < 79) { // ЗАВЕРШЕНИЕ
watch.gettime();
uint8_t hours24 = watch.hours;
uint8_t minutes = watch.minutes;
NT = (60 * hours24 + minutes);
TT = (NT - STT - X);
delay(1000);
}
stepper.setSpeed(10);
stepper.step(2048 * 4);
digitalWrite(9, HIGH);
delay(500);
digitalWrite(9, LOW);
delay(500);
digitalWrite(9, HIGH);
delay(500);
digitalWrite(9, LOW);
delay(500);
digitalWrite(9, HIGH);
delay(500);
digitalWrite(9, LOW);
delay(500);
digitalWrite(9, HIGH);
delay(500);
digitalWrite(9, LOW);
}

void JOHOHO_ITS_TIME_MASHINE() { // ФУНКЦИЯ ПРЕРЫВАНИЯ
switch (TT) {
case 0 ... 10:
digitalWrite(13, HIGH);
digitalWrite(13, LOW);
X = TT;
TT = 0;
break;
/*
case 11 ... 31:
TT = 11;
digitalWrite(13, HIGH);
delay(300);
digitalWrite(13, LOW);
X = TT - 11 + X;
delay(2000);
break;
case 32 ... 38:
TT = 32;
digitalWrite(13, HIGH);
delay(300);
digitalWrite(13, LOW);
X = TT - 32 + X;
delay(2000);
break;
case 39 ... 68:
TT = 39;
digitalWrite(13, HIGH);
delay(300);
digitalWrite(13, LOW);
X = TT - 39 + X;
delay(2000);
break;
case 69 ... 79:
TT = 69;
digitalWrite(13, HIGH);
delay(300);
digitalWrite(13, LOW);
X = TT - 69 + X;
delay(2000);
break;
*/
}
}

может пригодится тогда…
вообще вы время выбрали не удачное, сейчас все пускают слюни на вакансию https://hh.ru/vacancy/123419795 уже 33 человека, ахах

Да кто такой этот ваш ЧЧ?

Если вы уверены, что всё сделали по правилам - обратитесь в Обращения по модерации форума - #11 от пользователя kolyn вдруг там реально проблема при вставке кода

1 лайк

Спасибо

если сами писали то почему все комментарии на английском?

1 лайк

Тебе не лень менять раскладку? Ну, ИМХО