Jump to content

Раздел данных превышает доступное пространство на плате


 Share

Recommended Posts

Недавно я создаю небольшую игру на HMI и хочу использовать для этого Arduino. Мой код компилируется без проблем, но когда я загружаю его, я получаю ошибку, как показано на рисунке, это потому, что у меня определено слишком много переменных?
Может кто-нибудь подскажет мне, как это исправить?

Arduino:1.8.12 (Windows 10), Плата разработки: "Arduino Uno".

Проект использует 6336 байт, что занимает (19%) места в памяти программы. Максимальное значение - 32256 байт. секция данных превышает доступное пространство на плате

Глобальные переменные используют 3046 байт, (148%) динамической памяти, оставляя -998 байт для локальных переменных. Максимальное значение составляет 2048 байт.
Недостаточно памяти; посетите следующий URL-адрес, чтобы следовать инструкциям по уменьшению использования памяти.
http://www.arduino.cc/en/Guide/Troubleshooting#size
Ошибка при компиляции для платы разработки Arduino Uno.

Включите в Файл -> Предпочтения
опцию "Показывать подробный вывод во время компиляции".
Этот отчет будет содержать больше информации.

 

Link to comment
Share on other sites

23.06.2021 в 12:53, Fordli сказал:

///

Возьмите жирней контроллер.

Поставьте внешнюю озу.

Оптимизируйте переменные.

Выбирайте.

Link to comment
Share on other sites

Posted (edited)
24.06.2021 в 14:10, Yuriy.pv сказал:

////////////

Как это сделать, если я хочу оптимизировать переменные?

Edited by Falconist
Оверквотинг
Link to comment
Share on other sites

Вебинар «Новые тенденции сетевых технологий: Ethernet по одной витой паре» (09.12.2021)

Приглашаем 9 декабря всех желающих посетить вебинар, посвященный технологии Ethernet и её новому стандарту 10BASE-T1S/L. Стандарт 802.3cg описывает передачу данных на скорости до 10 Мбит в секунду по одной витой паре. На вебинаре будут рассмотрены и другие новшества, которые недавно вошли в семейство технологий Ethernet: SyncE, PTP, TSN. Не останется в стороне и высокоскоростной 25G+ Ethernet от Microchip.

Подробнее

Переработать алгоритм игры. Что у вас в 

On 6/23/2021 at 12:53 PM, Fordli said:

Глобальные переменные используют 3046 байт, (148%)

них хранится? Думайте и уменьшайте количество. Или 

On 6/24/2021 at 2:10 PM, Yuriy.pv said:

Возьмите жирней контроллер

 

Настоящему коту и в декабре март!

Link to comment
Share on other sites

DC/DC-преобразователи Mornsun со склада Компэл

В сложный период для рынка электронных компонентов, когда производители увеличивают сроки поставки продукции, со склада Компэл можно приобрести широкий ассортимент DC/DC-преобразователей производства компании Mornsun. На складе представлены наиболее популярные семейства изолированных и неизолированных DC/DC-преобразователей новых поколений R3 и R4, а также предыдущего, но по-прежнему востребованного поколения R2.

Подробнее

Я прикреплю свою программу и надеюсь, что вы сможете помочь мне увидеть, можно ли ее оптимизировать?

unsigned int r_flag1 = 0;
uint8_t   RecievedTemp1[30]       = {0};

uint8_t   cout_i = 0;
unsigned int quan_hang1 = 0;
unsigned int quan_hang2 = 0;
unsigned int quan_hang3 = 0;
unsigned int quan_lie1 = 0;
unsigned int quan_lie2 = 0;
unsigned int quan_lie3 = 0;
unsigned int quan_zuoxia = 0;
unsigned int quan_youxia = 0;


unsigned int cha_hang1 = 0;
unsigned int cha_hang2 = 0;
unsigned int cha_hang3 = 0;
unsigned int cha_lie1 = 0;
unsigned int cha_lie2 = 0;
unsigned int cha_lie3 = 0;
unsigned int cha_zuoxia = 0;
unsigned int cha_youxia = 0;
unsigned int cha[8]={0};
void setup()
{
   Serial.begin(115200);
   for(int i=3; i<=8; i++) 
   pinMode(i,OUTPUT);
}

void loop(){

  if(Serial.available() != 0)
  {
//    for(cout_i = 0; cout_i < 30; cout_i ++)
//    {
//        //RecievedTemp1[cout_i] = Serial.readBytes(RecievedTemp1, 15);
//        Serial.readBytes(RecievedTemp1, 20);
//        //Serial.println(RecievedTemp1[cout_i]);
//    }
    Serial.readBytes(RecievedTemp1, 20);
//    for(cout_i = 0; cout_i < 19; cout_i ++)
//    {
//    Serial.println(RecievedTemp1[cout_i]);
//    }
    switch(RecievedTemp1[13])
  {
  case 49:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image2\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang1++;
        quan_lie1++;
        quan_youxia++;
//        quan[0]++;
//        quan[3]++;
//        quan[7]++;
        Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button1\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image2\",\"image\":\"x\"}>ET");
         r_flag1 = 0;
            cha_hang1++;
            cha_lie1++;
            cha_youxia++;
//        cha[0]++;
//        cha[3]++;
//        cha[7]++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button1\",\"enable\":false}>ET");
        }
        
        break;
  case 50:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image3\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang1++;
            quan_lie2++;
//        quan[0]++;
//        quan[4]++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button2\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image3\",\"image\":\"x\"}>ET");
         r_flag1 = 0;
         cha_hang1++;
           cha_lie2++;
//        cha[0]++;
//        cha[4]++;
           Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button2\",\"enable\":false}>ET");
        }
        break;
  case 51:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image4\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang1++;
            quan_lie3++;
            quan_zuoxia++;
//        quan[0]++;
//        quan[5]++;
//        quan[6]++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button3\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image4\",\"image\":\"x\"}>ET");
         r_flag1 = 0;
         cha_hang1++;
           cha_lie3++;
            cha_zuoxia++;
//        cha[0]++;
//        cha[5]++;
//        cha[6]++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button3\",\"enable\":false}>ET");
        }
        break;
  case 52:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image5\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang2++;
            quan_lie1++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button4\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image5\",\"image\":\"x\"}>ET");
         r_flag1 = 0;
         cha_hang2++;
           cha_lie1++;
           Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button4\",\"enable\":false}>ET");
        }
        break;
  case 53:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image6\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang2++;
            quan_lie2++;
            quan_zuoxia++;
            quan_youxia++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button5\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image6\",\"image\":\"x\"}>ET");
          r_flag1 = 0;
          cha_hang2++;
            cha_lie2++;
            cha_zuoxia++;
            cha_youxia++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button5\",\"enable\":false}>ET");
        }
        break;       
  case 54:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image7\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang2++;
            quan_lie3++;
//        quan[1]++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button6\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image7\",\"image\":\"x\"}>ET");
         r_flag1 = 0;
         cha_hang2++;
           cha_lie3++;
           Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button6\",\"enable\":false}>ET");
        }
        break;       
  case 55:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image8\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang3++;
            quan_lie1++;
            quan_zuoxia++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button7\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image8\",\"image\":\"x\"}>ET");
         r_flag1 = 0;
         cha_hang3++;
           cha_lie1++;
            cha_zuoxia++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button7\",\"enable\":false}>ET");
        }
        break;        
  case 56:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image9\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang3++;
            quan_lie2++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button8\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image9\",\"image\":\"x\"}>ET");
         r_flag1 = 0;
         cha_hang3++;
           cha_lie2++;
           Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button8\",\"enable\":false}>ET");
        }
        break;       
  case 57:
        if((r_flag1 == 0)&&(RecievedTemp1[14]==2))
        {
        Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image10\",\"image\":\"circle\"}>ET");
        r_flag1 = 1;
        quan_hang3++;
            quan_lie3++;
            quan_youxia++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button9\",\"enable\":false}>ET");
        }
        else if((r_flag1 == 1)&&(RecievedTemp1[14]==2))
        {
          Serial.println("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image10\",\"image\":\"x\"}>ET");
         r_flag1 = 0;
         quan_hang3++;
           quan_lie3++;
            quan_youxia++;
            Serial.println("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button9\",\"enable\":false}>ET");
        }
        break;
  }
  if((quan_hang1==3)||(cha_hang1==3))
      {
            Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif4\",\"visible\":true}>ET");
      }
      else if((quan_hang2==3)||(cha_hang2==3))
      {
            Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif5\",\"visible\":true}>ET");
      }
      else if((quan_hang3==3)||(cha_hang3==3))
      {
            Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif6\",\"visible\":true}>ET");
      }
      else if((quan_lie1==3)||(cha_lie1==3))
      {
            Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif7\",\"visible\":true}>ET");
      }
      else if((quan_lie2==3)||(cha_lie2==3))
      {
            Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif8\",\"visible\":true}>ET");
      }
      else if((quan_lie3==3)||(cha_lie3==3))
      {
            Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif9\",\"visible\":true}>ET");
      }
      else if((quan_zuoxia==3)||(cha_zuoxia==3))
      {
            Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif10\",\"visible\":true}>ET");
      }
      else if((quan_youxia==3)||(cha_youxia==3))
      {
            Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif11\",\"visible\":true}>ET");
      }
  }
}

 

Link to comment
Share on other sites

Новые компоненты STMicroelectronics для учета электроэнергии

Внедрение автоматизированных систем контроля и учета всех видов энергоресурсов, невозможно без инструментов, позволяющих помимо измерения параметров, преобразовывать их для обработки цифровыми интеллектуальными системами. Микросхемы STPM32, STPM33 и STPM34 STMicroelectronics являются наиболее точными и высокопроизводительными представителями своего семейства и способны максимально точно измерять параметры электросети в системах электроснабжения переменного тока, а также осуществлять их первичную обработку. Рассмотрим подробнее их преимущества и средства разработки.

Подробнее

41 минуту назад, Fordli сказал:

можно ли ее оптимизировать?

конечно можно.  выкинуть костыль аля дурина, и написать код на целевой контроллер на Си или С++.
потому как глобальных переменных в вашем коде 80 байт + временных еще около 50ти и это ни как не 2кБ ОЗУ...

Link to comment
Share on other sites

Карбид кремния позволяет повысить КПД и удельную мощность ИБП с двойным преобразованием

Построение источников бесперебойного питания с двойным преобразованием, широко используемых в современных хранилищах данных, на базе карбид-кремниевых MOSFETs производства Wolfspeed позволяет уменьшить мощность потерь в них до 40%, а также значительно снизить занимаемый ими объем и стоимость комплектующих.

Подробнее

Компилятор для каждой строки создает копию в ОЗУ, хотя можно использовать один буфер. Попробуйте так:

char buf[100];
...
// Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif11\",\"visible\":true}>ET");
printf( buf, "ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif11\",\"visible\":true}>ET");
Serial.println(buf);

Замените все Serial.println(...) соответствующими строками.

Link to comment
Share on other sites

23 часа назад, snn_krs сказал:

Компилятор для каждой строки создает копию в ОЗУ, хотя можно использовать один буфер. Попробуйте так:


char buf[100];
...
// Serial.println("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif11\",\"visible\":true}>ET");
printf( buf, "ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif11\",\"visible\":true}>ET");
Serial.println(buf);

Замените все Serial.println(...) соответствующими строками.

Хорошо, я попробую эти методы.

Link to comment
Share on other sites

@Fordli  Используйте F() макро. Вот тут есть описание.

Serial.println( F("Hello world!") );

 

On 6/29/2021 at 8:54 AM, snn_krs said:

создает копию в ОЗУ

А для printf() разве не будет создавать копию в ОЗУ точно так же?

Link to comment
Share on other sites

20 minutes ago, Yurkin2015 said:

А для printf() разве не будет создавать копию в ОЗУ точно так же?

Это не создание копии в ОЗУ, а заполнение одного уже созданного буфера. Serial.println создает каждый раз новый буфер, но не освобождает его.

Link to comment
Share on other sites

@snn_krs  Перед заполнением надо, наверно, где-то источник-строку иметь?

Вот это 

printf( buf, "ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif11\",\"visible\":true}>ET");

разве не создает сначала строку в ОЗУ, а потом копирует её в Ваш буфер? Откуда берутся буквы для копирования? Из флеш-памяти?

Link to comment
Share on other sites

Обычно компилятор помещает начальные значения для глобальных переменных в таблицу инициализации во флэш. При запуске программы (перед вызовом main()) все переменные инициализируются из этой таблицы, в том числе и строки.

Link to comment
Share on other sites

30.06.2021 в 17:13, Yurkin2015 сказал:

@Fordli  Используйте F() макро. Вот тут есть описание.


Serial.println( F("Hello world!") );

 

А для printf() разве не будет создавать копию в ОЗУ точно так же?

Это хороший способ сделать это, я использовал метод F() и это сделало мой код успешно загруженным на мою плату. Большое спасибо!

Link to comment
Share on other sites

Спасибо вам большое, друзья! Я создал новую тему для документирования проектов, на которых я застрял из-за этой проблемы, так что если вам интересно, вы можете проверить это, и я с нетерпением жду ваших комментариев!

 

Link to comment
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Сообщения

    • мне без надобности это знать... распыленка - это не феррит, если чо
    • Ну, это уже не буфер. КУ больше 3 и резисторы больших номиналов. R4 22k - нафига такой? Он же шумит! 1к достаточно. Попробуй собрать по моей схеме. И землю тоже, как в моей. Это от возбуда термодатчика Т516. Обычно ставят 0.1мкФ К-Б. Б-Э не видел. Оставьте, хуже не будет. Постоянно,  если ПТ на входе. Смотрите даже схему Япончика. Да. Резисторы 1МОм - смещение по постоянке. Влияет на постоянку на выходе. Они должны быть равны.  Р526+Р570 и Р528 - делитель ООС по переменке. КУ=1+(Р26+Р570)/Р528. Конденсаторы С516+С508, блокирующие ОС по постоянке, получаются в петле ОС и их качество мало влияет.
    • Недавно настраивал первый каскад УНЧ, в аноде ставил китайский карбоновый резистор как-бы полваттный бежевого цвета на 220кОм. Питание было +350В. После регулировок/настроек решил заменить резистор на другой, а тот, который поработал я проверил .... он уплыл с 220кОм в более, чем 300к. Со вторым каналом было то-же самое. После этого проверил резисторы на 330кОм(от того-же продавца), которые стояли параллельно конденсаторам питания, чтобы разряжать их после выключения... та-же история , уплыли в 500-700к.  Будьте внимательны в выборе компонентов для лампового УНЧ. 300-400В это всё-таки не 15-30В. Кстати, металлоплёночные нормально выдерживали, и к советским ВС и МЛТ тоже претензий не было.
    • На обратной стороне платы есть транзисторные ключи, через них включаются релюшки,сомневаюсь что все транзисторы накрылись  http://s7detali.narod.ru/Schneider/Zelio.html всё что нашлось в интернете только картинки
    • У меня стояла на виртуальной машине. С железом подружил, с сеткой подружил, а вот софтину так и не подобрал
    • В крайнем случае подобрать по факту. Только нужно ставить реле как можно с бОльшим сопротивлением, а то у NE555 максимальный выходной ток 200мА и при продолжительном включении может подогреться.
    • Доброго времени дня и ночи, соответственно, дорогие, форумчане! Собрал данный лбп, не прошло и 5 лет. Давно готовые запаяные платы за это время нормализовались, с них ушли лишние напряжения, как с металлической заготовки. И вот, вспомнив о их существовании, вновь загорелась искра,- а не пора ли их собрать в кучу? Думаю пора! Прочитав 18какуюто страницу с форума увидел чуть более новую схему.. но надо же испытать первую, на которой собирал. Взял тестер электролитов мастеркит, всё проверил и в блоке питания, и во всех телевизорах всё гуд,- Спасибо Геннадию Александровичу Б.)) Прошло 2 часа и всё собралось в кучу да ещё и заработало! ТС на ир2161.. спасибо Немо! 10А 24В полёт нормальный! Напряжение регулируется по мультимеиру и прказометру от 0.00 вольт до 23.8 вольт. А вот ограничение тока и регулировка его собраны по схеме номер один из первого поста, при этом ток не коим образом не регулировался. Поставил вместо резистора на 9.1 ком, резистор на 5.6 ком и ограничение начало работать со средины шкалы или до средины шкалы, ещё не вникал. В управлении стоят bc547, bc557. Тлки с маркировкой CJ 431, исключительно сильно китайские, напряжение стабилизации оных 2 целых 51..55 сотых. Силовые транзисторы tip 35c, которых 4 штуки и у них в эмиторах стоят красивые резисторы СССР 5ватт 0.33 Ома в пластмассовом корпусе, маркировки не помню, раскачивает их транзистор tip 102c. При напряжении 1 вольт 1.5 Ампера, радиатор(видно на фото) греется не более 60 градусов, также при 12 вольтах и 4 амперах. Радиатор со сто ватной акустики прошлых лет. Если вдруг кто нибудь подскажет как должна работать регулировка ограничения тока, то я заранее благодарен! На последней фото горит светодиод ограничение тока..

  • Карандаш-флюс 951 RMA. Объем 10мл

×
×
  • Create New...