www.open-tager.ru
http://www.open-tager.ru/forum/

LTAscetik
http://www.open-tager.ru/forum/viewtopic.php?f=5&t=1565
Страница 499 из 532

Автор:  Pacifist [ 11 май 2018, 11:08 ]
Заголовок сообщения:  Re: LTAscetik

maksim писал(а):
Я хотел по быстрому урон перепроверить на стволах.... попробую на аскете и на лтк1 выставить полностю одинаковый пакет выстрела ,посмотрю булет ардуинка по разному розпознавать пакет или нет )))

Осциллографом посмотрите прямо на ИК диоде

Автор:  maksim [ 19 май 2018, 00:41 ]
Заголовок сообщения:  Re: LTAscetik

Товарищь Пингвин хочу в аскет добавить две команды,в лтк1 уже так сделали ,очень удобно и быстро можна сконфигурировать оружие прям на полигоне... ))) Как будет свободное время ,загляните пожалуста в код ,подскажите что где нужно подправить .
0xA3,0xXX,0xB8 сменить количество жизней на хх
0xA8,0xXX,0xB8 сменить урон на хх

Автор:  Pingvin [ 19 май 2018, 07:46 ]
Заголовок сообщения:  Re: LTAscetik

maksim писал(а):
Товарищь Пингвин хочу в аскет добавить две команды,в лтк1 уже так сделали ,очень удобно и быстро можна сконфигурировать оружие прям на полигоне... ))) Как будет свободное время ,загляните пожалуста в код ,подскажите что где нужно подправить .
0xA3,0xXX,0xB8 сменить количество жизней на хх
0xA8,0xXX,0xB8 сменить урон на хх

Кидайте исходники.
А какие сложности?
Вроде просто там всё.

В файле miles_protocol.h
в конце файла добавляете новые команды сюда
Код:
#define Add_Health 0x80 //ñîîáùåíèå äîáàâèòü æèçíè
#define Add_Rounds 0x81 //ñîîáùåíèå äîáàâèòü ïàòðîíîâ
#define Change_color 0xA9//ñîîáùåíèå ñìåíèòü öâåò êîìàíäû
#define Command 0x83 //ñîîáùåíèå-êîìàíäà
#define Valid_value 0xE8 //êîððåêòíîå çíà÷åíèå êîíòðîëüíîãî áàéòà ñîîáùåíèÿ
сюда



В файле ltag_ascetic.c эти команды обрабатываются, добавьте case для ваших команд

Код:
                        switch(ir_message.ID)//åñëè èìÿ êîìàíäû
                                 {
                                    case Add_Health: //äîáàâèòü "æèçíè"
                                    {
                              //êîä äëÿ äîáàâëåíèÿ æèçíè
                                       break;
                                    }
                                    case Add_Rounds://äîáàâèòü "ïàòðîíîâ"
                                    {
                                 
                               //êîä äëÿ äîáàâëåíèÿ ïàòðîíîâ
                                       break;
                                    }

сюда


Это параметры на текущую игру, или это параметры после включения тага (по умолчанию) должны стать такими?

Автор:  maksim [ 19 май 2018, 08:59 ]
Заголовок сообщения:  Re: LTAscetik

После включения тагера ))))Но можите привисти пример и на текущюю игру ,что б понять принцип,я потом по образцу буду добавлять нужные команды....

Автор:  Pingvin [ 19 май 2018, 11:02 ]
Заголовок сообщения:  Re: LTAscetik

Если после включения - просто переписываем в eeprom соответствующую переменную командой
eeprom_write_byte(var_adress, data);

В случае здоровья обработчик такой
Код:
....

case 0xA3:{
 
                             eeprom_write_byte(&life_after_start,ir_message.param);
                             break;
               }



Если уровень здоровья в текущей игре
Код:
 case 0xA3:{

      life_in_percent = ir_message.param;
      life = (life_in_percent*10)/125;
      if ((life==0)&&(life_in_percent>0)) life=1;
               status_need_update = true;
               break;
}


life_in_percent - это то, что на экране отображается
life - то, что на светодтодах (максимальное значение - 8, что соответствует 100%).

Автор:  maksim [ 21 май 2018, 15:40 ]
Заголовок сообщения:  Re: LTAscetik

Нашом причину ,почиму ардуинка по разному розпознает ,сигнал выстрела аскета и лтк1))))Подключил к выходу тсоп осцылограф:

ЛТК1
0-648мкс
1-1200мкс
пауза-570мкс
заг-2350мкс

аскет
0-630
1-1200
пауза-704
заг-2400
Выстрел настроил что на аскете ,что на лтк1 одинаковый....

Автор:  maksim [ 21 май 2018, 15:42 ]
Заголовок сообщения:  Re: LTAscetik

а где в исходнику можна подправить длительность паузы?????

Автор:  maksim [ 21 май 2018, 16:25 ]
Заголовок сообщения:  Re: LTAscetik

я так понял все длительности можна тут править))))Если у меня датчики на 56 то и число 36000 нужно изменить на 56000 ???Или это не обезательно ,потом через конфигуратор поменяется ?

#define IR_START_BIT_DURATION 2400 // Длительность Старт-Бита (в микросекундах)
#define IR_ONE_BIT_DURATION 1200 // Длительность Бита, соотретствующего единичке (в микросекундах)
#define IR_ZERO_BIT_DURATION 600 // Длительность Бита, соотретствующего нулю (в микросекундах)
#define IR_SPACE_DURATION 600 // Длительность Бита, соотретствующего интервалу между битами (в микросекундах)
//#define IR_F0 miles_protocol.carrier_frequency /*56000*/ // Несущая частота ИК-приемника (f0)
#define IR_F0 36000
#define ERROR_TOLERANCE miles_protocol.err_tolerance //14//22 //Допустимая погрешность длительности принимаемых бит (в "тиках" таймера)

Автор:  maksim [ 21 май 2018, 16:51 ]
Заголовок сообщения:  Re: LTAscetik

Правильно я добавил команду ???

case Add_life:// установить хх жизней
{

life_in_percent = ir_message.param;
life = (life_in_percent*10)/125;
if ((life==0)&&(life_in_percent>0)) life=1;
status_need_update = true;
eeprom_write_byte(&life_after_start,ir_message.param);
beep(1000, 2, 128);
break;
}

Автор:  Pingvin [ 21 май 2018, 17:03 ]
Заголовок сообщения:  Re: LTAscetik

maksim писал(а):
я так понял все длительности можна тут править))))Если у меня датчики на 56 то и число 36000 нужно изменить на 56000 ???Или это не обезательно ,потом через конфигуратор поменяется ?

#define IR_START_BIT_DURATION 2400 // Длительность Старт-Бита (в микросекундах)
#define IR_ONE_BIT_DURATION 1200 // Длительность Бита, соотретствующего единичке (в микросекундах)
#define IR_ZERO_BIT_DURATION 600 // Длительность Бита, соотретствующего нулю (в микросекундах)
#define IR_SPACE_DURATION 600 // Длительность Бита, соотретствующего интервалу между битами (в микросекундах)
//#define IR_F0 miles_protocol.carrier_frequency /*56000*/ // Несущая частота ИК-приемника (f0)
#define IR_F0 36000
#define ERROR_TOLERANCE miles_protocol.err_tolerance //14//22 //Допустимая погрешность длительности принимаемых бит (в "тиках" таймера)


Через конфигуратор можно поменять

Страница 499 из 532 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/