Прошивка на ардуино нано: бегущие поворотники+стоп+задний ход(исправить ошибки)

maratkoreetz
Offline
Зарегистрирован: 21.10.2018

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

[code]
#include <Adafruit_NeoPixel.h>             // подключаем библиотеку
int count=27; // количество диодов на одной фаре 
Adafruit_NeoPixel strip = Adafruit_NeoPixel(count, 7, NEO_GRB + NEO_KHZ800); //Инициализируем первый поворотник на 7 цифровом выходе
Adafruit_NeoPixel strip2 = Adafruit_NeoPixel(count, 8, NEO_GRB + NEO_KHZ800);//Инициализируем второй поворотник на 8 цифровом выходе
void setup() 
{
  pinMode(3, INPUT); 
  pinMode(4, INPUT);
  pinMode(5, INPUT); 
  pinMode(6, INPUT);
  strip.begin();
  strip.show(); 
  strip2.begin();
  strip2.show();
}
void loop() 
{
   {
    if ((digitalRead(5) == HIGH) and (digitalRead(6) == HIGH)) 
    { 
      //Режим аварийной сигнализации, если на 5 и 6 пин приходит плюс
      for(int k = 0; k < 3; k++)
      {  
      // цикл до трех - сигнал "перестроения" , при кратковременном включении мигает 3 раза,
      for(int i = 0; i < count+1; i++)
      {
      for(int j = 0; j < i; j++)
      {
    if ((digitalRead(5) == HIGH) and (digitalRead(6) == HIGH)) 
      {
      k = 0; // если во время мигания поворотника получаем еще плюcовой сигнал, то обнуляем счетчик, чтобы поворотник мигал еще как минимум 2 раза
      } 
      strip.setPixelColor(j, strip.Color(255, 69, 0)); // R=255, G=0, B=0 — цвет светодиода
      strip2.setPixelColor(j, strip2.Color(255, 69, 0)); // R=255, G=0, B=0 — цвет светодиода
          }
          delay(40);
          strip.show();
          strip2.show();
        for(int i = 0; i < count+1; i++)
        {
        for(int i = 0; i < count+3; i++)
        {
          for(int j = 0; j < i; j++)
          {
            // в этом цикле плавно тушим предыдущий светодиод, делаем его наполовину тусклее, чтобы движение было плавнее
            strip.setPixelColor(j-2, strip.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip.setPixelColor(j-1, strip.Color(63, 17, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip.setPixelColor(j, strip.Color(127, 34, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip2.setPixelColor(j-2, strip2.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip2.setPixelColor(j-1, strip2.Color(63, 17, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip2.setPixelColor(j, strip2.Color(127, 34, 0)); // R=255, G=0, B=0 — цвет светодиода
          }
          delay(40);
          strip.show();
          strip2.show();
      for(int i = 0; i < count+3; i++)
      {
      for(int k = 0; k < 3; k++)
    {
              
    if (digitalRead(5) == LOW and digitalRead(6) == HIGH) 
    { 
      // включается один поворотник 
      for(int k = 0; k < 3; k++)
      {  
        // цикл до трех - сигнал "перестроения" , при кратковременном включении мигает 3 раза,
        for(int i = 0; i < count+1; i++)
        {
          for(int j = 0; j < i; j++)  
          {
            if ((digitalRead(5) == LOW) and (digitalRead(6) == HIGH)) 
              {
                k = 0;
              }
              strip.setPixelColor(j, strip.Color(255, 69, 0)); // R=255, G=0, B=0 — цвет светодиода
          }
          delay(40);
          strip.show();
        for(int i = 0; i < count+1; i++)
        {
        for(int i = 0; i < count+3; i++)
        {
          for(int j = 0; j < i; j++)
          { 
            // в этом цикле плавно тушим предыдущий светодиод, делаем его наполовину тусклее, чтобы движение было плавнее
            strip.setPixelColor(j-2, strip.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip.setPixelColor(j-1, strip.Color(63, 17, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip.setPixelColor(j, strip.Color(127, 34, 0)); // R=255, G=0, B=0 — цвет светодиода
          }
          delay(40);
          strip.show();
      for(int i = 0; i < count+3; i++)
      {
      for(int i = 0; k < 3; k++)
      {
    for(int i = 0; i < count; i++)
    {
    if ((digitalRead(5) == HIGH and digitalRead(6) == LOW)) 
    {
     // включается второй поворотник
      for(int k = 0; k < 3; k++)
      {  
        // цикл до трех - сигнал "перестроения" , при кратковременном включении мигает 3 раза,  
        for(int i = 0; i < count+1; i++)
        {
          for(int j = 0; j < i; j++)
          {
            if ((digitalRead(5) == HIGH) and (digitalRead(6) == LOW)) 
            {
              k = 0;
            }
            strip2.setPixelColor(j, strip2.Color(255, 69, 0)); // R=255, G=0, B=0 — цвет светодиода
          for(int j = 0; j < i; j++)
          {
          delay(40);
          strip2.show();
        for(int j = 0; j < i; j++)
        {
        for(int i = 0; i < count+3; i++)
        {
          for(int j = 0; j < i; j++)
          { 
            // в этом цикле плавно тушим предыдущий светодиод, делаем его наполовину тусклее, чтобы движение было плавнее
            strip2.setPixelColor(j-2, strip2.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip2.setPixelColor(j-1, strip2.Color(63, 17, 0)); // R=255, G=0, B=0 — цвет светодиода
            strip2.setPixelColor(j, strip2.Color(127, 34, 0)); // R=255, G=0, B=0 — цвет светодиода
          }
          delay(40);
          strip2.show();
        }
      for(int j = 0; j < i; j++)
      { 
      // включается один поворотник
     if ((digitalRead(3) == HIGH))
      { 
      // режим сигнала стоп, если на 3 пин подаем плюс
      for(int j = 127; j < 255; j++) 
      {
        for(int i = 0; i < count; i++) 
        {
          strip.setPixelColor(i, strip.Color(255, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
          strip2.setPixelColor(i, strip2.Color(225, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
        }
        strip.show();
        strip2.show();
        delay(1000);
        for(int i = 0; i < count; i++)
        {
          strip.setPixelColor(i, strip.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
          strip2.setPixelColor(i, strip2.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
        }
        strip.show();
        strip2.show();
        delay(1000);
      for(int j = 127; j < 225; j++) 
      {
        for(int i = 0; i < count; i++) 
        {
        strip.setPixelColor(i, strip.Color(225, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
        strip2.setPixelColor(i, strip2.Color(255, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
        }
        strip.show();
        strip2.show();
        delay(1000);
        for(int i = 0; i < count; i++)
        {
          strip.setPixelColor(i, strip.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
          strip2.setPixelColor(i, strip2.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
        }
        strip.show();
        strip2.show();
        delay(1000);
     if ((digitalRead(3) == HIGH))
     {
     if ((digitalRead(4) == HIGH))
     { 
      // Режим заднего хода, если на 4 пин подаем плюс
      for(int j = 127; j < 225; j++) 
      {
        for(int i = 0; i < count; i++) 
        {
        strip.setPixelColor(i, strip.Color(255, 255, 255)); // R=255, G=0, B=0 — цвет светодиода
        strip2.setPixelColor(i, strip2.Color(225, 225, 225)); // R=255, G=0, B=0 — цвет светодиода
        }
        strip.show();
        strip2.show();
        delay(1000);
        for(int i = 0; i < count; i++)
        {
          strip.setPixelColor(i, strip.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
          strip2.setPixelColor(i, strip2.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
        }
        strip.show();
        strip2.show();
        delay(1000);
      
      for(int j = 127; j < 255; j++) 
      {
        for(int i = 0; i < count; i++) 
        {
          strip.setPixelColor(i, strip.Color(225, 225, 225)); // R=255, G=0, B=0 — цвет светодиода
          strip2.setPixelColor(i, strip2.Color(227, 225, 225)); // R=255, G=0, B=0 — цвет светодиода
        }
        strip.show();
        strip2.show();
        delay(1000);
        for(int i = 0; i < count; i++)
        {
          strip.setPixelColor(i, strip.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
          strip2.setPixelColor(i, strip2.Color(0, 0, 0)); // R=255, G=0, B=0 — цвет светодиода
        }
        strip.show();
        strip2.show();
        delay(1000);
      for(int j = 127; j < 255; j++) 
      {
      if (digitalRead(4) == HIGH)
      {
     for(int j = 127; j < 255; j++)
      }
    }
  }
[/code]
DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

-> в платный раздел. 

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Увы, никто не поможет по двум причинам:

1) Код не вставлен по правилам форума

2) Не приведены ошибки, которые вылетают

maratkoreetz
Offline
Зарегистрирован: 21.10.2018

подскажите пожалуйста как войти в платный раздел.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Щелчком мыши на его названии.

А название "Ищу исполнителя".