![]() |
|
|
#41 |
|
Пользователь
![]() Регистрация: 03.12.2014
Возраст: 42
Регион: ***эстония***
Сообщений: 75
![]() |
новости с фронта в прямом эфире - начал травить новую плату управления... надеюсь развёл всё правильно =)
В этот раз плата не очень перенеслась... пришлось прилично там почирикать маркером =) ![]() |
|
|
|
|
|
#42 |
|
Пользователь
![]() Регистрация: 03.12.2014
Возраст: 42
Регион: ***эстония***
Сообщений: 75
![]() |
криво, косо, убого... но вроде готово.... осталось убрать пару замыканий, разобрать старую плату и можно ставить комплектуху на эту =)
![]() |
|
|
|
|
|
#43 |
|
Пользователь
![]() Регистрация: 03.12.2014
Возраст: 42
Регион: ***эстония***
Сообщений: 75
![]() |
сори фоткать поздно уже - пора дрыхнуть идти =)
в целом результат - всё работает =) осталось немного исправить скетч (раньше реле управлялось 1. теперь 0.) Завтра финальный тест в сборке с нексусом. если всё заработает - возьмусь резать панель и интегрировать туда усб порт и энкодер. Также если всё заработает как надо - выложу все схемы сюда =) |
|
|
|
|
|
#44 |
|
Пользователь
![]() Регистрация: 03.12.2014
Возраст: 42
Регион: ***эстония***
Сообщений: 75
![]() |
оно работает!
немного можно подправить скетч, но в целом оно работает =) Проверена регулировка громкости при подключении к компу - работает с небольшими лагами. надо лишь уменьшить задержку =) ![]() |
|
|
|
|
|
#45 |
|
Пользователь
![]() Регистрация: 03.12.2014
Возраст: 42
Регион: ***эстония***
Сообщений: 75
![]() |
ну-с... поздравьте меня =) я опять накосячил с разводкой =)
Все исправленные чертежи и скетч выложу как только всё заработает =) |
|
|
|
|
|
#46 |
|
Гуру
![]() Регистрация: 20.01.2010
Возраст: 44
Город: Владивосток
Регион: 25
Машина: Subaru Impreza GF/GG
Сообщений: 1,064
![]() ![]() ![]() |
а че там чертежи))
я вон примерно так же год назад делал))) отрезал кусок от мафона с экодером и завел на ардуину, ток там еще кнопки и качельки.
__________________
Subaru Impreza GF H6 BMW Style PROJECT : - постройка. Было: 2литра / PIII-650/SSD32GB/9.5"/SB X-FI/GPS/3G/OBD2/... Строю: 3литра / I5-MOBILE/500/12"/SB X-FI/GPS/3G/OBD2/... pccar Drive2 ----- Impreza Lite: Allwinner A13 (DNS E76) - Cortex A8 1GHz http://www.pccar.ru/showthread.php?t=18574 |
|
|
|
|
|
#47 |
|
Пользователь
![]() Регистрация: 03.12.2014
Возраст: 42
Регион: ***эстония***
Сообщений: 75
![]() |
не ну мало-ли кому понадобится =)
а как решил что-б без лагов громкость регулировалась? |
|
|
|
|
|
#48 |
|
Старший Пользователь
![]() Регистрация: 01.01.2014
Возраст: 39
Город: Новосибирск
Регион: 54
Машина: РРС, Форд
Сообщений: 954
![]() |
Честно, не понял, зачем экондер? Есть же магнитола в качестве усилителя, выпаял весь функционал, замутил красивый блок кнопок, экондер и васякот
а магнитолу спрятал под сидушку.
__________________
Тесла по-русски |
|
|
|
|
|
#49 |
|
Пользователь
![]() Регистрация: 03.12.2014
Возраст: 42
Регион: ***эстония***
Сообщений: 75
![]() |
магнитола шумит... будет отдельный усилок.... с него не получится вывести управление =\
А вообще нравится мне как энкодер переключается =) я уже почти добился своего =) если не крутить энкодер быстро - вполне сносно получается ![]() |
|
|
|
|
|
#50 |
|
Пользователь
![]() Регистрация: 03.12.2014
Возраст: 42
Регион: ***эстония***
Сообщений: 75
![]() |
Заработало норм на Винде. Единственно что если крутить быстро - толку мало =) лучше крутить спокойно но долго =)
Завтра притащу планшет и буду его ковырять =) скетч: Код:
unsigned long currentTime;
unsigned long loopTime;
const int pin_A = 0; // pin 0
const int pin_B = 1; // pin 1
unsigned char encoder_A;
unsigned char encoder_B;
unsigned char encoder_A_prev=0;
int vol_up = 0;
int vol_down = 0;
const int button = 3; //пин кнопки вкл/выкл
const int relay = 13; //пин управления реле
void setup() {
// declare pin 9 to be an output:
pinMode(9, OUTPUT); // устанавливаем pin 9 как выход +
pinMode(10, OUTPUT); // устанавливаем pin 10 как выход -
pinMode(pin_A, INPUT);
pinMode(pin_B, INPUT);
currentTime = millis();
loopTime = currentTime;
pinMode(relay, OUTPUT);
pinMode(button, INPUT);
}
void loop() {
currentTime = millis();
if(currentTime >= (loopTime + 1)){ // проверяем каждые 5мс (200 Гц)
encoder_A = digitalRead(pin_A); // считываем состояние выхода А энкодера
encoder_B = digitalRead(pin_B); // считываем состояние выхода Б энкодера
if((!encoder_A) && (encoder_A_prev)){ // если состояние изменилось с положительного к нулю
if(encoder_B) {
// выход В в полож. сост., значит вращение по часовой стрелке
vol_up = 100;
}
else {
// выход В в 0 сост., значит вращение против часовой стрелки
vol_down = 100;
}
}
//if ((!encoder_A)&&(!encoder_B)){digitalWrite(9, LOW); digitalWrite(10, LOW);}
encoder_A_prev = encoder_A; // сохраняем значение А для следующего цикла
loopTime = currentTime;
if (vol_up > 0) {digitalWrite(9,HIGH); vol_up--;} else {digitalWrite(9,LOW);}
if (vol_down > 0) {digitalWrite(10,HIGH); vol_down--;} else {digitalWrite(10,LOW);}
}
if (digitalRead(button)==HIGH){
if (digitalRead(relay)==HIGH){digitalWrite(relay,LOW);delay(500);}else{digitalWrite(relay,HIGH);delay(500);}
}
}
|
|
|
|
![]() |
| Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
| Опции темы | Поиск в этой теме |
|
|