// задать пин, к которому подсоединен светодиод
#ifdef LED_BUILTIN              // для плат Elbear/Start можно использовать встроенный светодиод
uint8_t ledPin = LED_BUILTIN;
#elif defined(ARDUINO_ELSOMIK)  // для плат Elsomik нужно задать вывод
uint8_t ledPin = P0_0;  
#else
uint8_t ledPin = 2;
#endif
// задать пин, к которому подключается средний вывод потенциометра
#if defined(ARDUINO_ELSOMIK) || defined(ARDUINO_START_MIK32_V1)
// для плат Elsomik и Start задать пин в формате порт_вывод. Пин должен поддерживать АЦП измерения
const int sensorPin = P1_5;  
#else
// для плат Elbear задать номер аналогового вывода
const int sensorPin = A0;  
#endif

// функция настройки запускается один раз при нажатии кнопки reset или подаче питания на плату
void setup() {
  // Установим пин светодиода как выход
  pinMode(ledPin, OUTPUT);
}

// функция цикла выполняется снова и снова бесконечно
void loop() {
  // Переменные для хранения значения потенциометра и яркости светодиода
  int rotation, brightness;

  /*
   * Считываем в rotation напряжение с потенциометра:
   * микроконтроллер выдаст число от 0 до 1023
   * пропорциональное углу поворота ручки.
   */
  rotation = analogRead(sensorPin);

  /*
   * В brightness записывается полученное ранее значение rotation
   * деленное на 4. Поскольку в переменных типа int хранятся целые
   * значения, дробная часть от деления будет отброшена.
   * В итоге мы получим целое число от 0 до 255.
   */
  brightness = rotation / 4;

  // Итоговое напряжение подается на светодиод.
  analogWrite(ledPin, brightness);
}




