Показано с 1 по 10 из 116

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11
    Пользователь
    Регистрация
    28.07.2010
    Сообщений
    27
    Вес репутации
    190

    По умолчанию Re: Автоматическая регулировка яркости светодиодной подсветки.

    Подскажите в чём может быть проблема, подключил сегодня себе авто регулировку подсветки, теперь такая проблема, при нажатии кнопок на руле пригасает подсветка, например нажимаю громкость вверх, гаснет на 50%, жму кнопку mute гаснет на 90%.
    К ардуино подцеплено управление компьютером (hotkey) паралельно управляется магнитола Pioneer 88rs, ну и соответственно авторегулировка яркости...
    А так, всё работает.
    Вот мой скетч:

    PHP код:
    int analogPin 7;  // potentiometer wiper (middle terminal) connected to analog pin 3
    int val 0;        // variable to store the value read
    int mute 2;       //MUTE Выход для нажатии кнопки 
    int volu 3;       //Volume UP Выход для нажатии кнопки
    int vold 4;       //Volume DOWN Выход для нажатии кнопки
    int pt 5;         //Предыдущий трек
    int nt 6;         //След трек

    int ledPin 9;
    int sens 0;
    int light 0;

    #define PIN 7  //номер аналогового порта  
    #define LIMIT 20 //предел погрешности сопротивления  

    byte bytes[2];   
    int res_dt1res_d;  
    unsigned long math_time,old_time,real_time;   
    void setup()        
    {       
    Serial.begin(115200); // настроить скорость com порта        
    }   

    void loop()       
    {     
      
    res_d analogRead(PIN); // прочитать данные АЦП 
      
    delay(30); 
      
    res_dt1 analogRead(PIN); // прочитать данные АЦП  
            
    old_time millis();  
            
    math_time 0;   
            while(
    math_time 300 && (res_dt1 res_d-LIMIT && res_dt1 res_d+LIMIT ))  
              {  
                 
    real_time millis();             //получить реальное время   
                 
    math_time real_time old_time//считаем длительность нажатия 
                
    res_dt1 analogRead(PIN); // прочитать данные АЦП     
              
    }  
         
        if( 
    math_time 50)  //если нет дребезга то короткое нажатие 
          
    {   
            
    bytes[0] = res_d 255;          // преобразовать в 2-байта    
            
    bytes[1] = (res_d 768) >> 8;    
            
    Serial.writebytes,2); // отправить прочитаное значение компьютеру        
          
    }     
    val analogRead(analogPin);  // PIONEER read the input pin        
      
    {
        if (
    val 600)
        
    pinMode(muteINPUT);
        
    pinMode(voluINPUT);
        
    pinMode(voldINPUT);
        
    pinMode(ntINPUT);
        
    pinMode(ptINPUT);
      }
      if (
    val and val 40)
      { 
        
    pinMode(muteOUTPUT);
      }
      if (
    val 60 and val 120)
      { 
        
    pinMode(voluOUTPUT);
      }
      if (
    val 140 and val 200)
      {  
        
    pinMode(voldOUTPUT);
      } 
       if (
    val 300 and val 420)
      { 
        
    pinMode(ntOUTPUT);
      }
       if (
    val 500 and val 590)
      { 
        
    pinMode(ptOUTPUT);
      }

     
    {   
     
    pinMode(ledPinOUTPUT); 
      
    Serial.begin(115200);
    }    
    {   
    sens analogRead(0);

    if ((
    sens 0) && (sens<3)) {light 1;}
    if ((
    sens 5) && (sens<10)) {light 5;}
    if ((
    sens 10) && (sens<15)) {light 10;}
    if ((
    sens 15) && (sens<18)) {light 20;}
    if ((
    sens 20) && (sens<25)) {light 30;}
    if ((
    sens 25) && (sens<30)) {light 40;}
    if ((
    sens 30) && (sens<35)) {light 50;}
    if ((
    sens 35) && (sens<38)) {light 60;}
    if ((
    sens 40) && (sens<45)) {light 70;}
    if ((
    sens 45) && (sens<50)) {light 80;}
    if ((
    sens 50) && (sens<55)) {light 90;}
    if ((
    sens 55) && (sens<60)) {light 150;}
    if ((
    sens 65) && (sens<70)) {light 210;}
    if ((
    sens 70) && (sens<80)) {light 230;}.
    if (
    sens 80) {light 255;}

    analogWrite(ledPinlight);
    //Serial.print(sens, DEC);
    //Serial.print(" ");
    //delay(300);
    }
     } 
    Может в нём что-то подправить можно ?
    Или как то всё преподключить на самой ардуино ?
    По всякому пробовал, у меня ничего не получилось. И еще почему то подсветка резкими ступенями регулируется, оч отвлекает, а те скетчи что преведены выше, не понял подойдут мне или нет.
    Последний раз редактировалось Chip; 05.06.2012 в 02:00.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •