Wokwi - вывод данных на lcd 16/2 с потенциометра + включение led ленты

Zaboristyy

✩✩✩✩✩✩✩
7 Янв 2026
1
0
Добрый день!
Начал пользоваться Wokwi.
Для ознакомления выбрал подключение к Arduino Nano lcd 16/2, потенциометра и led ленты (чёрная такая, с 10-ю светодиодами).

Выдаёт ошибку
C++:
sketch.ino: In function 'void loop()':
sketch.ino:50:52: error: too few arguments to function 'long int map(long int, long int, long int, long int, long int)'
   int ledLvl = map(sensorReading, 0, 1023, ledCount); //
                                                    ^
In file included from sketch.ino.cpp:1:0:
/arduino/hardware/avr/1.8.6/cores/arduino/Arduino.h:254:6: note: declared here
 long map(long, long, long, long, long);
      ^~~
Error during build: exit status 1

Код вот такой


C++:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// для экрана
#define I2C_ADDR 0x27
#define LCD_COLUMNS 16
#define LCD_LINES 2

LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES); // значения для экрана 16/2 I2C

// считка с потенциометра на Led
int PotPin = A0;
int Value=0;
float Value_volt=0;

// для светодиодной ленты
const int analogPin = A0; //подключение потенциометра в этот пин
const int ledCount = 10; //кол-во светодиодов в ленте

// пины, куда подключены светодидоды в ленте
int ledPins[] = {
  2, 3, 4, 5, 6, 7, 8, 9, 10, 11
};

void setup() {

  for (int etotLed = 0; etotLed < ledCount; etotLed++) {
    pinMode(ledPins[etotLed], OUTPUT);
  }


 Serial.begin(115200);
 pinMode(A0, INPUT);

  lcd.init();
  lcd.backlight();
 

  lcd.setCursor(0, 0);
  lcd.print("Count");
 
 delay(1000);
}

void loop() {

  int sensorReading = analogRead(analogPin); // читка потенциометра
  int ledLvl = map(sensorReading, 0, 1023, ledCount);

  for (int etotLed = 0; etotLed < ledCount; etotLed++) {
    if (etotLed < ledLvl) {
      digitalWrite(ledPins[etotLed], HIGH);
    }
    else {
      digitalWrite(ledPins[etotLed], LOW);
    }
  }

  // put your main code here, to run repeatedly:
  int value = analogRead(A0);
  Serial.println(value);
  delay(100);

  lcd.setCursor(6, 1);
 
  Value = analogRead(PotPin);
  lcd.print(Value);
  delay(500);
}
Скрин схемы во вложении.

Прошу подсказать знающих, в чём ошибка. Сам уже час ковыряюсь и не понимаю.
 

Вложения