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


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

Ответ
 
Опции темы
Старый 10.01.2017, 08:10   #81
uncann
Новый Пользователь
 
Регистрация: 08.01.2017
Возраст: 41
Город: Chelyabinsk
Регион: 74
Машина: Actyon
Сообщений: 7
uncann is on a distinguished road
По умолчанию

Ну и имеется в виду спать, просто это же кнопка "power"
Вот как в скрипте на 6-ой странице, строка которая не проходит компиляцию:

if (data>=140 && data<=150) // спать
{
Remote.power();
Remote.clear();
}
uncann вне форума   Ответить с цитированием
Старый 10.01.2017, 09:03   #82
lti1
Старший Пользователь
 
Аватар для lti1
 
Регистрация: 17.01.2010
Возраст: 41
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 443
lti1 is a splendid one to beholdlti1 is a splendid one to beholdlti1 is a splendid one to beholdlti1 is a splendid one to beholdlti1 is a splendid one to beholdlti1 is a splendid one to beholdlti1 is a splendid one to behold
По умолчанию

Цитата:
Сообщение от uncann Посмотреть сообщение
Ну и имеется в виду спать, просто это же кнопка "power"
Вот как в скрипте на 6-ой странице, строка которая не проходит компиляцию:

if (data>=140 && data<=150) // спать
{
Remote.power();
Remote.clear();
}
http://pccar.ru/showthread.php?p=277286#post277286
lti1 на форуме   Ответить с цитированием
Старый 11.01.2017, 19:01   #83
uncann
Новый Пользователь
 
Регистрация: 08.01.2017
Возраст: 41
Город: Chelyabinsk
Регион: 74
Машина: Actyon
Сообщений: 7
uncann is on a distinguished road
По умолчанию

Не, файлики то поменяны, но заменил попробовать из тех что по ссылке - все равно так же 'class Remote_' has no member named 'power'
uncann вне форума   Ответить с цитированием
Старый 12.01.2017, 19:03   #84
uncann
Новый Пользователь
 
Регистрация: 08.01.2017
Возраст: 41
Город: Chelyabinsk
Регион: 74
Машина: Actyon
Сообщений: 7
uncann is on a distinguished road
По умолчанию

О! Победил
Оказывается надо так:
Remote.power();
Remote.clear();
То есть "Power" надо с маленькой буквы! С чего бы ради - непонятно, но так скомпилировалось.
uncann вне форума   Ответить с цитированием
Старый 01.03.2017, 11:13   #85
T0xa
Новый Пользователь
 
Регистрация: 11.10.2016
Возраст: 30
Город: Куйбышев
Регион: 54
Машина: Mazda
Сообщений: 6
T0xa is on a distinguished road
По умолчанию

Всем привет! Стоит задача рулить цифровым потенциометром используя энкодер. Написал скетч - залил в Arduino Uno, подтянул пины по питанию через встроенные резисторы. Все работает и регулируется. НО после того как перенес этот скетч на Pro Mini 3.3V 8Mhz, то появился глюк - вращаешь энкодер в любую сторону а он циклично меняет значение сначала до минимума а потом до максимума (либо наоборот, смотря в какую сторону крутить). Попробовал переписать скетч под библиотеку Encoder.h, но в результате все повторяется. На Uno работает как должно, а на Pro Mini циклично меняет значение, как будто энкодер попеременно вращаешь в разные стороны. Возможно где-то по схемотехнике чего-то надо добавить? В общем, прошу помощи.
__________________
Pioneer SPH-DA100 + Mini M8S II + Helix DSP.2 + Arduino

Последний раз редактировалось admin; 23.03.2017 в 01:24.
T0xa вне форума   Ответить с цитированием
Старый 01.03.2017, 16:23   #86
skanch
Старший Пользователь
 
Аватар для skanch
 
Регистрация: 19.01.2010
Возраст: 51
Город: Санкт-Петербург
Регион: 78, 98
Машина: Mitsubishi Lancer X
Сообщений: 772
skanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant future
По умолчанию

Я нисколько не программист, но пользуюсь таким скетчем в своих поделках. Связка: энкодер+ProMini 5V 16Mhz работает нормально.

Последний раз редактировалось admin; 23.03.2017 в 01:25.
skanch вне форума   Ответить с цитированием
Старый 01.03.2017, 19:14   #87
T0xa
Новый Пользователь
 
Регистрация: 11.10.2016
Возраст: 30
Город: Куйбышев
Регион: 54
Машина: Mazda
Сообщений: 6
T0xa is on a distinguished road
По умолчанию

Цитата:
Сообщение от skanch Посмотреть сообщение
Я нисколько не программист, но пользуюсь таким скетчем в своих поделках. Связка: энкодер+ProMini 5V 16Mhz работает нормально.
Благодарю, но на мой взгляд слишком громоздко. Нашел решение своей проблемы - подтянул пины по питанию через внешние резисторы 10 кОм и для надежности добавил конденсаторы 0.1 мкф. Все пришло в норму
__________________
Pioneer SPH-DA100 + Mini M8S II + Helix DSP.2 + Arduino

Последний раз редактировалось admin; 23.03.2017 в 01:24.
T0xa вне форума   Ответить с цитированием
Старый 01.03.2017, 19:22   #88
skanch
Старший Пользователь
 
Аватар для skanch
 
Регистрация: 19.01.2010
Возраст: 51
Город: Санкт-Петербург
Регион: 78, 98
Машина: Mitsubishi Lancer X
Сообщений: 772
skanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant futureskanch has a brilliant future
По умолчанию

Цитата:
Сообщение от T0xa Посмотреть сообщение
... Нашел решение своей проблемы - подтянул пины по питанию через внешние резисторы 10 кОм и для надежности добавил конденсаторы 0.1 мкф. Все пришло в норму
Все оказалось куда проще, чем я мог предположить... Удачи в проекте!
skanch вне форума   Ответить с цитированием
Старый 10.08.2017, 20:50   #89
Las42kuz
Пользователь
 
Регистрация: 11.02.2017
Возраст: 30
Город: Новокузнецк
Регион: 42
Машина: FordFocus 2
Сообщений: 41
Las42kuz is on a distinguished road
По умолчанию

Здравствуйте делаю планшет в машину! Остановился на подключении кнопок на руле точнее я подключил ардуйно про микро и кнопки но сейчас решил добавить энкодер и теперь не знаю как объединить два сетча помогите пожалуйста , сам не осилю! По отдельности все работает! Заранее спасибо

это для энкодера
[PHP]#define BTN_pin 8 // pin 8 кнопка энкодера SW
const int pin_A = 10; // pin 10 нога энкодера CLK
const int pin_B = 9; // pin 9 нога энкодера DT
unsigned char encoder_A; //переменная
unsigned char encoder_B; //переменная
unsigned char encoder_A_prev=0; //переменная
uint32_t vibor = 0; //Здесь будем хранть время
int perek = 0; //переменная переключатель

void setup() {
digitalWrite(BTN_pin, 1); //подтяжка кнопки энкодера
pinMode(pin_A, INPUT); //пины энкодера объявляем входами
pinMode(pin_B, INPUT); //пины энкодера объявляем входами
Keyboard.begin(); //подключим как клава
}
void loop()
{

{ encoder_A = digitalRead(pin_A); // считываем состояние выхода А энкодера
encoder_B = digitalRead(pin_B); // считываем состояние выхода B энкодера
if((!encoder_A) && (encoder_A_prev)){ // если состояние изменилось с положительного к нулю
if(encoder_B)
{
Remote.increase(); //отправляем команду громкость выше
Remote.clear(); //очищаем команду
}
else {
Remote.decrease(); //отправляем команду громкость ниже
Remote.clear(); //очищаем команду
}
}
encoder_A_prev = encoder_A; // сохраняем значение А для следующего цикла
}
if(digitalRead(BTN_pin)==LOW) //Если кнопка нажата то делаем то что ниже.
{
Keyboard.press(KEY_LEFT_ALT); //нажмем кнопку ALT
Keyboard.press(KEY_TAB); //нажмем кнопку TAB
Keyboard.release(KEY_TAB); //отпустим кнопку TAB
delay(150); //ждем 150мс чтоб не скакало по окошкам
vibor = millis(); //запускаем отсчет времени
perek=1; //переменной переключателя присваиваем 1
}
if((vibor && millis()-vibor > 1000) && perek==1) //если прошло больше 1 секунды и перемменая переключателя = 1
{
Keyboard.releaseAll(); //отпускаем все кнопки
perek = 0; //переменной переключателя присваиваем 0 чтоб сюда больше не заходил
}
}
/PHP]
для кнопок на руль

[PHP]int rknop; // это переменная которая хранит значения наших кнопок.
void setup()
{
Serial.begin(9600); //это скорость соединения с компьютером (для сериал монитора в нашем случае)

pinMode(rknop,INPUT);
}

void loop()
{
rknop=analogRead(A0); //Считываем значения на порту A0 и записываем значения в переменную rknop
Serial.println(rknop); //Отправляем данные переменной rknop на компьютер
delay(200); //небольшая задержка в пол секунды, её можно удалить но значения в сериал мониторе будет меняться очень быстро

///////////////////////////////////////////
if(rknop < 969 && rknop > 966) //здесь мы делаем условие. Т.е если у наз значение переменной rknop больше 900 и меньше 960 то делаем какоето действие которая ниже. На сколько мы помним при нажатии кнопки S1 у нас значения были ~930 так вот мы могли написать просто if(rknop == 930) что означает если rknop равно 930 то делем дейсвие которое ниже, но наши значения немного игрют поэтому мы задаем никий промежуток от 900 до 960
{
Remote.next(); //отправляем команду следующая песня
delay(200); //делаем небольшую задержу чтоб устройство успело отправить необходимые команды на планшет или компьютер и не засыпать его командами
Remote.clear();//очищаем команду
}

////////////////////////////////////////////
if(rknop < 994 && rknop > 992)
{
Remote.previous(); //предыдущая песня
delay(200);
Remote.clear();
}

////////////////////////////////////////////
if(rknop < 927 && rknop > 925)
{
Remote.play_pause(); //плей и паузу
delay(200);
Remote.clear();
}

////////////////////////////////////////////
if(rknop < 1009 && rknop > 1007)
{
Remote.increase(); //громкость прибавить
delay(000);
Remote.clear();
}

////////////////////////////////////////////
if(rknop < 1019 && rknop > 1015)
{
Remote.decrease(); //громкость убавить
delay(000);
Remote.clear();
}/PHP]
Las42kuz вне форума   Ответить с цитированием
Старый 11.08.2017, 07:16   #90
jonikus81
Старший Пользователь
 
Аватар для jonikus81
 
Регистрация: 07.09.2015
Возраст: 36
Город: Алматы
Регион: Казахстан
Машина: MMC DELICA 95 (булка)
Сообщений: 146
jonikus81 is on a distinguished road
По умолчанию

Las42kuz, как оно могло у Вас работать, если не хватает библиотек в обоих скетчах и желательно ссылку на них ибо стандартные не работают.
jonikus81 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

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

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



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


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