Автоматическая подсветка лестницы и MM5450

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

Всем привет, прочитал всю тему, но так и не разобрался со скетчем=))) а точнее какой выбрать)))) нужно чтобы была дежурка и ШИМ ступенек(плавно загорались) с двумя датчиками, прост почитав тему нашел что кто-то что то урезал кто-то три датчика поставил, и какая на нынешний момент акетуальная схема, и на каком драйвере делать? на 5450 или 5451, пока не купил

Ahtung533
Offline
Зарегистрирован: 21.01.2017

Xumuk, покупайте 5450, код под него писался. Вот самая актуальная версия на данный момент с ШИМом, дежурной подсветкой, двумя датчиками и фоторезистором:

//Устанавливаем контакты для драйвера
#define  DATA  8
#define  CLOCK 12
//Устанавливаем контакт фоторезистора
#define  FOTO A0
//Устанавливаем контакты для первого датчика
#define  T1  10
#define  E1  6
//Устанавливаем контакты для второго датчика
#define  T2  5
#define  E2  4
//Устанавливаем контакт управления яркостью светодиодов
#define  BR  9
const byte brightset = 250;// яркость включенной лестницы
const byte brightsetFirstLast = 5; // яркость первой и последнй ступеньки
//Задаем количество светодиодов
#define NUM_LEDS 17 //количество ступеней менять здесь!
const uint32_t masky []= {
0b0000000000000000000000000000001,
0b0000000000000000000000000000001,
0b0000000000000000000000000000001,
0b0000000000000000000000000000001,
0b1000000000000000000000000000001,
0b1000000000000000000000000000001,
0b1000000000000000000000000000001,
0b1000000000000000100000000000001,
0b1000000000100000000000100000001,
0b1000000000000000100000000000001,
0b1000000100000001000000010000001,
0b1000000100000001000000010000001,
0b1000010000010000001000001000001,
0b1000010000010000001000001000001,
0b1000100001000010000100001000001,
0b1000100001000010000100001000001,
0b1010101010101010101010101010101,
0b1101101101101101101101101101101,
0b1111011111011111101111110111111,
0b1111111111111111111111111111111,
};

unsigned long FirstLastBitDec; // количество ступенек в двоичном коде типо 0b100000000000000000000....
uint32_t piss;
uint32_t data;

void setup()
{
  //Serial.begin(9600);
  pinMode(DATA, OUTPUT);
  pinMode(CLOCK, OUTPUT);
  digitalWrite(CLOCK, HIGH);
  digitalWrite(FOTO, HIGH);
  pinMode(BR, OUTPUT);
  pinMode(T1, OUTPUT);
  pinMode(T2, OUTPUT);
  pinMode(E1, INPUT);
  pinMode(E2, INPUT);
  digitalWrite(E1, HIGH);
  digitalWrite(E2, HIGH);
  DetectBitNumLeds();
  FirstLast(); 
 
}
void loop()  // Основной цикл.
{
  //Serial.println(analogRead(FOTO)); //Serial.println(BitDec); // Serial.println(" ");
  delay(10);
  static bool state, state0;
  if (analogRead(FOTO) < 400) state0 = 1; // включение выключеие дежурки
  if (analogRead(FOTO) > 600)             // гистерезис отключения дежурки
  {
    state0 = 0;
    analogWrite(BR, LOW);
  }
  if (state0 == 1) FirstLast();
  if (analogRead(FOTO) < 400) state = 1; // порог освещенности включения
  //else analogWrite(9, LOW);            // выключаем ночную подсветку
  if (analogRead(FOTO) > 600) state = 0; // порог освещенности выключения
  // else analogWrite(9, HIGH);           // включаем ночную подсветку
  if (state)
  {
    int D1 = Ultrasonic(T1, E1);    // измеряем расстояние НИЖНЕГО датчика
   // Serial.print("BOT");
  //  Serial.println(D1);
    if (D1 > 0 && D1 < 80)          // если расстояние меньше 80см, то
    TurnOnBotTop ();   
    int D2 = Ultrasonic(T2, E2);    // измеряем расстояние ВЕРХНЕГО датчика
   // Serial.print("TOP");
   // Serial.println(D2);
    if (D2 > 0 && D2 < 80)          // если расстояние меньше 80см, то
    TurnOnTopBot ();
    }
}

void TurnOnBotTop ()                                              //Зажигаем лестницу снизу вверх
 {
      analogWrite (BR,  brightset);
      for (char i = NUM_LEDS - 1; i >0; i--)                      // зажигаем светодиоды снизу вверх
      {
        PWM_MM5450(FirstLastBitDec*2-1  >> i);
        //delay(300);                                             // задержка зажигания
      }
           
      for (char i = 1; i < NUM_LEDS; i++)                         // тушим светодиоды снизу вверх
      {
        PWMOFF_MM5450(FirstLastBitDec*2-1  << i);
        //delay(300);                                             // задержка затухания
      }
    }
void TurnOnTopBot ()                                              // зажигаем лестницу сверху вниз
    {
      analogWrite (BR,  brightset);
      for (char i = NUM_LEDS-1; i > 0; i--)                        // зажигаем светодиоды сверху вниз
      {
       PWM_MM5450(FirstLastBitDec*2-1 << i);
       // delay(300);                                              // задержка зажигания
      }
        for (char i = 1; i <NUM_LEDS; i++)                         // тушим светодиоды сверху вниз
      {
        PWMOFF_MM5450(FirstLastBitDec*2-1 >> i);
        //delay(300);                                               // задержка затухания
      }
   }


void DetectBitNumLeds()                                             //определяем число ступенек в BIN формате первой и последней исходя из количества ступенек
{
  FirstLastBitDec=1;
   for (int i=1;i<NUM_LEDS;i++)
    {
      FirstLastBitDec=FirstLastBitDec*2;
      //Serial.println(FirstLastBitDec);
    }
   }

  
void FirstLast()                                                     // зажигаем первую последнюю в дежурную подсветку
{   
  analogWrite (BR,  brightsetFirstLast);
  MM5450(FirstLastBitDec+1);
 
}
int Ultrasonic(byte Trig_pin, byte Echo_pin)                          // расчитвыем расстояние ультрасоников
{
  digitalWrite(Trig_pin, HIGH);
  delayMicroseconds(20);
  digitalWrite(Trig_pin, LOW);
  return pulseIn(Echo_pin, HIGH, 20000) / 29.0 / 2;                   // возвращение дистанции в см
}

void PWM_MM5450(uint32_t data)                                        // шим включения ступеньки
{
  
for (int j=0;j<=19;j++)
{
for (int i=0;i<=32;i++)
{
  if (masky[j] & (1UL << i))
  { 
MM5450(data);
}
else 
{MM5450(piss);
}
}
}piss=data;
}

void PWMOFF_MM5450(uint32_t data)                                    // шим выключения ступеньки
{
  
for (int j=19;j>=0;j--)
{
for (int i=0;i<=32;i++)
{
  if (masky[j] & (1UL << i))
  { 
MM5450(piss);
}
else 
{MM5450(data);
}
}
}piss=data;
}

void MM5450(uint32_t jopa)                                          // програмка зажигания ступеньки
{byte i;

  digitalWrite(DATA, 1);
  digitalWrite(CLOCK, LOW);
  digitalWrite(CLOCK, HIGH);
  
  for (i = 0; i < NUM_LEDS; i++)
  {
    if (jopa & (1UL << i)) digitalWrite(DATA, HIGH);
    else digitalWrite(DATA, LOW);
    digitalWrite(CLOCK, LOW);
    digitalWrite(CLOCK, HIGH);
   }
  digitalWrite(DATA, 0);
  for (byte j = 0; j < 35 - NUM_LEDS; j++)
  {
    digitalWrite(CLOCK, LOW);
    digitalWrite(CLOCK, HIGH);
  }  

 }

Сам фоторезистор подключен к 5в одной ногой а второй на порт А0 и туда-же резистор 10кОм с земли, получается делитель, одно плечо которого изменяется в зависимости от освещённости от 10кОм в тёмном и 3кОм в засвеченном состоянии. Если у вас другой фоторезистор, то необходимо ссчитать его состояния через сериал порт, и внести правку значений в код.

volchok
Offline
Зарегистрирован: 28.08.2015

Да нет особой разницы между 5450 и 5451, одним пином отличаются, который не используется, так что можете брать любой. У меня вон куча этих 5450

Ahtung533
Offline
Зарегистрирован: 21.01.2017

Ещё планирую сделать регулировку яркостей всей лестницы и дежурной подсветки, расстояний ультрасоников, количества ступеней, чувствительности фоторезистора на подстроечных резисторах, чтобы не лазить в код и не перешивать каждый раз контроллер.

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

Ahtung533   понял спасибо, еще вопрос , у нас в городе есть только MM5450YN я так понял там отличие напряжением питания и тока на выходе, она подойдет или нужно именно М5450В7

volchok
Offline
Зарегистрирован: 28.08.2015

B7 - это National Semiconductor (ныне - Texas Instruments), а YN - это безсвинцовый от Micrel (ныне - Microchip). Оба в корпусе PDIP40. Разницы особой нет, вполне взаимозаменяемы

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

volchok просто в даташите заметил, что питание В7 15 вольт а YN до 11 вольт, а тут все подают 12 вольт на нее

Ahtung533
Offline
Зарегистрирован: 21.01.2017

Микросхема питается от 5 вольт, только на управление лентами через мосфет идёт 12 вольт

Ahtung533
Offline
Зарегистрирован: 21.01.2017

Друзья, подскажите, будет ли на ардуино работать такое условие:

if (300<x<400){что-то выполнить}

else if (400<x<500){что-то выполнить 2}

Интересует проверка лежит ли переменная x в диапазоне определённом, или как это можно проверить другим образом?

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

спасибо большое, пойду значит покупать 

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016
if (300<x&&х<400){что-то выполнить}
else if (400<x&&x<500){что-то выполнить 2}

 

volchok
Offline
Зарегистрирован: 28.08.2015

Если проверок больше двух, целесообразнее использовать switch ... case

volchok
Offline
Зарегистрирован: 28.08.2015

Кстати да, у YN есть такое, максималка по даташиту Vdd-Vss=12V. Так что там аккуратно надо с питанием

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

собрал на макетке схему вместо датчика освещенности поставил переменный резистор на 10ком, не подскажете в чем может быть дело и нет задержки тоесть загорелисьь по одному и сразу по одному начинают гаснуть... может надо задержку какую. скетч из поста #452

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

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

Myero
Offline
Зарегистрирован: 20.10.2015

Если используешь код из 452 поста, то поставь задержку в подпрограмме снизу вверх  в 102 строке ( между двумя for) ну и соответственно в подпрограмме  когда сверху вниз между 116 и 117 строкой. (Delay  значение в миллисекундах,ставь сразу 10000)

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

Muero я ставил в этих строках задержку 500 ( прогнал что в милисекундах) но тогда не корректно работали последние ступени...спасибо за наводку вечером попробую поставить побольше как вы сказали

Myero
Offline
Зарегистрирован: 20.10.2015

Я год назад актуализировал внимание что без задержки , возможно именно в этом месте, Сейчас не вспомню уже. В любом случае какие либо действия должны происходить именно в этих строках ( у себя прописывал "бегущую тень", и в зависимости от кол-ва пробегов сверху вниз или снизу вверх происходит задержка).

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

Myero =((( к сожалению не получилось, у меня 8 ступеней, когда не сработано все норм работает первая и последняя горит, когда происходит срабатывание датчика то с первой по 7 разгорается и 7 тухнет сразу остается гореть 6 светодиодов, потом когда время прошло то включаются все 8 и тухнут по одному, и это проиходит только тогда когда добавляю делай между циклами как вы сказали

Myero
Offline
Зарегистрирован: 20.10.2015

Давайте дождёмся ahtung533 , может он что отпишется, именно он  выкладывал последний код. 

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

то что у меня работает ЭТО НА ТРИ входа/выхода, работает до сих пор скетч #360.но даже тогда я больше внимание обращал на шим. На это лето я планировал доделать на следующий этаж с двумя входами/выходами , надеялся что тут выложили конечный результат. 

Если не сложно оформите.сюда проект и скетч. Думаю разберёмся))

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

да у меня пока все на макетке, код тот что указал, енял количество ступеней и все тот  же дефект

вот так попробовал чтобы посмотреть что происходит, если задержка есть то из 8 светодиодов зажигает 6, а если убрать задержку то доходит до 8го и тухнут все и переходит в дежурный режим, я просто не очень разбираюсь в данном выражении побитового сдвига, и зажем тут умножать на FirstLastBitDe 2

void TurnOnBotTop ()                                              //Зажигаем лестницу снизу вверх
 {
      analogWrite (BR,  brightset);
      for (char i = NUM_LEDS - 1; i >0; i--)                      // зажигаем светодиоды снизу вверх
      
      {
        PWM_MM5450(FirstLastBitDec*2-1  >> i);
        //delay(300);                                             // задержка зажигания
        
      }
      delay(1000);   
//      for (char i = 1; i < NUM_LEDS; i++)                         // тушим светодиоды снизу вверх
//      {
//        PWMOFF_MM5450(FirstLastBitDec*2-1  << i);
//        //delay(300);                                             // задержка затухания
//        Serial.println(FirstLastBitDec);
//      }
    }

 

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

видимо Ahtung533 долго придется ждать((( сделал с бегущей тенью, правда тоже небольшой косяк есть буду думать

Myero
Offline
Зарегистрирован: 20.10.2015

А с бегущей тенью какой косяк? Там вроде все норм должно быть, единственное -  массив подправить в зависимости от количества ступенек. 

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

volchok пишет:

Кстати да, у YN есть такое, максималка по даташиту Vdd-Vss=12V. Так что там аккуратно надо с питанием


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

OffLine
Offline
Зарегистрирован: 19.08.2016

Люди, подскажите , у меня скетч от сюда http://arduino.ru/forum/programmirovanie/avtomaticheskaya-podsvetka-lest...
Горит только одна дежурная ступень . У меня 12 ступеней , в скетче сменил соответственное значение. Где то еще надо поправить?

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

Xumuk пишет:
не подскажете, подтяжку для базы мосфетов можно к 12вольтам кинуть? или для моей микрухи лучше к5ти?

У мосфета нет базы. Подтяжка затвора (gate) мосфета делается к истоку (source) мосфета. Для N-канального мосфета исток (source) подключён к "земле" (GND). Поэтому подтяжка тоже получается к "земле". Или у Вас P-канальный мосфет?

 

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

Jeka_M пишет:

Xumuk пишет:
не подскажете, подтяжку для базы мосфетов можно к 12вольтам кинуть? или для моей микрухи лучше к5ти?

У мосфета нет базы. Подтяжка затвора (gate) мосфета делается к истоку (source) мосфета. Для N-канального мосфета исток (source) подключён к "земле" (GND). Поэтому подтяжка тоже получается к "земле". Или у Вас P-канальный мосфет?

 

да Р канал, там в + подтяжка, поэтому и вопрос irf7314

airdudu
Offline
Зарегистрирован: 20.05.2017

На интересную поделку наткнулся, контроллер SMARTSTAIR24, http://smartstair.ru

idtmark
idtmark аватар
Offline
Зарегистрирован: 04.06.2016

Xumuk пишет:

да у меня пока все на макетке, код тот что указал, енял количество ступеней и все тот  же дефект

вот так попробовал чтобы посмотреть что происходит, если задержка есть то из 8 светодиодов зажигает 6, а если убрать задержку то доходит до 8го и тухнут все и переходит в дежурный режим, я просто не очень разбираюсь в данном выражении побитового сдвига, и зажем тут умножать на FirstLastBitDe 2

void TurnOnBotTop ()     //Зажигаем лестницу снизу вверх
 {
  analogWrite (BR,  brightset);
  for (char i = NUM_LEDS - 1; i >0; i--) // зажигаем светодиоды снизу вверх
      
 {
  PWM_MM5450(FirstLastBitDec*2-1  >> i);
  //delay(300);  // задержка зажигания
        
      }
      delay(1000);   
//      for (char i = 1; i < NUM_LEDS; i++)     // тушим светодиоды снизу вверх
//      {
//        PWMOFF_MM5450(FirstLastBitDec*2-1  << i);
//        //delay(300);                         // задержка затухания
//        Serial.println(FirstLastBitDec);
//      }
    }

Попробуйте вот так

}

void TurnOnBotTop ()                          //Зажигаем лестницу снизу вверх
 {
      analogWrite (BR,  brightset);
      for (char i = NUM_LEDS - 1; i >0; i--) // зажигаем светодиоды снизу вверх
      {
        PWM_MM5450(FirstLastBitDec*2-1  >> i);
       // delay(300);                        // задержка зажигания
      }
           
      for (char i = 1; i < NUM_LEDS; i++)    // тушим светодиоды снизу вверх
      {
        PWMOFF_MM5450(FirstLastBitDec*2-1  << i);
        delay(1000);                         // задержка затухания
      }
    }
void TurnOnTopBot ()                         // зажигаем лестницу сверху вниз
    {
      analogWrite (BR,  brightset);
      for (char i = NUM_LEDS-1; i > 0; i--)  // зажигаем светодиоды сверху вниз
      {
       PWM_MM5450(FirstLastBitDec*2-1 << i);
       // delay(300);                        // задержка зажигания
      }
        for (char i = 1; i <NUM_LEDS; i++)   // тушим светодиоды сверху вниз
      {
        PWMOFF_MM5450(FirstLastBitDec*2-1 >> i);
        delay(1000);                         // задержка затухания
      }
   }

serenka
Offline
Зарегистрирован: 08.03.2017

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

void loop() {
  Up_Sensor(); // вызываем процедуру опроса верхнего сенсора...
  if(Up_Sensor_Started) // и проверяем факт его срабатывания
    {
      Up_Sensor_Started = false;
      Diodes_Up_Switching(); // функция отвечает за включение диодов снизу вверх
       Shutdown_Up_Switching(); // отвечает за выключение диодов снизу вверх
      } 
  else {
      Bottom_Sensor(); // вызываем процедуру опроса нижнего сенсора...
      if(Bottom_Sensor_Started) // и проверяем факт его срабатывания
      {
        Bottom_Sensor_Started = false;
        Diodes_Bottom_Switching(); // функция отвечает за включение диодов сверху вниз
        Shutdown_Bottom_Switching(); }}}  // функция отвечает за выключение диодов сверху вниз

 

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

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

OffLine
Offline
Зарегистрирован: 19.08.2016

несколько сообщений выше писал.

ни кто не подскажет мне со скетчем ? почему горит только одна ступень дежурки ?

NUM_LEDS я сменил на 12, нужно ли править массив ? или эту строку constuint32_t mask = 0b01111111111111111; ?

//Задаем количество светодиодов
#define NUM_LEDS 16
const uint32_t mask = 0b01111111111111111;
const uint32_t shadow[] = { // бегущая тень
  0b11111111111111111110,
  0b11111111111111111101,
  0b11111111111111111011,
  0b11111111111111110111,
  0b11111111111111101111,
  0b11111111111111011111,
  0b11111111111110111111,
  0b11111111111101111111,
  0b11111111111011111111,
  0b11111111110111111111,
  0b11111111101111111111,
  0b11111111011111111111,
  0b11111110111111111111,
  0b11111101111111111111,
  0b11111011111111111111,
  0b11110111111111111111,
  0b11111111111111111111,
  };
Myero
Offline
Зарегистрирован: 20.10.2015

Offline и химик. 

Найдите эти строчки 

void FirstLast()
144 {
145   analogWrite (BR,  30);
146   MM5450(0b1000000000000001);

 

147

}

Соответственно для офлайна изменить на mm5450(0b100000000001);

Химик а тебе менять  В analogwrite вторую константу ( если к 19 ноге мм5450 подключена ардуинка)

Myero
Offline
Зарегистрирован: 20.10.2015

Offline и химик. 

Найдите эти строчки 

void FirstLast()
144 {
145   analogWrite (BR,  30);
146   MM5450(0b1000000000000001);

 

147

}

Соответственно для офлайна изменить на mm5450(0b100000000001);

Химик а тебе менять  В analogwrite вторую константу ( если к 19 ноге мм5450 подключена ардуинка)

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

Myero, у меня косяк был в том, что сопротивление непостоянно, или округляется, видимо не тот вид переменной взял(хотя перепробывал много переменных) у меня начинает мерцать первая и последняя ступенька, считывал с ацп входа и с помощью функции map конвертировал и записывал в переменную

OffLine
Offline
Зарегистрирован: 19.08.2016

Myero большое спасибо! помогло!) 

еще один вопрос : можно ли , и если можно то где меняется время на которое гаснет лента при эфвекте " бегущая тень" . идея в том что , установить это значение на " 0 " и избавится от этого эфекта( при необходимости)  да и я бы сделал его немного меньше.

Myero
Offline
Зарегистрирован: 20.10.2015

Там же все подписано в комментариях

 

 

      for (int j = 0; j <= 7; j++)  //бегущая тень
089       {
090          MM5450(shadow[16]);
091         delay(1000);
092         for (int k = NUM_LEDS; k >=0; k--)
093         {
094           MM5450(shadow[k]);
095           delay(100);
096         }

 

}

В первой строке 7 это количество пробегов

Delay () задержки....

не хочешь тень - совсем удали этот блок. ( ниже ещё один такой же)

OffLine
Offline
Зарегистрирован: 19.08.2016

Спасибо!!!

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

собрал плату вчера, но косяк такой, когда датчики не сработаны, то горят все ступеньки кроме первой и последней в полнакала, как только датчик срабатывает они все начинают гореть на 100%, первая и последняя все так же не работает... на макетке без транзисторов все работало как надо... в чем может быть причина? транзюки irf7314 как тут советовали

Myero
Offline
Зарегистрирован: 20.10.2015

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

Myero
Offline
Зарегистрирован: 20.10.2015

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

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

вчера опять попробовал, теперь уже ниче не горит=)))) странности какие то

Myero
Offline
Зарегистрирован: 20.10.2015

Предоставь плату и скетч) будем отсюда плясать. Странностей быть не должно) это микроэлектроника , либо работает, либо нет, либо 220 вольт подал)

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

Не могу найти как с телефона фотку скинуть, код все тот же что тут давали, дело мне кажется связано с транзисторами

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

вот плата прошивка та что тут выкладывали там где пересечение 13 пина, его там нет  и где обьеденены А6,7 и т д тоже нету этих пинов на плате

b707
Offline
Зарегистрирован: 26.05.2017

Как предположение...

затворы мосфетов к земле подтянуты? - не вижу на плате. Если нет - ступеньки могут гореть вполнакала в "выключенном№ состоянии

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

к +12 вольт

YRA
Offline
Зарегистрирован: 10.01.2015

Земля это "-"

YRA
Offline
Зарегистрирован: 10.01.2015

Должна быть общей  со всеми элементами где она имеет месть быть.

 

Xumuk
Xumuk аватар
Offline
Зарегистрирован: 03.03.2016

а на про мини разве GND не объединен? а так вроде везде она у меня обьеденена