www.open-tager.ru

открытый лазертаг форум
Текущее время: 24 апр 2024, 01:02

Часовой пояс: UTC + 3 часа [ Летнее время ]


Реклама

Правила форума


В разделе запрещены - обсуждение оборудования не поддерживающего открытых протоколов, реклама и ссылки на готовые продукты лазертага, обсуждение политики производителей и самих производителей. Виден всем.



Начать новую тему Ответить на тему  [ Сообщений: 359 ]  На страницу Пред.  1 ... 9, 10, 11, 12, 13, 14, 15 ... 36  След.
Автор Сообщение
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 30 апр 2013, 12:49 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Какие из этих команд вы не используете и какие ещё добавить

Код:
switch (mlCommand.Command)
  {
       case MILES_CMD_OK:
                        // Команда обработана, ничего не делать

      break;


       case MILES_GROUP_CMD:
                           // Общая группа команд

         switch (mlCommand.Parametr)
           {
                case MILES_CMD_KILL:

               // переключить автомат приёма LogicPak
               StateIRPack = KillGamer;          

            break;


            case MILES_CMD_NEWGAME:          // Новая игра, немедленно

               // хотим новую игру, автомат LogicNewGame
               StateNewGame = START_NEW_GAME;    
               
               new_game_cnt = nextgame;      // немедленно

            break;


            case MILES_CMD_RESPAWN:          // Новая игра, отложенный старт

               StateNewGame = START_NEW_GAME;    

            break;


            case MILES_CMD_FULL_AMMO:

               ammo_clip_in_game = ammo_clip;  // загрузить магазин пулями
               clip_num_in_game  = clip_num;   // дать игроку магазинов по конфигурации

            break;

            case MILES_CMD_FULL_HEALTH:
               live_in_game = live;         // заполнить жисть 
                                       // в игру не вводим

            break;


            case MILES_CMD_EXPLODE            // Взорвать игрока

               // переключить автомат приёма LogicPak
               StateIRPack = ExplodeGamer;

            break;


            case MILES_CMD_SHOK               // Оглушить игрока, не может стрелять

                                       // на сколько времени оглушить ???
            break;


            case MILES_CMD_DISARM            // Разоружить игрока, выключить стрельбу

               clip_num_in_game = 0;         // отнять все магазины               
               ammo_clip_in_game = 1;         // оставить одну пулю ;)
            break;

            }; //case end


      break; // MILES_GROUP_CMD:


      case MILES_ADD_HEALTH:

         live_in_game = live_in_game + mlCommand.Parametr;

         if (live_in_game > live) live_in_game = live;   // поправить жисть


      break;

      case MILES_ADD_BULLET:                         // прибавить патроны в магазин
         ammo_clip_in_game = ammo_clip_in_game + mlCommand.Parametr:
         if (ammo_clip_in_game > ammo_clip)    ammo_clip_in_game = ammo_clip;

      break;

        case MILES_ADD_CLIP:
            clip_num_in_game = clip_num_in_game + mlCommand.Parametr:   // Количество обойм   прибавить
            ammo_clip_in_game = ammo_clip;                       // загрузить новый магазин

/*            if (clip_num_in_game > clip_num) {
               clip_num_in_game = clip_num;   // поправить количество обойм
                                       // или разрешить сколько угодно ;)
            }
*/

      break;

      case MILES_ADD_MEDKIT:
         // 0х8B Х(0.15)   0хЕ8 Аптечка (количество здоровья - согласно таблице урона,
         // количество единиц здоровья не может быть больше, чем задано в начальных настройках ружья)

         live_in_game = live_in_game + damage_table(mlCommand.Parametr & 0x0F);

         if (live_in_game > live) live_in_game = live;   // поправить жисть

      break;

   }; //case end


   // Входим в эту процедуру один раз
   // повторных входов для обработки команд не требуется
   mlCommand.Command = MILES_CMD_OK;

}   // команд Майлс


_________________
"За 2 месяца максимум можно чертёж сделать, еще за 3 фундамент." (c) Номернабис


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 30 апр 2013, 13:58 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Цитата:
ПрошФивка для майлс


Распиновку уже приводил, собран вариант для синтезируемого звука - наверное надо переделать на пъезо, вавка в память программ атмеги8 одновременно с обработкой команд майлс нелезет (800байт свободно). Можно потестить выстрелы и попадания, если будет интерес выложу сборку с памятью i2c


распиновка
viewtopic.php?f=5&t=417&start=220#p21768


Вложения:
ltk2v.zip [9 KiB]
Скачиваний: 425

_________________
"За 2 месяца максимум можно чертёж сделать, еще за 3 фундамент." (c) Номернабис
Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 30 апр 2013, 22:02 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Pingvin писал(а):
Там же hex голый! :)


А что ещё надо, sapienti sat :)
Ножки обозначены: кварц, светодиод ИК и кнопка огонь = можно пулять.
ТСОП(ножка int1), светодиод HIT = можно принимать.

Команды Майлс принимает, звуком пищит, батарейку меряет. Можно стартануть с кнопки NewGame.

PS. Конфигурирование с ком порта, заливку\проигрывание вав звуков тоже не выключал, но для начальных опытов ненужно, да и доку надо писать ;)


конфигурация по умолчанию основные параметры

Код:
playerID   = 61;   // ID игрока от 0 до 127
     teamID      = 1;   // команда   1-4
     damage      = 14;   // Урон выстрела, 15 позиций (75%)

     frendfire    = 0;   // Режим дружественного огня, вЫключен
     rifle      = 0;    // Режим стрельбы:   автомат
     live      = 200;   // Количество жизней   1-200

     nextgame   = 10;   // Время до начала игры, 1сек, градации 0.1 сек   
     otsechka   = 1;   // Патронов в очереди: 3шт   1-50   
     temp_fire   = 10;   // Скорострельность, 0.01сек выстр/мин   10-990   

     ammo_clip   = 50;   // Патронов в обойме   1-99   
     clip_num   = 6;   // Количество обойм   1-255   
     clip_time   = 5;   // Время перезарядки, 0.1сек  1-99   

     shok_time   = 100;   // Время "шока", невозможность стрелять   0.01
     spas_time   = 100;   // Неуязвимость при ранении   0.01

     kill_time   = 100;   // Свечение после "смерти", 0.1сек    1-60   
     pwm_shot   = 20;   // Дальность выстрела, 10..200 (max 222)
     akb_min      = 500;   // Минимальное напряжение акб, хз ???
   
   mic_gain   = 0xC0;   // конфигуратор микрофона j

_________________
"За 2 месяца максимум можно чертёж сделать, еще за 3 фундамент." (c) Номернабис


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 30 апр 2013, 23:32 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 27 ноя 2011, 00:22
Сообщений: 1569
Откуда: Україна
teamID = 1; // команда 1-4

По умолчанию "синие", или отличается от майлса нумерация команд?

_________________
Нет предела совершенству, но ресурсы заканчиваются быстро.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 01 май 2013, 11:47 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Pacifist писал(а):
teamID = 1; // команда 1-4

По умолчанию "синие", или отличается от майлса нумерация команд?


не задумывался,для меня это просто номер team

_________________
"За 2 месяца максимум можно чертёж сделать, еще за 3 фундамент." (c) Номернабис


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 17 май 2013, 15:06 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
LTagKirov писал(а):
хотелось бы что-то похожее на математическую генерацию отсчётов
sample = F(sample(n-1)) и чтобы звук получался: сирена, шум, удар и тд в зависимости от функции


Попробовал просто проигрывать "шум" из памяти программ c уменьшением громкости, звук весьма похожий получается. Такой вариант звучит лучше вавки обрезаной до 0,1сек.


Код:
Подготовка звука

   if ( SOUND_RAW == num_sound )   {

         // проиграть вав файл из памяти программ
         // будем играть просто шум, с уменьшением громкости

         snd_length = 800*5;      // Длительность звука выстрела 0,5 сек
         snd_tpp = 0;         // индекс отсчётов
         sound_volume = 0;       // регулирока огибающей (громкости), сдвиг в мл разряды
      }




Код загрузки в ШИМ

   if ( SOUND_RAW == snd_current )   {

         //   Проиграть WAV файл из памяти программ "hitraw.h"
            bu = pgm_read_byte(&pSndhit[snd_tpp]);      
            snd_tpp ++;      

            if ((snd_tpp & 0x0200) == 0x0200) {

               // каждый 512 отсчёт (0,06сек) уменьшаем громкость
               // всего есть 8 градаций громкости надо растянуть на 800*5 отсчётов

               sound_volume ++;
            }


            bu  ^= ((snd_tpp & 1) << 7);      // модулируем старший разряд, для громкости
            
            bu >>= sound_volume;
         }

         OCR2 = bu;   // записать в ОСR2 - вывод звука


_________________
"За 2 месяца максимум можно чертёж сделать, еще за 3 фундамент." (c) Номернабис


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 19 май 2013, 11:22 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 06 июн 2012, 13:36
Сообщений: 1175
Откуда: Украина
Предлагаю все же уйти от такой милой многим "реалистичности" звука )))) Те эховые эффекты, которые так всем нравятся в звуке выстрела, как раз не реалистичные. Сам выстрел - это короткий хлопок, остальные призвуки добавляет среда, отражающая этот хлопок. Предлагаю два звука для сравнения, это пистолетные выстрелы с эхом и без него. Тот, который без эха, гораздо легче смоделировать с помощью синтезирования, он и ресурсов меньше съест, потому что короче.


Вложения:
выстрелы.rar [34.29 KiB]
Скачиваний: 383
Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 19 май 2013, 18:28 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Alim писал(а):
Предлагаю все же уйти от такой милой многим "реалистичности" звука )))) который без эха, и ресурсов меньше съест, потому что короче.


Синтезированному звуку наплевать на длительность, можно нагенерить эхо какой угодно длины :)

Сейчас вообще больше склоняюсь к бескомпромисному пъезозвуку "ПИУ-ПИУ", его слышно гораздо дальше :lol: Простой опыт: запишите на флешку звук выстрела откройте двери в машине на природе и послушайте c различный рсстояний, магнитола минимум 50 Вт, резонатор целый багажник, а всё равно проигрывает "ПИУ-ПИУ" по субъективной слышимости. WAV звук это больше для развлечения пользователя макета.

_________________
"За 2 месяца максимум можно чертёж сделать, еще за 3 фундамент." (c) Номернабис


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 19 май 2013, 18:46 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 07 апр 2011, 18:05
Сообщений: 3669
Поэтому Полигон на своих соревнованиях заставляет ставить дефолтовые "пиу-пиу", хотя возможность есть записывать что хочешь


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 20 май 2013, 09:05 
Не в сети
Местный

Зарегистрирован: 12 апр 2011, 15:01
Сообщений: 357
Откуда: СПб
полигоновские звуки выстрела в платах первой версии не такие уж и громкие. По крайней мере, у них звук попадания (пиликанье)
слышно куда дальше чем выстрел, хотя там звук синтезированный под выстрел.
Видимо нужно определить какой тон и какой длительности нужно выдавать или какую последовательность тонов для наибольшей слышимости.

_________________
"шарик" - дура, луч - молодец


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 359 ]  На страницу Пред.  1 ... 9, 10, 11, 12, 13, 14, 15 ... 36  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


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

Найти:
Перейти:  
cron
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB