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

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   iCarDS (http://pccar.ru/forumdisplay.php?f=121)
-   -   iCarDS + Arduino = iCarDuino (http://pccar.ru/showthread.php?t=16718)

Fedorych 04.03.2012 17:37

Итак, имеем
Икар 12 версии
плагин 5 версии
CDM версии 2 08 14 (обновился 2.08.23b)
дунио подключенное только по юсб.
скетч от чипа
Код:

// http://compcar.ru
#include
 
byte bytes[4];
int RECV_PIN = 11;    //вход ИК приемника
IRrecv irrecv(RECV_PIN);
decode_results results;
unsigned long ir_dt, old_ir;
 
void setup()
{
  Serial.begin(115200);
  irrecv.enableIRIn(); // включить приемник
}
 
void loop() {
  if (irrecv.decode(&results)) 
  {
    if (results.value > 0 && results.value < 0xFFFFFFFF)
    {
      ir_dt = results.value;
      bytes[0] = ir_dt & 0xFF;          // преобразовать в 4-байта 
      bytes[1] = (ir_dt & 0xFF00) >> 8; 
      bytes[2] = (ir_dt & 0xFF0000) >> 16;
      bytes[3] = (ir_dt & 0xFF000000) >> 24;
      Serial.write( bytes,4); // отправить прочитаное значение компьютеру
             
      if (old_ir == ir_dt){delay(250);}  //Пауза между короткими нажатиями
      else {delay(500);}// Пауза после первого нажатия и удержания(перед повторами)
      old_ir = ir_dt;
    }
          if (results.value == 0xFFFFFFFF )
            {
            delay(120); //пауза между повторами
            Serial.write( bytes,4);
            }
      irrecv.resume();
  }
}

Поэкспериментировал сегодня.

1. Запущена программа от чипа IRKey.exe и икар. Уходим в сон, 5 циклов полет нормальный,пульт после сна в икаре всегда работал.
2. Выгружаю IRKey.exe запускаю икар с загруженным плагином, закрываю икар,ухожу в сон,выхожу из сна, запускаю икар-пульт работает, проделал так тоже 5 раз.
3. Запускаю икар с плагином,ухожу в сон, выхожу из сна, и тут либо пульт работает (обычно только после 1 ухода в сон, после 2,3 ухода стабильно не работает),либо икар виснет намертво,либо икар работает,но пульт не работает. В том случае, если икар возобновился после сна,но без пульта, для проверки порта закрываю икар, запускаю IRKey.exe, его иконка в трее перечеркнутая, на нажатия кнопок не реагирует. В диспетчере устройств устройство есть и работает нормально. Помогает только перезагрузка винды.

Пробовал заливать скетч из этой темы,результат тот же.

Такое ощущение что плагину не хватает какой-то задержки опроса порта или наоборот. имхо.

Bersenev 04.03.2012 17:46

попробуй 17-ю или 18-ю версию икара, где брать ты знаешь. В 12 версии икара эксперементировали с режимом сна, может здесь проблема. У меня ,как говорил ранее, ардуино работает стабильно.

Fedorych 04.03.2012 19:06

с 17 ездил все эти дни,сегодня и 18 попробовал, потом решил на 12 откатится мало ли чего...но все без изменений.

Andycar 04.03.2012 21:34

у меня дуинка из кармонитора... Был в плагине сильный дребезг, попробовал залить скетч из первого сообщения этой темы, с модификацией под 5-й пин, теперь вообще кодов не видно в окне настройки... Только почему-то без нажатий пару раз фантомно проскакивали пару раз коды... А с нажатием вообще тишина ;)
Со скетчем от Чипа, конечно, шумело сильно, но хоть различало нажатия ;)

Вопрос (ы):
- Как в скетче регулировать "степень загрубления?"
- Где можно получить оргинальный скетч?

Спасибо заранее.

Bersenev 04.03.2012 22:03

Цитата:

Сообщение от Andycar (Сообщение 213497)
у меня дуинка из кармонитора... Был в плагине сильный дребезг, попробовал залить скетч из первого сообщения этой темы, с модификацией под 5-й пин, теперь вообще кодов не видно в окне настройки... Только почему-то без нажатий пару раз фантомно проскакивали пару раз коды... А с нажатием вообще тишина ;)
Со скетчем от Чипа, конечно, шумело сильно, но хоть различало нажатия ;)

Вопрос (ы):
- Как в скетче регулировать "степень загрубления?"
- Где можно получить оргинальный скетч?

Спасибо заранее.

А эти переменные duino_is_ir_key, duino_is_encoder_1, duino_is_encoder_2, duino_is_res_keys в skin.ini задал?

Если используешь только резистивные кнопки, то задай так

duino_is_ir_key=0
duino_is_encoder_1=0
duino_is_encoder_2=0
duino_is_res_keys=1

Скорее всего если исправил только номер пина для резистивных кнопок на 5, то этот же пин использует и процедура первого энкодера. Что при этом получиться точно не скажу. Так что задай переменные и попробуй.

Никакой степени загрубления в плагине нет, в текущей версии скетча расчёт кода ведётся из 500 полученных значений.

А про какой оригинальный скетч идёт речь?

Andycar 04.03.2012 23:11

да, переменные в .инишник добавил... Все по нулям, кроме резистивных кнопок.
Насчет расчета среднего из 50-ти понял...
Может, просто дольше нажимать нужно? Хотя, тоже не получалось.
Про оригинальный скетч - возможно неправ, но - а вот как вернуть дуинку к исходному состоянию из кармо.....ру?

Bersenev 04.03.2012 23:21

Цитата:

Сообщение от Andycar (Сообщение 213506)
да, переменные в .инишник добавил... Все по нулям, кроме резистивных кнопок.
Насчет расчета среднего из 50-ти понял...
Может, просто дольше нажимать нужно? Хотя, тоже не получалось.
Про оригинальный скетч - возможно неправ, но - а вот как вернуть дуинку к исходному состоянию из кармо.....ру?

http://www.compcar.ru/forum/showthread.php?t=4640

Только расчёт не из 50-ти, а из 500-та значений.

admin 04.03.2012 23:31

Последняя версия скетча и программы здесь

Andycar 05.03.2012 00:18

Цитата:

Сообщение от Bersenev (Сообщение 213508)
http://www.compcar.ru/forum/showthread.php?t=4640

Только расчёт не из 50-ти, а из 500-та значений.

спасибо, буду экспериментировать. :)

з.Ы. И Админу тоже спасибо.

Bersenev 05.03.2012 16:18

Вложений: 1
Цитата:

Сообщение от Fedorych (Сообщение 213483)
с 17 ездил все эти дни,сегодня и 18 попробовал, потом решил на 12 откатится мало ли чего...но все без изменений.

Попробуй эту версию плагина


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

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