www.open-tager.ru http://www.open-tager.ru/forum/ |
|
LTAscetik http://www.open-tager.ru/forum/viewtopic.php?f=5&t=1565 |
Страница 407 из 532 |
Автор: | Pingvin [ 06 ноя 2014, 14:57 ] | ||
Заголовок сообщения: | Re: LTAscetik | ||
Sabbah писал(а): Мне вообще без разницы, может кому критично? Ну набросал, как у ЛВ сделал. Только как то сигнализировать надо, хотя бы - успешно или нет команда применилась. Пикнуть, что ли? Можно RGB заместо джойстика зацепить.
|
Автор: | Sabbah [ 06 ноя 2014, 15:36 ] |
Заголовок сообщения: | Re: LTAscetik |
Может как вариант пикало в зависимости какая команда выбрана, 3 или 1 к примеру. Да и джойстик тут как по мне вообще не нужен, для ручной настройки курка и перезарядки хватит. Кстати выловил один баг, в прошлом году когда тестировал 3.0 была такая проблема, при выстрелах очень редко происходило самопоражение, вчера тестил ту прошивку, что переделал с 3.1 на 3.0 появилось тоже самое, как правило это происходит на первой обойме стреляя короткими очередями в стену, на расстоянии в 1 метр, а дальше уже норм все. Проявляется редко но есть, так из 7 включений тага 3 раза смог себя поразить. |
Автор: | Pingvin [ 06 ноя 2014, 16:50 ] |
Заголовок сообщения: | Re: LTAscetik |
Sabbah писал(а): Может как вариант пикало в зависимости какая команда выбрана, 3 или 1 к примеру. Да и джойстик тут как по мне вообще не нужен, для ручной настройки курка и перезарядки хватит. Кстати выловил один баг, в прошлом году когда тестировал 3.0 была такая проблема, при выстрелах очень редко происходило самопоражение, вчера тестил ту прошивку, что переделал с 3.1 на 3.0 появилось тоже самое, как правило это происходит на первой обойме стреляя короткими очередями в стену, на расстоянии в 1 метр, а дальше уже норм все. Проявляется редко но есть, так из 7 включений тага 3 раза смог себя поразить. Это не баг. Это, скорее - особенность протокола. Просто иногда отраженный пакет соответствовал стандарту (случайное стечение обстоятельств, при отражении 1 превратилась в правильный 0). Это без контрольной суммы никак не отследить! Тут можно только блокировать прием во время своего выстрела. Мы то только ошибочные игнорим, а правильные (даже если они искаженные) - обрабатываем. Еще можно поэкспериментировать с толерантностью - допустимой погрешностью Но есть опасность, что тогда дальность приема упадет. Такой вот компромисс... Можно так сделать - если ставим мощность ИК для игры в помещении, то и блокируем прием во время выстрела. При игре на улице - не блокируем. А может толерантность уменьшать при игре в помещении? На 100% не избавит все равно, но вероятность снизит. Надо пробовать. |
Автор: | Pacifist [ 06 ноя 2014, 18:33 ] |
Заголовок сообщения: | Re: LTAscetik |
Протокол допускает появление ошибки только в последнем бите, который отвечает за урон. То есть, при условии что проверяется и длина импульсов и длина пауз, проверка на ИД и цвет команды вполне достаточна чтоб не поражать себя. Нарисуйте на бумаге график выстрела и попробуйте единичной помехой превратить 0 в 1 или наоборот - это невозможно (если конечно не стоят допуски в +-300 мкс ). Так что крутите ручки настроек толерантности |
Автор: | Pingvin [ 06 ноя 2014, 19:33 ] |
Заголовок сообщения: | Re: LTAscetik |
Pingvin писал(а): Sabbah писал(а): Мне вообще без разницы, может кому критично? Ну набросал, как у ЛВ сделал. Только как то сигнализировать надо, хотя бы - успешно или нет команда применилась. Пикнуть, что ли? Можно RGB заместо джойстика зацепить. Я сейчас в осадок выпал! Скачал эту прошивку. Включаю таг - а жизни -1% Думал залилось криво, полез в исходники, а там Код: life_in_percent =eeprom_read_byte(&life_after_start); Ну я то вроде не правил! Как оно туда попало?! Что то я уже путаюсь в прошивках. Или кодга мусор удалял - случайно расскомитил? Или чью то исправленную хватанул? Когда успел? Но ведь под 3.1! P.S. Вот же туплю! Сам же правил, когда пример расписывал, только не реализовал настройку этих параметров по UART. Там же и настройка скорострельности предусмотрена Код: life_in_percent =eeprom_read_byte(&life_after_start); cut_off_sound = (eeprom_read_word(&sound_1_size)/100)*(100-CUT_OFF_SOUNT); Добью! |
Автор: | Pingvin [ 06 ноя 2014, 19:57 ] |
Заголовок сообщения: | Re: LTAscetik |
Pacifist писал(а): Протокол допускает появление ошибки только в последнем бите, который отвечает за урон. То есть, при условии что проверяется и длина импульсов и длина пауз, проверка на ИД и цвет команды вполне достаточна чтоб не поражать себя. Нарисуйте на бумаге график выстрела и попробуйте единичной помехой превратить 0 в 1 или наоборот - это невозможно (если конечно не стоят допуски в +-300 мкс ). Так что крутите ручки настроек толерантности Пожалуйста, экспериментируйте #define ERROR_TOLERANCE_FOR_36KHZ 14 #define ERROR_TOLERANCE_FOR_56KHZ 22 Это в "тиках" таймера (72кГц и 112 кГц соответственно) 195 мкс, если правильно посчитал - для 36 кГц 196 мкс - для 56 кГц Много? Грубо говоря +/- 200 мкс |
Автор: | maksim [ 06 ноя 2014, 20:18 ] |
Заголовок сообщения: | Re: LTAscetik |
Sabbah писал(а): Мне кажется заливка прошивки и так не сложная, а вот ИК пульт да, это действительно нужно массам))). Кстати если кому нужна прошивка под 3.0 берите, это та же 3.1 но переделанная, без поддержки блютуза, в принципе можно тут реализовать и его, но я еще не дошел до этого. Звуки берем из 3.1 (8шт). Таг стартует с 0 патронами и 0 обойм, старт игры только с ИК пульта (еще думаю может стоит добавить активацию по центральной кнопке, мало ли что с пультом ), после смерти повязка мигает несколько секунд и тухнет. Вложение: LTAscet_3_0_LCD8x2_wo_joistik_new_ir_tx_algoritm_RC_IRF0_switch_self_ricochet_ignore.zip дядьки ,а как добавить активацию по центральной кнопке ))) А то я прошив,а запустить без пульта не могу)))Или же может у кого есть прошивка "Пульт" для Ascet 3.0 |
Автор: | Pingvin [ 06 ноя 2014, 20:20 ] |
Заголовок сообщения: | Re: LTAscetik |
maksim писал(а): Sabbah писал(а): Мне кажется заливка прошивки и так не сложная, а вот ИК пульт да, это действительно нужно массам))). Кстати если кому нужна прошивка под 3.0 берите, это та же 3.1 но переделанная, без поддержки блютуза, в принципе можно тут реализовать и его, но я еще не дошел до этого. Звуки берем из 3.1 (8шт). Таг стартует с 0 патронами и 0 обойм, старт игры только с ИК пульта (еще думаю может стоит добавить активацию по центральной кнопке, мало ли что с пультом ), после смерти повязка мигает несколько секунд и тухнет. Вложение: LTAscet_3_0_LCD8x2_wo_joistik_new_ir_tx_algoritm_RC_IRF0_switch_self_ricochet_ignore.zip дядьки ,а как добавить активацию по центральной кнопке ))) А то я прошив,а запустить без пульта не могу)))Или же может у кого есть прошивка "Пульт" для Ascet 3.0 Есть, мальчик. Была активация длительным нажатием курка (5 сек). Добрые люди выпилили, как только пультом обзавелись. А может в этой и не выпилена - попробуй долго курок зажать. |
Автор: | Pingvin [ 06 ноя 2014, 20:24 ] |
Заголовок сообщения: | Re: LTAscetik |
Таки выпилена по просьбам трудящихся! Цитата: while(!((ir_message.control_byte ==Valid_value)&&(ir_message.ID==Command)&&(ir_message.param==0x05)))//пока не получим команду "старт" {//[while] rx_event = NOT_EVENT; while((rxCount==0)&&(rx_event != RX_MESSAGE_COMPLITE))//пока нет никаких команд пульта {//[while] WOUND_LED_INVERT; USART_PutChar('1'); timer2 = 0; while (timer2 < 1000); WOUND_LED_INVERT; timer2 = 0; while (timer2 < 1000); }//[while] if (rx_event == RX_MESSAGE_COMPLITE) ir_message = get_ir_message_from_buffer();//пришла команда пульта, выдергиваем значения команды из буфера ИК приемника else //[else] { if (rxCount>0) finde_message_in_bt_buffer(); }//[else] }//[while] /* while(keypress_cntr < 20) { WOUND_LED_INVERT; USART_PutChar('1'); timer2 = 0; while (timer2 < 1000); WOUND_LED_INVERT; timer2 = 0; while (timer2 < 1000); switch (FIRE_KEY_IN&FIRE_KEY_PIN) //проверяем, нажат ли курок { case 0: keypress_cntr++ ; break; case FIRE_KEY_PIN: keypress_cntr = 0; break; default: keypress_cntr = 0; } } */ Было - то что закоммичено. |
Автор: | maksim [ 06 ноя 2014, 20:32 ] |
Заголовок сообщения: | Re: LTAscetik |
О боже ))) О_О |
Страница 407 из 532 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |