Страница 51 из 55 ПерваяПервая ... 414546474849505152535455 ПоследняяПоследняя
Показано с 501 по 510 из 561

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для lti1
    Регистрация
    15.10.2010
    Возраст
    48
    Сообщений
    78
    Вес репутации
    184

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    В порядке бреда. А если использовать все таки одну ардуину с объединенным скетчем и программу клонирующую com порт, например Serial Splitter?

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

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Посмотрел видео.
    Понял в чем проблема, с этой древней версией HotKey не будет работать
    Скачайте последнюю версию HotKey
    Последний раз редактировалось Chip; 18.03.2014 в 12:41.

  3. #3
    Пользователь
    Регистрация
    04.12.2008
    Возраст
    47
    Сообщений
    75
    Вес репутации
    213

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Цитата Сообщение от Chip Посмотреть сообщение
    Посмотрел видео.
    Понял в чем проблема, с этой древней версией HotKey не будет работать
    Скачайте последнюю версию HotKey
    спасибо огромаднейшее. всё работает как нужно.почти счастлив...
    почти,потому что нужно 5 кнопок на реле повесить...
    вот этот код от старой программы,он и хоткей и с реле робил.
    #define PIN 5 //номер аналогового порта
    #define LIMIT 6 //предел погрешности сопротивления


    byte bytes[2];
    int res_dt1;
    unsigned long math_time,old_time,real_time;
    void setup()
    {
    pinMode(2,OUTPUT);
    pinMode(3,OUTPUT);
    pinMode(4,OUTPUT);

    Serial.begin(115200); // настроить скорость com порта
    }

    void loop()
    {
    old_time = real_time;
    math_time = 0;
    res_dt1 = analogRead(PIN); // прочитать данные АЦП
    while(math_time < 300 && (analogRead(PIN)>res_dt1-LIMIT && analogRead(PIN) < res_dt1+LIMIT ))
    {
    real_time = millis(); //получить реальное время
    math_time = real_time - old_time; //считаем длительность паузы
    }

    if( math_time > 80 ) //если нет дребезга
    {

    if (res_dt1>675 && res_dt1<685) digitalWrite(2,LOW );
    delay(30);
    digitalWrite(2, HIGH);

    if (res_dt1>105 && res_dt1<115) digitalWrite(3,LOW );
    if (res_dt1>1020 && res_dt1<1030)digitalWrite(3, HIGH);

    if (res_dt1>25 && res_dt1<35) digitalWrite(4,LOW );
    if (res_dt1>1020 && res_dt1<1030)digitalWrite(4, HIGH);


    bytes[0] = res_dt1 & 255; // преобразовать в 2-байта
    bytes[1] = (res_dt1 & 768) >> 8;
    Serial.write( bytes,2); // отправить прочитаное значение компьютеру
    }
    }
    но он на новой хоткей не работает.

    новый скетч
    //http://compcar.ru
    #define PIN 5 //номер аналогового порта
    #define LIMIT 10 //предел погрешности при дребезге

    byte bytes[4];
    unsigned long math_time,old_time,real_time, res_dt1, res_d;
    void setup()
    {
    Serial.begin(115200);
    }

    void loop()
    {
    res_d = analogRead(PIN);
    if( res_d < LIMIT) res_d = LIMIT;
    delay(10);
    res_dt1 = analogRead(PIN);
    old_time = millis();
    math_time = 0;
    while(math_time < 200)
    {
    real_time = millis();
    math_time = real_time - old_time;
    res_dt1 = analogRead(PIN);
    if(res_dt1 < res_d-LIMIT || res_dt1 > res_d+LIMIT)break;
    }

    if( math_time > 70)
    {
    bytes[0] = res_d & 0xFF; // преобразовать в 4-байта
    bytes[1] = (res_d & 0xFF00) >> 8;
    bytes[2] = (res_d & 0xFF0000) >> 16;
    bytes[3] = (res_d & 0xFF000000) >> 24;
    Serial.write( bytes,4); // отправить прочитаное значение компьютеру
    }
    }
    отлично управляет компом,при этом CF плагин своей ардуиной тоже хорошо управляет.
    но подскажите знающие,остался один шаг.

    что прописать в скетче что бы 5 кнопок были и на реле..,как в верхенм скотче.сам в этом не понимаю.

  4. #4
    Пользователь
    Регистрация
    04.12.2008
    Возраст
    47
    Сообщений
    75
    Вес репутации
    213

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Цитата Сообщение от Chip Посмотреть сообщение
    Посмотрел видео.
    Понял в чем проблема, с этой древней версией HotKey не будет работать
    Скачайте последнюю версию HotKey
    может обновите шапку,что бы кто нибудь еще на грабли не наступил...

  5. #5
    Новичок
    Регистрация
    04.10.2012
    Возраст
    40
    Сообщений
    3
    Вес репутации
    0

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Приветствую, камрады!
    Очень нужен ваш совет.
    Сделал контроллер для рулевых кнопок на основе МК attiny85 с использованием софтового эмулятора vusb. Контроллер теперь прикидывается hid-устройством - обычной клавиатурой. Каждая кнопка на руле описывается прямо в прошивке скан-кодом клавиши или комбинации клавиш. Например: рулевая кнопка Mode - это Alt+Tab и т.п.
    Работает это все вполне неплохо, но есть один минус: переназначить действия для кнопок можно лишь перезалив прошивку в МК. Вопрос: как бы можно было менять привязку кнопок с помощью софта на самом Carpc?

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

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Нужно значения всех Ваших кнопок прописать в условиях

  7. #7
    Пользователь
    Регистрация
    04.12.2008
    Возраст
    47
    Сообщений
    75
    Вес репутации
    213

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    если повторять с предыдущего,то так. правильно?
    //http://compcar.ru
    #define PIN 5 //номер аналогового порта
    #define LIMIT 10 //предел погрешности при дребезге

    byte bytes[4];
    unsigned long math_time,old_time,real_time, res_dt1, res_d;
    void setup()
    {
    Serial.begin(115200);
    }

    void loop()
    {
    res_d = analogRead(PIN);
    if( res_d < LIMIT) res_d = LIMIT;
    delay(10);
    res_dt1 = analogRead(PIN);
    old_time = millis();
    math_time = 0;
    while(math_time < 200)
    {
    real_time = millis();
    math_time = real_time - old_time;
    res_dt1 = analogRead(PIN);
    if(res_dt1 < res_d-LIMIT || res_dt1 > res_d+LIMIT)break;
    }

    if( math_time > 70)
    {
    if (res_dt1>675 && res_dt1<685) digitalWrite(2,LOW );
    delay(30);
    digitalWrite(2, HIGH);

    if (res_dt1>105 && res_dt1<115) digitalWrite(3,LOW );
    if (res_dt1>1020 && res_dt1<1030)digitalWrite(3, HIGH);

    if (res_dt1>25 && res_dt1<35) digitalWrite(4,LOW );
    if (res_dt1>1020 && res_dt1<1030)digitalWrite(4, HIGH);




    bytes[0] = res_d & 0xFF; // преобразовать в 4-байта
    bytes[1] = (res_d & 0xFF00) >> 8;
    bytes[2] = (res_d & 0xFF0000) >> 16;
    bytes[3] = (res_d & 0xFF000000) >> 24;
    Serial.write( bytes,4); // отправить прочитаное значение компьютеру
    }
    }

  8. #8
    Пользователь
    Регистрация
    04.12.2008
    Возраст
    47
    Сообщений
    75
    Вес репутации
    213

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Цитата Сообщение от Beard Посмотреть сообщение
    если повторять с предыдущего,то так. правильно?
    еще забыл момент,без него не робит....
    //http://compcar.ru
    #define PIN 5 //номер аналогового порта
    #define LIMIT 10 //предел погрешности при дребезге

    byte bytes[4];
    unsigned long math_time,old_time,real_time, res_dt1, res_d;
    void setup()
    {
    pinMode(2,OUTPUT);
    pinMode(3,OUTPUT);
    pinMode(4,OUTPUT);

    Serial.begin(115200);
    }

    void loop()
    {
    res_d = analogRead(PIN);
    if( res_d < LIMIT) res_d = LIMIT;
    delay(10);
    res_dt1 = analogRead(PIN);
    old_time = millis();
    math_time = 0;
    while(math_time < 200)
    {
    real_time = millis();
    math_time = real_time - old_time;
    res_dt1 = analogRead(PIN);
    if(res_dt1 < res_d-LIMIT || res_dt1 > res_d+LIMIT)break;
    }

    if( math_time > 70)
    {
    if (res_dt1>675 && res_dt1<685) digitalWrite(2,LOW );
    delay(30);
    digitalWrite(2, HIGH);

    if (res_dt1>105 && res_dt1<115) digitalWrite(3,LOW );
    if (res_dt1>1020 && res_dt1<1030)digitalWrite(3, HIGH);

    if (res_dt1>25 && res_dt1<35) digitalWrite(4,LOW );
    if (res_dt1>1020 && res_dt1<1030)digitalWrite(4, HIGH);



    bytes[0] = res_d & 0xFF; // преобразовать в 4-байта
    bytes[1] = (res_d & 0xFF00) >> 8;
    bytes[2] = (res_d & 0xFF0000) >> 16;
    bytes[3] = (res_d & 0xFF000000) >> 24;
    Serial.write( bytes,4); // отправить прочитаное значение компьютеру
    }
    }

  9. #9
    Новичок
    Регистрация
    11.04.2012
    Возраст
    41
    Сообщений
    16
    Вес репутации
    154

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Приветствую друзья, нужна ваша помощь, загрузил данный скетч все работает
    отлично, что изменить чтобы работало 5 кнопок, а не 4
    #define PIN 7 //номер аналогового порта
    #define LIMIT 10 //предел погрешности при дребезге

    byte bytes[4];
    unsigned long math_time,old_time,real_time, res_dt1, res_d;
    void setup()
    {
    Serial.begin(115200);
    }

    void loop()
    {
    res_d = analogRead(PIN);
    if( res_d < LIMIT) res_d = LIMIT;
    delay(10);
    res_dt1 = analogRead(PIN);
    old_time = millis();
    math_time = 0;
    while(math_time < 200)
    {
    real_time = millis();
    math_time = real_time - old_time;
    res_dt1 = analogRead(PIN);
    if(res_dt1 < res_d-LIMIT || res_dt1 > res_d+LIMIT)break;
    }

    if( math_time > 70)
    {
    bytes[0] = res_d & 0xFF; // преобразовать в 4-байта
    bytes[1] = (res_d & 0xFF00) >> 8;
    bytes[2] = (res_d & 0xFF0000) >> 16;
    bytes[3] = (res_d & 0xFF000000) >> 24;
    Serial.write( bytes,4); // отправить прочитаное значение компьютеру
    }
    }

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

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Да, только если значения нажатий правильные.

Страница 51 из 55 ПерваяПервая ... 414546474849505152535455 ПоследняяПоследняя

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

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

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

Ваши права

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