Страница 9 из 12 ПерваяПервая ... 3456789101112 ПоследняяПоследняя
Показано с 81 по 90 из 116
  1. #81
    Пользователь
    Регистрация
    28.07.2010
    Сообщений
    27
    Вес репутации
    182

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

    Я конечно понимаю, что таких как я пол форума и вам тяжело всем отвечать, но не могли бы вы мне подсказать что делать ? Может мне можно как то воспользоваться проектом all in one? Или обязательно придётся докупать еще одну ардуино ?

    Или вообще можно ли как то сделать не авто подсветку, а крутилкой отдельной возможно даже без ардуино?

  2. #82
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    55
    Сообщений
    13,382
    Вес репутации
    10

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

    Только сейчас до меня дошло, подсветка то у тебя хардверная
    1- убери все лишние скобки
    2- активируй пины в секции Setup
    3- как ты собираешься управлять одним и тем же пином
    Последний раз редактировалось Chip; 08.06.2012 в 12:01.

  3. #83
    Пользователь
    Регистрация
    28.07.2010
    Сообщений
    27
    Вес репутации
    182

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

    Вроде всё исправил, только не понял что значит второй пункт

    PHP код:
    int analogPin 7;  // potentiometer wiper (middle terminal) connected to analog pin 3
    int val ;       // 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 10 //предел погрешности сопротивления  

    byte bytes[2];   
    int res_dt1res_d;  
    unsigned long math_time,old_time,real_time;  
     
    void setup()        

     
    pinMode(ledPinOUTPUT);      
    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 40pinMode(muteOUTPUT);  
      if (
    val 60 and val 120pinMode(voluOUTPUT);
      if (
    val 140 and val 200pinMode(voldOUTPUT); 
      if (
    val 300 and val 420)  pinMode(ntOUTPUT); 
      if (
    val 500 and val 590)  pinMode(ptOUTPUT);
    ////////////////////////////////////////////////////////////
     
    sens analogRead(0);

    if ((
    sens ) && (sens<10)) light 10;
    if ((
    sens 10) && (sens<20)) light 50;
    if ((
    sens 20) && (sens<30)) light 100;
    if ((
    sens 30) && (sens<40)) light 150;
    if ((
    sens 40) && (sens<50)) light 180;
    if ((
    sens 50) && (sens<60)) light 210;
    if ((
    sens 70) && (sens<80)) light 230;
    if (
    sens 80light 255;

    analogWrite(ledPinlight);
    delay(10);
     } 
    Последний раз редактировалось Chip; 08.06.2012 в 12:43.

  4. #84
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    55
    Сообщений
    13,382
    Вес репутации
    10

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

    Твой код выше подправил, проверяй

  5. #85
    Пользователь
    Регистрация
    28.07.2010
    Сообщений
    27
    Вес репутации
    182

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

    В течении часа попробую! Спасибо!

  6. #86
    Пользователь
    Регистрация
    28.07.2010
    Сообщений
    27
    Вес репутации
    182

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

    В общем, я понял что от скетча не многое зависит. Если залит скетч на регулировку подсветки, то всё равно реагирует на кнопки. Мне кажется что когда нажимаешь кнопку, ардуино начинает думать что датчик света отправил в неё такое значение
    Если включен сериал монитор и датчик света показывает 400, при нажатии кнопки vol up становится 70 и соответственно подсветка пригасает. А вот если датчик света находится в полной темноте и в сериал мониторе показывает 0 то при нажатии кнопок это значение не меняется и яркость монитора остаётся минимальной. Мистика

  7. #87
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    55
    Сообщений
    13,382
    Вес репутации
    10

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

    Ты какую программу на ПК используешь?
    Я не помню что бы была программа сразу на подсветку и джойстик
    Если AllInOne, то этой программе нужно посылать данные совсем по другому
    Последний раз редактировалось Chip; 09.06.2012 в 03:02.

  8. #88
    Пользователь
    Регистрация
    28.07.2010
    Сообщений
    27
    Вес репутации
    182

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

    На пк использую Hotkey (старый, новые не подхватывают ардуино после сна). Но в тот момент когда был залит скет подсветки(только он изз первого поста), никаких программ на компьютере на запускал (кроме компилятора) Завтра попробую залить скетч подсветки и отключить ардуино от юсб, чтобы убедиться что компьютер не приделах.
    Пробовал фоторезистор отключать от ардуиновских +5 на другие +5 (у вас покупал dc dc конвертер) но получилась какая то бяка, хотя по идее должно было быть всё норм..
    Может не нужно куда то диод добавить или по другому всё подключить ? Или может можно в скетче сделать как нибудь чтобы он значения датчика воспринимал не 10 50 80 100 400, а -10 -50 -80 -100 -400 (ну как бы отрицательные значения)

  9. #89
    Местный
    Регистрация
    31.03.2009
    Возраст
    41
    Сообщений
    154
    Вес репутации
    224

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

    Если вдруг эту тему еще читают...
    Сделал регулировку яркости по схеме с первой страницы, все работает, но при низких значениях яркости по монитору идут горизонтальные полосы. Изменение частоты PWM почему то только усугубляет ситуацию - начинает мерцать и при высокой яркости. Может конденсатор на gate мосфета сможет помочь? Не знаю только как выбрать емкость...

  10. #90
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    55
    Сообщений
    13,382
    Вес репутации
    10

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

    Конденсатор нужно ставить параллельно самой подсветке

Страница 9 из 12 ПерваяПервая ... 3456789101112 ПоследняяПоследняя

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

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

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

Ваши права

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