www.open-tager.ru

открытый лазертаг форум
Текущее время: 25 ноя 2024, 22:11

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


Реклама

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


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



Начать новую тему Ответить на тему  [ Сообщений: 5319 ]  На страницу Пред.  1 ... 8, 9, 10, 11, 12, 13, 14 ... 532  След.
Автор Сообщение
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 24 июн 2012, 17:05 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Pacifist писал(а):
Pingvin писал(а):
...
А лучше - переделать, как я уже предлагал ранее.

Согласен, лучше переделать так.

Код:
                     fire_led_status=ON; //включаем вспышкуем на 1 количество патронов
                     send_ir_package();   //Производим "выстрел"
                     last_simple=0;      //воспроизводим звук сначала
                     fire_led_status=OFF;

А еще лучше вообще засунуть fire_led_status=ON/OFF; в функцию send_ir_package(); Тогда и мигать будет соответственно скорострельности.


Немного не так! :)
Диод вспышки тут же потухнет, не дождавшись окончания отправки пакета!
Функция send_ir_package() не ожидает окончания передачи пакета, управление возвращается сразу.
Код:
void send_ir_package(void){ //Îòïðàâëÿåì ïàêåò ("ñòðåëÿåì")
cursor_position = 0;       //Êóðñîð - íà íà÷àëî áëîêà äàííûõ
ir_transmitter_on = true;   //Ðàçðåøàåì ïåðåäà÷ó
//while (ir_transmitter_on);   //Æäåì, ïîêà ïàêåò îòïðàâèòüñÿ
}

Если убрать комент у while (ir_transmitter_on) - тогда будет дожидаться!
Но я считаю, что это не есть хорошо! Ибо во время ожидания не будут обрабатываться другие события системы! :(
Окончание передачи пакета "отловить" можно в прерывании.
Код:
#include "ltag_ascetic.h"
#include "milshot_snd.h"
//#include "hitraw.h"
/**************************************************************************************
* Обработчик прерываний таймера
***************************************************************************************/

ISR(TIMER2_COMP_vect){
timer1++;
volatile uint8_t prt;


prt = TSOP_IN&TSOP_PIN;
if (prt==0) //На ножке ИК-приемника низкий уровень сигнала (пойман сигнал несущей)
   {
   //   PORTA &= ~(1 << 0); //включаем вспомогательный светодиод
      low_level_counter++;//Увеличиваем счетчик длительности низкоуровнего сигнала на ножке ИК-приемника
   }
else  //На ножке ИК-приемника высокий уровень сигнала (пойман сигнал несущей)
   {
   //   PORTA |=(1<<0);   //выключаем вспомогательный светодиод
      high_level_counter++;///Увеличиваем счетчик длительности высокоуровнего сигнала на ножке ИК-приемника
      if((start_bit_received)&&(high_level_counter > IR_ZERO*8))
      {//Фиксируем окончание приема по таймауту
         start_bit_received   = false;    //отменяем прием
         rx_event = RX_COMPLETE;         //Генерим событие "принят пакет"      
      }


   }
if (ir_transmitter_on==true)
   {//Если передача разрешена

      if (ir_pulse_counter > 0)      //необходимая длительность пачки импульсов
      {                        //ещё не достигнута, "мигаем" дальше
         IR_LED_INVERT;           //необходимая длительность пачки
         ir_pulse_counter--;
      }
      else                     //пачка импульсов была отправлена,
      {
         IR_LED_OFF;         //тушим ИК-диод
         if ( ir_space_counter > 0)   //проверим, выдержан ли промежуток между импульсами
         {                     //нет, промежуток не выдержан

               IR_LED_OFF;   //тушим ИК-диод
               ir_space_counter--;   //уменьшаем обратный счетчик паузы на один "тик"      
         }
         else //Пакет импульсов и промежуток между битами переданы
         {    //нужно формировать следующую пачку (передаваемый бит)


            if (data_packet.data[cursor_position]!=0) //если указатель указывает не на пустую ячейку
            {
               ir_pulse_counter =data_packet.data[cursor_position++] ; //передадим импульс указанной длительностью
               ir_space_counter = IR_SPACE;      //и про паузу не забудем
            }
            else //Все данные переданы (элемент, на который ссылается указатель, равен 0)
            {
               ir_transmitter_on=false; //выключаем передатчик
            }   





         }            
      }




   }
else    {//Если передача запрещена

      }


}


После

Код:
ir_transmitter_on=false; //выключаем передатчик

Можно выключить диод.

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 25 июн 2012, 19:26 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Реализовал отображение жизни на ЖКИ. :)
http://video.yandex.ru/users/sgshm/view/6/#hq

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 27 июн 2012, 00:03 
Не в сети
Старожил
Аватар пользователя

Зарегистрирован: 31 май 2012, 23:29
Сообщений: 507
Откуда: Украина, Энергодар
Pingvin писал(а):
furhunter писал(а):
Запустил две платы. Могу прицельно стрелять. А попадание уже реализовано?

Конечно - только проследите, чтобы ЦВЕТА КОМАНД БЫЛЫ РАЗНЫЕ!
В этой версии прошивки дружественный огонь игнорируется (хотя включить легко).
Диоды жизни подпаяйте - все сами увидите! ;)


Прекрасно. Все заработало :)
Даже диоды жизни уже работают. Пошел паять :)

_________________
Точно попавшая в цель стрела - есть результат тысячи промахов.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 05 июл 2012, 16:56 
Не в сети
Местный
Аватар пользователя

Зарегистрирован: 11 июн 2012, 17:43
Сообщений: 402
Ну вот и освободился. Думаю таки основательно взяться за вашу плату. Возможно потом подтянется пара электронщиков, которые прифигачат к этому делу блютус для общения с повязкой без провода.

На ГитХАб только релиз? Где можно склонировать девелопер ветку (вы тут явно, что-то пилите xD)?

Думаю пока займусь перезарядкой и античитом (правда пока нет даже идей) ну и настройкой без перепрошивки платы.

_________________
"Лучший пистолет - это автомат" (с) Управление «А» ЦСН ФСБ


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 06 июл 2012, 01:07 
Не в сети
Новосел

Зарегистрирован: 06 июл 2012, 00:16
Сообщений: 51
Откуда: Брянск
:!: :!: :!:
Pingvin, Вам кто-нибудь говорил, что Вы - гений?! ;)
:!: :!: :!:

_________________
Моё оружие стало значительно эффективней, когда я снял его с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 06 июл 2012, 08:35 
Не в сети
Местный

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

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 06 июл 2012, 13:10 
Не в сети
Местный
Аватар пользователя

Зарегистрирован: 11 июн 2012, 17:43
Сообщений: 402
KorSar писал(а):
Смотрю крутые программисты собрались.
А мне никак не дождаться когда в прошивке LTK от tommy обработка сигнала появится.
Сейчас там только обработка пришел майлс или нет. Ни урон ни айди не воспринимается, не говоря уже о командах пульта.
Разбираться в чужой прошивке конечно сложно, но может поможете найти ошибки или может от вас кусочек кода взять?


Я про неё слышал, но не видел. Можешь дать ссылку. Посмотрю по возможности.

Но я пока ищу плату для нашего Уфимского HLS. На второе поколение плат Laserwar (MicroMT) будущее не вожложишь. У Смоленска они думаю скоро кончатся, а ЛазерШтурма и Америки дорого и долго.

_________________
"Лучший пистолет - это автомат" (с) Управление «А» ЦСН ФСБ


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 06 июл 2012, 13:52 
Не в сети
Местный

Зарегистрирован: 12 апр 2011, 15:01
Сообщений: 357
Откуда: СПб
Вот она для АВР Сиудии 4
http://www.open-tag.ru/download/ltk_miles_13_12_11.rar

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 06 июл 2012, 15:05 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
DanGion писал(а):
Ну вот и освободился. Думаю таки основательно взяться за вашу плату. Возможно потом подтянется пара электронщиков, которые прифигачат к этому делу блютус для общения с повязкой без провода.

На ГитХАб только релиз? Где можно склонировать девелопер ветку (вы тут явно, что-то пилите xD)?

Думаю пока займусь перезарядкой и античитом (правда пока нет даже идей) ну и настройкой без перепрошивки платы.

Приветствую всех!
Рад, что у сообщества есть интерес к проекту! :)
Были мысли создать и репозиторий для тех файлов, что ещё находятся на стадии разработки (кажется, такие репозитории называют "ночные сборки").
Но не знаю, как это сделать лучше? :?
Выложить в github?
Но этот паразит не умеет работать с виндовой кодировкой и вместо символов кириллицы в коментариях чёрте что отображается.
Может, есть другие открытые хранилища?
А "хотелок" море - от SD карты для хранения звука, до безпроводной повязки, "умного" магазина и куча ещё чего...
Античит и перезарядка - можно считать, что реализовано! :)
Несколько строчек кода добавить.
И настрока реализована - см. видео! ;)
Посредством джойстика и ЖКИ!
Можете подождать следующего релиза.
А можете и подключится к разработке! ;) :)
С блютусом тоже не вижу проблем (разве что нет в наличии модулей пока) - UART то просто так чтоли свободен? ;)
Короче - развиваться ещё есть куда, потенциал контроллера далеко не исчерпан (а потом можно и на ARM мигрировать, если что... :) ).
Исходниками готов поделиться - есть драйвера для сдвигового регистра, ЖКИ (работающего через сдвиговый), внешней eeprom.
Стараюсь оформить их как библиотеки, которые можно будет подключать к любому проекту.

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: LTAscetik
СообщениеДобавлено: 06 июл 2012, 15:10 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 07 апр 2011, 18:05
Сообщений: 3669
DanGion писал(а):
... У Смоленска они думаю скоро кончатся, а ЛазерШтурма и Америки дорого и долго.


В Ярославле платы MT Core продают тоже относительно недорого, собранная плата -3000р (2800р - если больше 10 шт.)
http://www.lasertag76.ru/index.php?opti ... &Itemid=67


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

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


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

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


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

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