Управление компом и головой рулевыми кнопками
Управлять компом это конечно круто но хотелось бы и внешними устройствами пошевелить с руля. например я задумал чтобы управлять с руля и компом и магнитолой. Немного конкретней: у меня Выхода 22-41 будут подключены через транзисторные ключи к кнопкам магнитолы. Один выход одна кнопка, некоторые из них (основные функции) будут управляться с сенсорных кнопок.
Вопрос:
1. можно ли сделать чтобы они управлялись и сенсорными кнопками и резистивными одновременно? я думаю это возможно. Хотелось бы увидеть прошивку для Arduino чтобы примерно 6 резистивных кнопок управляли 6ю дигитальными выходами.
2. можно ли сделать что то в роди переключателя, например Arduino читает на 13 дигитальном входе HIGH (сигнал для переключения) и данные с резистивных кнопок шлет компу а когда на 13том LOW то управляет назначенными дигитальными выходами?
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(button1, OUTPUT);
pinMode(button2, OUTPUT);
pinMode(button3, OUTPUT);
pinMode(button4, OUTPUT);
pinMode(pctommc, INPUT); // переключатель комп/магнитола
}
void loop()
{
if (digitalRead(pctommc) == HIGH)
{
if (analogRead(0) >= 35 && analogRead(0) <= 45 ) // где 35 мин. , а 45 макс. код нажатия 40
{
digitalWrite(button1, HIGH);
delay(200);
}
else { digitalWrite(button1, LOW); }
if (analogRead(0) >= 85 && analogRead(0) <= 95 ) // где 85 мин. , а 95 макс. код нажатия 90
{
digitalWrite(button2, HIGH);
delay(200);
}
else { digitalWrite(button2, LOW); }
if (analogRead(0) >= 15 && analogRead(0) <= 25)
{
digitalWrite(button3, HIGH);
delay(200);
}
else { digitalWrite(button3, LOW); }
if (analogRead(0) >= 155 && analogRead(0) <= 165 )
{
digitalWrite(button4, HIGH);
delay(200);
}
else { digitalWrite(button4, LOW); }
}
else
{
//здесь ставим код управления рулевыми кгопками компьютером
}
}
Re: Управление компом и головой рулевыми кнопками
Огроменное Спасибо, как раз этого мне и не хватало.
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(button1, OUTPUT);
pinMode(button2, OUTPUT);
pinMode(button3, OUTPUT);
pinMode(button4, OUTPUT);
pinMode(pctommc, INPUT); // переключатель комп/магнитола
}
void loop()
{
if (digitalRead(pctommc) == HIGH)
{
if (analogRead(0) >= 35 && analogRead(0) <= 45 ) // где 35 мин. , а 45 макс. код нажатия 40
{
digitalWrite(button1, HIGH);
delay(200);
}
else { digitalWrite(button1, LOW); }
if (analogRead(0) >= 85 && analogRead(0) <= 95 ) // где 85 мин. , а 95 макс. код нажатия 90
{
digitalWrite(button2, HIGH);
delay(200);
}
else { digitalWrite(button2, LOW); }
if (analogRead(0) >= 15 && analogRead(0) <= 25)
{
digitalWrite(button3, HIGH);
delay(200);
}
else { digitalWrite(button3, LOW); }
if (analogRead(0) >= 155 && analogRead(0) <= 165 )
{
digitalWrite(button4, HIGH);
delay(200);
}
else { digitalWrite(button4, LOW); }
}
else
{
unsigned int res_dt = analogRead(0); // прочитать данные АЦП
bytes[0] = res_dt & 255; // преобразовать в 2-байта
bytes[1] = (res_dt & 768) >> 8;
Serial.write( bytes,2); // отправить прочитаное значение компьютеру
delay(300); // Пауза между нажатиями
}
}
Re: Управление компом и головой рулевыми кнопками
[QUOTE=XsanderS;45150]Вопрос: 1. можно ли сделать чтобы они управлялись и сенсорными кнопками и резистивными одновременно? я думаю это возможно. Хотелось бы увидеть прошивку для Arduino чтобы примерно 6 резистивных кнопок управляли 6ю дигитальными выходами.QUOTE]
А какое максимальное кол-во кнопок, можно подключить по данной схеме??
Re: Управление компом и головой рулевыми кнопками
Максимальное количество кнопок равно числу цифровых портов минус 1
Re: Управление компом и головой рулевыми кнопками
Re: Управление компом и головой рулевыми кнопками
Верно, 13 и это при условии что не будет связи с компом(D0,D1)
Re: Управление компом и головой рулевыми кнопками
Не совсем понял на счет связи с компом. Лучше я отдельную тему создам с эскизами.