У меня есть вопрос, в моем коде произошла ошибка, говорящая о том, что TIMSK не был объявлен в области видимости (ошибок нет)

#include <SmartInventor.h>



void setup() {
  SmartInventor.DCMotorUse();




}
void loop() {
  // М1, М2, М3
  // по часовой стрелке, против часовой стрелки, СТОП
  // 0-100
  // 0-360

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(5000);

  SmartInventor.DCMotor(M1, CCW, 10);  // Музыка начинается //0:00:06
  delay(2000);

  SmartInventor.DCMotor(M1, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(11000);

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0); //Музыка останавливается //0:00:32
  delay(10000);

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(5000);

  SmartInventor.DCMotor(M1, CCW, 10);
  delay(1000);

  SmartInventor.DCMotor(M1, CW, 10); // Музыка возобновляется //0:00:44
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(18000);

  SmartInventor.DCMotor(M1, CCW, 10);
  delay(3000);

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 10);
  delay(8000);

  SmartInventor.DCMotor(M1, CW, 10); //Музыка останавливается //0:01:15
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(5000);

  SmartInventor.DCMotor(M1, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(3000);

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0); // Музыка снова начинается //0:01:31
  delay(11000);

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0); //Музыка останавливается //0:02:03
  delay(23000);

  SmartInventor.DCMotor(M1, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0); // Музыка снова включается //0:02:14
  delay(12000);

  SmartInventor.DCMotor(M1, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(6000);

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(6000);

  SmartInventor.DCMotor(M1, CCW, 10); //Музыка заканчивается //0:02:40
  delay(2000);

  SmartInventor.DCMotor(M1, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M1, STOP, 0);
  delay(3000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(5000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000)

  ;SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(13000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(13000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(13000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000)

  ;SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CCW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(2000);

  SmartInventor.DCMotor(M2, CW, 10);
  delay(2000);

  SmartInventor.DCMotor(M2, STOP, 0);
  delay(7000);



}

, 👍0

Обсуждение

Несколько дней назад другой пользователь задал тот же вопрос. Вы этот пользователь? Как написано в комментариях к этим вопросам, вы всегда должны включать в вопрос полное сообщение об ошибке. "Ошибок нет" просто неправильно, раз вы упомянули об ошибке прямо перед этим, @chrisl

Для какой платы вы компилируете код? И дайте ссылку на библиотеку smartinventory, @chrisl

Библиотека SmartInventor предназначена только для платы Rokit Smart. Почему вы пытаетесь использовать его с Arduino Mega?, @Majenko


1 ответ


1

Библиотека SmartInventor предназначена для использования с платой Rokit Smart. Эта плата основана на ATMega32.

Arduino Mega не является платой Rokit Smart, поэтому библиотека не будет работать, так как Arduino Mega основана на ATMega2560. Эти два чипа разные и имеют разные наборы внутренних периферийных устройств. Соответственно, регистры имеют разные имена.

,

Итак, какую плату я могу использовать для Rokit smart?, @user64079

Рокит Смарт., @Majenko

Я просто собираюсь написать новый код для платы mega2560 Arduino. Ребята, подскажите, как написать тот же код, что я делал с Rokit smart, но на языке Arduino?, @user64079

Все зависит от того, что вы пытаетесь сделать и для чего вы пытаетесь это сделать., @Majenko

можно код такого типа https://www.bing.com/videos/search?q=coding+two+dc+motors&&view=detail&mid=A6D70717250191472167A6D70717250191472167&&FORM=VRDGAR&ru=%2Fvideos%2Fsearch%3Fq%3Dcoding%2520two%2520dmotors 26qs%3Dn%26form%3DQBVR%26sp%3D-1%26pq%3Dcoding%2520two%2520dc%2520motors%26sc%3D0-20%26sk%3D%26cvid%3D6A02585DECEB4033ADC28846E118035B для мегаборда, @user64079

Вероятно. Еще раз: что вы пытаетесь контролировать? Мега - это просто мозг. У вас должно быть что-то с этим связано., @Majenko

3 двигателя постоянного тока. А 1 и 3 это одно и тоже как Рокит смарт? Если это плохо, закодируйте 2 двигателя на одной плате, а другой двигатель на другой плате., @user64079

Нет подсказки. Как вы подключаете моторы? У вас должен быть вид моторного щита. Я предлагаю вам начать с просмотра примеров, предоставленных производителем этого щита., @Majenko

да у меня есть моторный щит, @user64079