Показано с 1 по 9 из 9
  1. #1
    Модератор Аватар для XsanderS
    Регистрация
    05.05.2008
    Возраст
    41
    Сообщений
    829
    Вес репутации
    390

    По умолчанию Управление компом и головой рулевыми кнопками

    Управлять компом это конечно круто но хотелось бы и внешними устройствами пошевелить с руля. например я задумал чтобы управлять с руля и компом и магнитолой. Немного конкретней: у меня Выхода 22-41 будут подключены через транзисторные ключи к кнопкам магнитолы. Один выход одна кнопка, некоторые из них (основные функции) будут управляться с сенсорных кнопок.

    Вопрос:
    1. можно ли сделать чтобы они управлялись и сенсорными кнопками и резистивными одновременно? я думаю это возможно. Хотелось бы увидеть прошивку для Arduino чтобы примерно 6 резистивных кнопок управляли 6ю дигитальными выходами.

    2. можно ли сделать что то в роди переключателя, например Arduino читает на 13 дигитальном входе HIGH (сигнал для переключения) и данные с резистивных кнопок шлет компу а когда на 13том LOW то управляет назначенными дигитальными выходами?
    Последний раз редактировалось XsanderS; 06.10.2009 в 01:25.
    хороший модем должен качать пиво!
    Мой проект

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

    По умолчанию Re: Управление компом и головой рулевыми кнопками

    Все твои задачи реализуемы на arduino.

    Набросал пример с четырьмя резестивными кнопками
    При коде нажатия кнопок =40 =90 =20 =160
    PHP код:
    // http://compcar.ru
    int button1 13;
    int button2 12;
    int button3 11;
    int button4 10;
    int pctommc 2;

    void setup()
    {
        
    pinMode(button1OUTPUT);
        
    pinMode(button2OUTPUT);
        
    pinMode(button3OUTPUT);
        
    pinMode(button4OUTPUT);   
        
    pinMode(pctommcINPUT); // переключатель комп/магнитола
    }

    void loop()
    {
    if (
    digitalRead(pctommc)  == HIGH)
    {
      if (
    analogRead(0) >= 35 && analogRead(0) <= 45 // где 35 мин. , а  45 макс. код нажатия 40
        
    {
           
    digitalWrite(button1HIGH);
           
    delay(200);  
        } 
          else { 
    digitalWrite(button1LOW); }
          
        if (
    analogRead(0) >= 85 && analogRead(0) <= 95 // где 85 мин. , а  95 макс. код нажатия 90
        
    {
           
    digitalWrite(button2HIGH);
           
    delay(200);  
        } 
          else { 
    digitalWrite(button2LOW); }    
          
        if (
    analogRead(0) >= 15 && analogRead(0) <= 25)
        {
           
    digitalWrite(button3HIGH);
           
    delay(200);  
        } 
          else { 
    digitalWrite(button3LOW); }

        if (
    analogRead(0) >= 155 && analogRead(0) <= 165 )
        {
           
    digitalWrite(button4HIGH);
           
    delay(200);  
        } 
          else { 
    digitalWrite(button4LOW); }      
    }
       else
             {
              
    //здесь ставим код управления рулевыми кгопками компьютером
             
    }

    Последний раз редактировалось Chip; 06.10.2009 в 02:39.

  3. #3
    Модератор Аватар для XsanderS
    Регистрация
    05.05.2008
    Возраст
    41
    Сообщений
    829
    Вес репутации
    390

    По умолчанию Re: Управление компом и головой рулевыми кнопками

    Огроменное Спасибо, как раз этого мне и не хватало.
    хороший модем должен качать пиво!
    Мой проект

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

    По умолчанию Re: Управление компом и головой рулевыми кнопками

    Вот полный код
    PHP код:
    // http://compcar.ru 
     
    byte bytes[2];

    int button1 13
    int button2 12
    int button3 11
    int button4 10
    int pctommc 2

    void setup() 

        
    pinMode(button1OUTPUT); 
        
    pinMode(button2OUTPUT); 
        
    pinMode(button3OUTPUT); 
        
    pinMode(button4OUTPUT);    
        
    pinMode(pctommcINPUT); // переключатель комп/магнитола 


    void loop() 

    if (
    digitalRead(pctommc)  == HIGH

      if (
    analogRead(0) >= 35 && analogRead(0) <= 45 // где 35 мин. , а  45 макс. код нажатия 40 
        

           
    digitalWrite(button1HIGH); 
           
    delay(200);   
        }  
          else { 
    digitalWrite(button1LOW); } 
           
        if (
    analogRead(0) >= 85 && analogRead(0) <= 95 // где 85 мин. , а  95 макс. код нажатия 90 
        

           
    digitalWrite(button2HIGH); 
           
    delay(200);   
        }  
          else { 
    digitalWrite(button2LOW); }     
           
        if (
    analogRead(0) >= 15 && analogRead(0) <= 25
        { 
           
    digitalWrite(button3HIGH); 
           
    delay(200);   
        }  
          else { 
    digitalWrite(button3LOW); } 

        if (
    analogRead(0) >= 155 && analogRead(0) <= 165 
        { 
           
    digitalWrite(button4HIGH); 
           
    delay(200);   
        }  
          else { 
    digitalWrite(button4LOW); }       

       else 
             { 
                
    unsigned int res_dt analogRead(0); // прочитать данные АЦП 
                 
    bytes[0] = res_dt 255;          // преобразовать в 2-байта 
                  
    bytes[1] = (res_dt 768) >> 8
                  
    Serial.writebytes,2); // отправить прочитаное значение компьютеру     
                
    delay(300); // Пауза между нажатиями 
             


    Последний раз редактировалось Chip; 17.10.2009 в 00:49.

  5. #5
    Продвинутый
    Регистрация
    08.09.2009
    Возраст
    41
    Сообщений
    236
    Вес репутации
    228

    По умолчанию Re: Управление компом и головой рулевыми кнопками

    [QUOTE=XsanderS;45150]Вопрос: 1. можно ли сделать чтобы они управлялись и сенсорными кнопками и резистивными одновременно? я думаю это возможно. Хотелось бы увидеть прошивку для Arduino чтобы примерно 6 резистивных кнопок управляли 6ю дигитальными выходами.QUOTE]


    А какое максимальное кол-во кнопок, можно подключить по данной схеме??

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

    По умолчанию Re: Управление компом и головой рулевыми кнопками

    Максимальное количество кнопок равно числу цифровых портов минус 1

  7. #7
    Продвинутый
    Регистрация
    08.09.2009
    Возраст
    41
    Сообщений
    236
    Вес репутации
    228

    По умолчанию Re: Управление компом и головой рулевыми кнопками

    Итого 13???

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

    По умолчанию Re: Управление компом и головой рулевыми кнопками

    Верно, 13 и это при условии что не будет связи с компом(D0,D1)
    Последний раз редактировалось Chip; 07.02.2010 в 16:55.

  9. #9
    Продвинутый
    Регистрация
    08.09.2009
    Возраст
    41
    Сообщений
    236
    Вес репутации
    228

    По умолчанию Re: Управление компом и головой рулевыми кнопками

    Не совсем понял на счет связи с компом. Лучше я отдельную тему создам с эскизами.

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

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

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

Ваши права

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