Страница 12 из 57 ПерваяПервая ... 2678910111213141516171822 ... ПоследняяПоследняя
Показано с 111 по 120 из 561
  1. #111
    Продвинутый
    Регистрация
    19.02.2010
    Возраст
    46
    Сообщений
    244
    Вес репутации
    224

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

    Cyb1980, ты не мог бы весь код выложить?
    Спасибо.

  2. #112
    Пользователь
    Регистрация
    07.12.2009
    Сообщений
    29
    Вес репутации
    184

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

    Прошу помощи, т.к. в програмировании полный 0
    Как существующую программу дополнить следующей функцией: при сопротвлении на входе ардуины 32 кОм, имеем на выходе а2 логическую 1, а при 16 кОм, логическую 1 имеем на выходе а3. При других значениях на входе - согласно настроек хоткей. Т.е. дополнительно использовать ардуину как компаратор с двумя выходами. Нужно это для регулирования громкости аналоговым регулятором (ALPS), остальное управление програмное.
    Комп может быть как включен, так и выключен, питание на ардуину идёт от бортсети.
    Помогите пожалуйста.
    П.С. наверное неправильно к значениям резисторов привязываться, лучше к значению U на вх. а5, но сути это не меняет.
    Последний раз редактировалось Rover 176; 22.05.2010 в 19:43.

  3. #113
    Гуру Аватар для (vS)
    Регистрация
    18.06.2007
    Возраст
    46
    Сообщений
    1,981
    Вес репутации
    686

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

    в исходниках
    PHP код:
    res_dt1 analogRead(PIN); // прочитать данные АЦП 
    читаем состояние АЦП, далее по тексту песни добавляешь свои куплеты, типа
    PHP код:
    if (res_dt1==32komdigitalWrite(a2HI); 
    PHP код:
    if (res_dt1==16komdigitalWrite(a3HI); 
    ну я тут еще задержки не показал... альпсу же еще провернуться надо... типа
    PHP код:
    if (res_dt1==32kom) {
        
    digitalWrite(a2HI);
        
    delay(40);
        
    digitalWrite(a2LOW);
        } 
    переменные 32kom, 16kom, a2 и a3 надо заменить на соответствующие значения... извини, копать описание дуины не охото причем значение напряжения тебе придется измерить самому... создать махонький проектик, который будет мониторить состояние АЦП в СОМ порт, и посмотреть, сколько это "32ком". + тебе нужно не точное значение, а вилка, ибо резисторы, провода, сила нажатия у нас зависят от разных параметров, поэтому... допустим нажатие кнопки "32КОМ" у тебя дает 145...148 положения АЦП, тогда
    PHP код:
    if ((res_dt1<150)&(res_dt1>142)) { 
    ну и далее по тексту пьесы
    Последний раз редактировалось (vS); 23.05.2010 в 18:07.
    автоMOBILEвый моDDEр
    мой карпутер второй очередной

  4. #114
    Пользователь
    Регистрация
    07.12.2009
    Сообщений
    29
    Вес репутации
    184

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

    Спасибо , но , как я понял надо порты а2 и а3 в проекте открыть, иначе не компилиуется. Вопрос - как?

  5. #115
    Гуру Аватар для (vS)
    Регистрация
    18.06.2007
    Возраст
    46
    Сообщений
    1,981
    Вес репутации
    686

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

    a2 и a3 это аналоговые пины... чтобы активировать их как цыфровые в дуине... спроси у Чипа, мне думается, пришлось лезть на сайт, читать описание, листать схему... пить пиво что как-то так
    PHP код:
    DDRC  0x0C// включили а02 и а03 на выход
    PORTC 0x00// начально пины "0" 
    ну а далее, чтобы в порт "плюнуть" пользуй
    PHP код:
    PORTC &= B11111101 
    чтобы сбросить пин и
    PHP код:
    PORTC |= B00000010 
    чтобы установить, это для 2 пина, для третьего передвинь 0 и 1 с 2 на 3 позицию справа
    автоMOBILEвый моDDEр
    мой карпутер второй очередной

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

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

    int A2 = 15;
    int A3 = 16;
    или так
    #define A2 15
    #define A3 16
    Последний раз редактировалось Chip; 24.05.2010 в 03:08.

  7. #117
    Пользователь
    Регистрация
    07.12.2009
    Сообщений
    29
    Вес репутации
    184

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

    Что сделал :
    1. С помощью конфига определил, что ардуина шлёт в комп при нажатии нужной кнопки значение 725
    2. Дописал скетч (выделил)

    #define PIN 5 //номер аналогового порта
    #define LIMIT 6 //предел погрешности сопротивления
    #define A2 15
    #define A3 16


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

    void loop()
    {
    old_time = real_time;
    math_time = 0;
    res_dt1 = analogRead(PIN); // прочитать данные АЦП
    if ((res_dt1<730)&(res_dt1>720))digitalWrite(A2,HIGH );
    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 ) //если нет дребезга
    {


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

    3. Залил в ардуину.

    При нажатии на кнопку на А2 ничего не меняется. Где ошибка?

    П.С. Пинайте, ругайте за тупость, смейтесь в голос, только помагайте

  8. #118
    Новичок
    Регистрация
    21.11.2009
    Возраст
    39
    Сообщений
    19
    Вес репутации
    182

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

    [QUOTE=Rover 176;63272]Что сделал :
    1. С помощью конфига определил, что ардуина шлёт в комп при нажатии нужной кнопки значение 725
    QUOTE]

    - это преобразованное в 2 байты число, а тебе нужно не преобразованное
    чтоб его получить я думаю можно попробывать что то типо
    Serial.write( dt1,DEC) хотя неуверен лучше у гуру поинтересоваться!
    Последний раз редактировалось Dr_cannabis; 24.05.2010 в 15:31.

  9. #119
    Пользователь
    Регистрация
    07.12.2009
    Сообщений
    29
    Вес репутации
    184

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

    [QUOTE=Dr_cannabis;63273]
    Цитата Сообщение от Rover 176 Посмотреть сообщение
    Что сделал :
    1. С помощью конфига определил, что ардуина шлёт в комп при нажатии нужной кнопки значение 725
    QUOTE]

    - это преобразованное в 2 байты число, а тебе нужно не преобразованное
    чтоб его получить я думаю можно попробывать что то типо
    Serial.write( dt1,DEC) хотя неуверен лучше у гуру поинтересоваться!
    Я с огласен, и готов привязаться к значению U или R на вх. A5, вот только не знаю как это сделать.

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

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

    Ошибка в том что нужно в void setup() сконфигурировать вывод A2 на выход

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

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

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

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

Ваши права

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