PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > AndroidCar > Дополнительные устройства

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2015, 11:40   #291
Daniel
Старший Пользователь
 
Аватар для Daniel
 
Регистрация: 13.11.2013
Возраст: 42
Город: Самара
Регион: 63, 163
Машина: Hyundai Elantra J4, Suzuki SX4
Сообщений: 632
Daniel has a reputation beyond reputeDaniel has a reputation beyond reputeDaniel has a reputation beyond reputeDaniel has a reputation beyond reputeDaniel has a reputation beyond reputeDaniel has a reputation beyond reputeDaniel has a reputation beyond reputeDaniel has a reputation beyond reputeDaniel has a reputation beyond repute
По умолчанию

Подключать 5В нужно на VCC, предварительно J1 спаять между собой.
Daniel вне форума   Ответить с цитированием
Старый 16.01.2015, 12:18   #292
gooffich
Новый Пользователь
 
Регистрация: 16.01.2015
Возраст: 35
Город: Ярославль
Регион: 76
Машина: Lifan SolANO
Сообщений: 7
gooffich is on a distinguished road
По умолчанию ПОМОГИТЕ НАПИСАТЬ СКЕТЧ ДЛЯ LEONARDO

Приобрёл новую плату Leonardo. измерил показание кнопок:

Громкость + 393

громкость - 296

трек + 121

трек - 166

плей.пауза 32

моде 86

помогите написать скетч. если есть такая возможность, чтоб работала экранная клавиатура.
gooffich вне форума   Ответить с цитированием
Старый 16.01.2015, 15:51   #293
Chubaka885
Старший Пользователь
 
Регистрация: 08.10.2013
Возраст: 41
Регион: 56
Машина: Toyota Corolla e150
Сообщений: 325
Chubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the rough
По умолчанию

Цитата:
Сообщение от gooffich Посмотреть сообщение
Приобрёл новую плату Leonardo. измерил показание кнопок:

Громкость + 393

громкость - 296

трек + 121

трек - 166

плей.пауза 32

моде 86

помогите написать скетч. если есть такая возможность, чтоб работала экранная клавиатура.
Эту тему пошерстить не судьба?
Ну всего же 30 страниц. Тридцаааать. Не триста же....
__________________
Nexus 7 2012 (grouper), Cyanogenmod 11 - M10
фото установки Nexus 7 2012 & Toyota Corolla
Chubaka885 вне форума   Ответить с цитированием
Старый 16.01.2015, 16:00   #294
gooffich
Новый Пользователь
 
Регистрация: 16.01.2015
Возраст: 35
Город: Ярославль
Регион: 76
Машина: Lifan SolANO
Сообщений: 7
gooffich is on a distinguished road
По умолчанию

Цитата:
Сообщение от Chubaka885 Посмотреть сообщение
Эту тему пошерстить не судьба?
Ну всего же 30 страниц. Тридцаааать. Не триста же....
пробовал. не получается.
gooffich вне форума   Ответить с цитированием
Старый 16.01.2015, 16:08   #295
Chubaka885
Старший Пользователь
 
Регистрация: 08.10.2013
Возраст: 41
Регион: 56
Машина: Toyota Corolla e150
Сообщений: 325
Chubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the rough
По умолчанию

Цитата:
Сообщение от gooffich Посмотреть сообщение
пробовал. не получается.
Не получается что?, прочитать тему и найти готовый скетч.
Что касается того что бы работала экранная клавиатура, то это не зависит от скетча. Читайте эту тему
__________________
Nexus 7 2012 (grouper), Cyanogenmod 11 - M10
фото установки Nexus 7 2012 & Toyota Corolla
Chubaka885 вне форума   Ответить с цитированием
Старый 16.01.2015, 16:41   #296
gooffich
Новый Пользователь
 
Регистрация: 16.01.2015
Возраст: 35
Город: Ярославль
Регион: 76
Машина: Lifan SolANO
Сообщений: 7
gooffich is on a distinguished road
По умолчанию

Цитата:
Сообщение от Chubaka885 Посмотреть сообщение
Не получается что?, прочитать тему и найти готовый скетч.
Что касается того что бы работала экранная клавиатура, то это не зависит от скетча. Читайте эту тему
Скетчи разные пробовал. у меня при подключении ардуино к пк или планшету начинаются переполох. либо звук вкл,выкл. какие приложения открыты воспр. остан. громкость бегает туда сюда и многое бругое.
Да, что выбирать перед заливкой скетча фаил-параметры-....?
gooffich вне форума   Ответить с цитированием
Старый 16.01.2015, 19:19   #297
Chubaka885
Старший Пользователь
 
Регистрация: 08.10.2013
Возраст: 41
Регион: 56
Машина: Toyota Corolla e150
Сообщений: 325
Chubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the rough
По умолчанию

Цитата:
Сообщение от gooffich Посмотреть сообщение
Скетчи разные пробовал. у меня при подключении ардуино к пк или планшету начинаются переполох. либо звук вкл,выкл. какие приложения открыты воспр. остан. громкость бегает туда сюда и многое бругое.
Да, что выбирать перед заливкой скетча фаил-параметры-....?
Попробуйте залить этот скетч.
Перед заливкой поменяйте файлы как написано в том сообщении, поменяйте номер аналогового пина на свой, и подставьте свои значения кнопок.
В параметрах менять нечего не надо, главное чтобы в сервис -> плата - было выбранно Arduino Leonardo и в сервис -> последовательный порт -был выбран номер порта вашей леонардо.
Для заливки скетча используйте ПО Arduino 1.0.4-r2 или Arduino 1.0.5-r2 в более высоких версиях замена файлов невозможна, там необходимо вносить изменения в сам файл.

А "переполох" у вас скорей всего из за неправильного подключения резистивной кнопки!
__________________
Nexus 7 2012 (grouper), Cyanogenmod 11 - M10
фото установки Nexus 7 2012 & Toyota Corolla
Chubaka885 вне форума   Ответить с цитированием
Старый 18.01.2015, 17:40   #298
gooffich
Новый Пользователь
 
Регистрация: 16.01.2015
Возраст: 35
Город: Ярославль
Регион: 76
Машина: Lifan SolANO
Сообщений: 7
gooffich is on a distinguished road
По умолчанию

Цитата:
Сообщение от Chubaka885 Посмотреть сообщение
Попробуйте залить этот скетч.
Перед заливкой поменяйте файлы как написано в том сообщении, поменяйте номер аналогового пина на свой, и подставьте свои значения кнопок.
В параметрах менять нечего не надо, главное чтобы в сервис -> плата - было выбранно Arduino Leonardo и в сервис -> последовательный порт -был выбран номер порта вашей леонардо.
Для заливки скетча используйте ПО Arduino 1.0.4-r2 или Arduino 1.0.5-r2 в более высоких версиях замена файлов невозможна, там необходимо вносить изменения в сам файл.

А "переполох" у вас скорей всего из за неправильного подключения резистивной кнопки!
Спасибо! Это скедч подкорректировал, почти подошёл. Единственный минус - как мне сделать чтоб пауза\плей была на другой кнопке а не на кнопке моде при удержании? скетч прилагаю

int analogPin=0; //пин для подключения кнопок
int data;
unsigned long flag = 0;
unsigned long eventTime = 0;
unsigned long pauseMillis = 0;

void setup()
{
Keyboard.begin();
}

void loop()
{
data=analogRead(analogPin); //читаем значение нажатой кнопки

//********************** Громкость ************************************

if(data>=1023 && flag == 0) // все кнопки отпущены
{
eventTime=millis();
}

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=884 && data<=904 && flag == 0) // короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)
{
Remote.increase();
flag = 5;
delay(10);
Remote.clear();
}

if(millis()-eventTime>500 && data>=884 && data<=904 && flag == 5 || data>=210 && data<=230 && flag == 3) // удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)
{
Remote.increase(); // действие после удержание кнопки, Увеличить громкость каждые 0,1 секунды
flag = 3;
Remote.clear();
delay(100);
}

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=824 && data<=844 && flag == 0) // короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)
{
Remote.decrease();
flag = 6;
delay(10);
Remote.clear();
}

if(millis()-eventTime>500 && data>=824 && data<=844 && flag == 6 || data>=457 && data<=477 && flag == 3) // удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)
{
Remote.decrease(); // действие после удержание кнопки, Уменьшить громкость каждые 0,1 секунды
flag = 3;
Remote.clear();
delay(100);
}

//********************** AltTab + Play/pause ************************************

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=462 && data<=482) // короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)
{
flag = 1;
}

if(data>=1023 && flag == 1 && pauseMillis == 0) // действие после короткого нажатия кнопки, Alt+Tab
{
Keyboard.press(KEY_LEFT_ALT);
Keyboard.press(KEY_TAB);
Keyboard.release(KEY_TAB);
Keyboard.press(KEY_TAB);
Keyboard.release(KEY_TAB);
flag = 0;
pauseMillis = millis();
}

if(data>=1023 && flag == 1 && pauseMillis != 0) // действие после короткого повторного нажатия кнопки, Alt+Tab
{
Keyboard.press(KEY_TAB);
Keyboard.release(KEY_TAB);
flag = 0;
pauseMillis = millis();
}

if(pauseMillis && millis()-pauseMillis >= 800 && data>=1023) // && flag == 7 && data>=950)
{
flag = 0;
pauseMillis = 0;
Keyboard.releaseAll();
}

if(millis()-eventTime>500 && data>=567 && data<=587 && flag == 1) // удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)
{
Remote.play_pause(); // действие после удержание кнопки, воспроизведение / пауза
flag = 0;
delay(10);
Remote.clear();
}
//********************** Next и Fast Forward ************************************

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=572 && data<=582) // короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)
{
flag = 2;
}

if(data>=1023 && flag == 2) // действие после короткого нажатия кнопки, Next
{
Remote.next();
flag = 0;
delay(10);
Remote.clear();
}

if(millis()-eventTime>500 && data>=572 && data<=582 && flag == 2 || data>=0 && data<=10 && flag == 3) // удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)
{
Remote.forward(); // действие после удержание кнопки, Fast Forward
flag = 3;
Remote.clear();
delay(100);
}
//********************** Previous и Rewind ************************************

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=671 && data<=691) // короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)
{
flag = 4;
}

if(data>=1023 && flag == 4) // действие после короткого нажатия кнопки, Previous
{
Remote.previous();
flag = 0;
delay(10);
Remote.clear();
}

if(millis()-eventTime>500 && data>=671 && data<=691 && flag == 4 || data>=74 && data<=94 && flag == 3) // удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)
{
Remote.rewind(); // действие после удержание кнопки, Rewind
flag = 3;
Remote.clear();
delay(100);
}

if(data>=1023 && flag == 3 || data>=950 && flag == 5 || data>=950 && flag == 6) // действие после отпускания кнопки
{
flag = 0;
}
}
gooffich вне форума   Ответить с цитированием
Старый 18.01.2015, 23:49   #299
lti1
Старший Пользователь
 
Аватар для lti1
 
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
lti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond repute
По умолчанию

Цитата:
Сообщение от gooffich Посмотреть сообщение
Единственный минус - как мне сделать чтоб пауза\плей была на другой кнопке а не на кнопке моде при удержании?
То есть, что бы AltTab и Play/pause были на разных кнопках и действовали при коротком нажатии? Если да, то так:
PHP код:
int analogPin=0//пин для подключения кнопок
int data;
unsigned long flag 0;
unsigned long eventTime 0;
unsigned long pauseMillis 0;

void setup()
{
Keyboard.begin();
}

void loop()
{
data=analogRead(analogPin); //читаем значение нажатой кнопки

//********************** Громкость ************************************

if(data>=1023 && flag == 0// все кнопки отпущены
{
eventTime=millis();
}

if(
millis()-eventTime>10 && millis()-eventTime<499 && data>=884 && data<=904 && flag == 0// короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)

Remote.increase();
flag 5;
delay(10);
Remote.clear();
}

if(
millis()-eventTime>500 && data>=884 && data<=904 && flag == || data>=210 && data<=230 && flag == 3// удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)

Remote.increase(); // действие после удержание кнопки, Увеличить громкость каждые 0,1 секунды
flag 3;
Remote.clear();
delay(100);
}

if(
millis()-eventTime>10 && millis()-eventTime<499 && data>=824 && data<=844 && flag == 0// короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)

Remote.decrease();
flag 6;
delay(10);
Remote.clear();
}

if(
millis()-eventTime>500 && data>=824 && data<=844 && flag == || data>=457 && data<=477 && flag == 3// удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)

Remote.decrease(); // действие после удержание кнопки, Уменьшить громкость каждые 0,1 секунды
flag 3;
Remote.clear();
delay(100);
}

//********************** AltTab + Ещё что то ************************************ 

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=462 && data<=482// короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)

flag 1;
}

if(
data>=1023 && flag == && pauseMillis == 0// действие после короткого нажатия кнопки, Alt+Tab
{
Keyboard.press(KEY_LEFT_ALT);
Keyboard.press(KEY_TAB);
Keyboard.release(KEY_TAB);
Keyboard.press(KEY_TAB);
Keyboard.release(KEY_TAB);
flag 0;
pauseMillis millis();
}

if(
data>=1023 && flag == && pauseMillis != 0// действие после короткого повторного нажатия кнопки, Alt+Tab
{
Keyboard.press(KEY_TAB);
Keyboard.release(KEY_TAB);
flag 0;
pauseMillis millis();
}

if(
pauseMillis && millis()-pauseMillis >= 800 && data>=1023// && flag == 7 && data>=950)
{
flag 0;
pauseMillis 0;
Keyboard.releaseAll();
}

if(
millis()-eventTime>500 && data>=567 && data<=587 && flag == 1// удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)

//Remote.play_pause(); // действие после удержание кнопки, Ещё что то
flag 0;
//delay(10);
//Remote.clear();
}
//********************** Next и Fast Forward ************************************ 

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=572 && data<=582// короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)

flag 2;
}

if(
data>=1023 && flag == 2// действие после короткого нажатия кнопки, Next
{
Remote.next();
flag 0;
delay(10);
Remote.clear();
}

if(
millis()-eventTime>500 && data>=572 && data<=582 && flag == || data>=&& data<=10 && flag == 3// удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)

Remote.forward(); // действие после удержание кнопки, Fast Forward
flag 3;
Remote.clear();
delay(100);
}
//********************** Previous и Rewind ************************************ 

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=671 && data<=691// короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)

flag 4;
}

if(
data>=1023 && flag == 4// действие после короткого нажатия кнопки, Previous
{
Remote.previous();
flag 0;
delay(10);
Remote.clear();
}

if(
millis()-eventTime>500 && data>=671 && data<=691 && flag == || data>=74 && data<=94 && flag == 3// удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)

Remote.rewind(); // действие после удержание кнопки, Rewind
flag 3;
Remote.clear();
delay(100);
}

//********************** Play/pause + Ещё что то ************************************ 

if(millis()-eventTime>10 && millis()-eventTime<499 && data>=111 && data<=111// короткое нажатие кнопки от 10 до 499 миллисекунд (изменяется здесь millis()-eventTime>10 && millis()-eventTime<499)

flag 7;
}

if(
data>=1023 && flag == 7// действие после короткого нажатия кнопки, воспроизведение / пауза
{
Remote.play_pause(); 
flag 0;
delay(10);
Remote.clear();
}

if(
millis()-eventTime>500 && data>=111 && data<=111 && flag == 7// удержание кнопки от 500 до ? миллисекунд (изменяется здесь millis()-eventTime>500)

//Remote.play_pause(); // действие после удержание кнопки, Ещё что то
flag 0;
//delay(10);
//Remote.clear();
}

if(
data>=1023 && flag == || data>=1023 && flag == || data>=1023 && flag == 6// действие после отпускания кнопки
{
flag 0;


Измените data<=111 на Ваши значения.
lti1 вне форума   Ответить с цитированием
Старый 19.01.2015, 12:23   #300
gooffich
Новый Пользователь
 
Регистрация: 16.01.2015
Возраст: 35
Город: Ярославль
Регион: 76
Машина: Lifan SolANO
Сообщений: 7
gooffich is on a distinguished road
По умолчанию

Спасибо огромное!Теперь как часики.
gooffich вне форума   Ответить с цитированием
Ответ


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

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 21:43.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot