Скорость вентилятора

Elektron
Offline
Зарегистрирован: 12.02.2016

Всем привет! народ подскажите как вывести на дисплей скорость кулера по шкале от 0 до 100.

Написал скетч через ШИМ, хочу управлять кулером и выводить скорость на дисплей, но в реале вывожу частоту ШИМ, т.е. от 0 до 255. (  К примеру на дисплее пишится SPEED FAN 120 , далее прибавляю или отнимаю по 10)?

Вот чать кода- 

  display.setCursor(60,29); // устанавливам курсор для вывода реальной скорости
  int spe = i ;// переименовали i в значение скорости
  display.println(spe); // выводим на дисплей реальную скорость
  
  if (digitalRead(kv) == HIGH) // опрашиваем кнопку + если нажата то
  {                                      
                display.drawLine(25, 25, 35, 20, BLACK); display.drawLine(35, 20, 45, 25, BLACK); display.drawLine(46, 25, 25, 25, BLACK); display.drawLine(33, 23, 38, 23, BLACK); // ресуем треугольник вверх
                                   
         i=i+10; // прибавляем скорости на 10                     
        if (i>=249) // если превышен верхний предел скорости то ставмм его 240
        { i=240; 
                display.setCursor(60,20); // и пичатаем на дисплее MAX
                display.println("MAX");
                               }           
      analogWrite (led, i); // выводим скорость на светодиод (ключ, полевик)
      
    delay (150); // задержка опроса кнопок      
  }

    //else  // если нажата кнопка - то
       if (digitalRead(kn) == HIGH)  
       {
        
                display.drawLine(25, 39, 35, 44, BLACK); display.drawLine(35, 44, 45, 39, BLACK); display.drawLine(46, 39, 25, 39, BLACK); display.drawLine(33, 41, 38, 41, BLACK); // ресуем треугольник вниз
                        
        i=i-10; // отнимаем скорости на 10  
        if (i<=18) // если превышен минимальный предел то ставим скорость 10
        {i=10;
                display.setCursor(60,38); // и пичатаем на дисплее MIN
                display.println("MIN");
                }
    analogWrite (led, i); // выводим скорость на светодиод (ключ, полевик)
    delay (150); // задержка опроса кнопок
  
       }
  display.display();
  delay(10);
  display.clearDisplay();
}

 

Elektron
Offline
Зарегистрирован: 12.02.2016

Или где можно посмотреть подобные примеры, спасибо.

T.Rook
Offline
Зарегистрирован: 05.03.2016

Я думаю Вам сюда: http://arduino.ru/Reference/Map

Elektron
Offline
Зарегистрирован: 12.02.2016
spe = map (spe,0,255,0,100);

 

Elektron
Offline
Зарегистрирован: 12.02.2016

T.Rook спасибо большое! добавил одну строчку и счастье!!!