www.open-tager.ru

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

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


Реклама

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


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



Начать новую тему Ответить на тему  [ Сообщений: 359 ]  На страницу Пред.  1 ... 15, 16, 17, 18, 19, 20, 21 ... 36  След.
Автор Сообщение
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 16 июл 2014, 23:57 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
KorSar писал(а):
Вот с последними правками
Вложения: ltk_kor16_01_14.rar [257.96 KiB]


Побыстрому посмотрел код: очень очень очень шикарный вариант - всем рекомендую !!!
Обрабатывает 3 команды майлс, со звуком выстрела (для некоммерческой игры большего и не потребуется) вмещается в 5кб памяти :P Приятный вариант условной компиляции. И самое главное понятная и логичная структура прошивки, короткие обработчики прерываний, хорошая изоляция логики от аппаратного уровня и тд.

Кто автор ?

ЗЫ. Этот вариант желательно сохранить с минимальным рабочим функционалом (чтобы на атмеге8 работал), максимум реализовать условную компиляцию для схем Ltk v2(обойдётся условной компиляцией) и Asceta(потребуется переменить ножки в схеме аскета OC2 + OC1A/B)

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 17 июл 2014, 23:05 
Не в сети
Прохожий

Зарегистрирован: 10 июл 2014, 15:57
Сообщений: 2
Спасибо за заботу) То есть прошивку ltk_kor16_01_14.rar можно заливать в МК с этой схемой?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 18 июл 2014, 08:02 
Не в сети
Местный

Зарегистрирован: 13 июл 2011, 17:05
Сообщений: 475
Откуда: Perm
alex97, можно заливать, но перед компиляцией прошивки надо прочитать файлик config.h (на всякий случай, вдруг ноги кнопок и светодиодов отличаются - например, если не хочется ставить светодиод пустой обоймы, переключатель режима стрельбы или ещё чего, то это можно закоментировать в конфиге и оно работать не будет)

LTagKirov писал(а):
ЗЫ. Этот вариант желательно сохранить с минимальным рабочим функционалом (чтобы на атмеге8 работал), максимум реализовать условную компиляцию для схем Ltk v2(обойдётся условной компиляцией) и Asceta(потребуется переменить ножки в схеме аскета OC2 + OC1A/B)
Спс за лестный отзыв, только это прошивка так и не дописана до конца. По сути выложенный файл - это прошлогодняя первоапрельская прошивка + уже дописанная Korsar'ом индикация количества жизней светодиодом пустой обоймы. Как минимум надо убрать работу с железом из игровой логики (переделав заплатку про звук пролетевшей мимо пули), убрать из звуков повязку (перенеся её в игровую логику) и переделать инициализацию периферии (сейчас если надо, например, ещё один светодиод, то его надо добавить и в config и в hardware).

Вообщем, делать с прошивкой можно всё что угодно, главное не забыть потом поделиться со всеми :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 18 июл 2014, 12:25 
Не в сети
Местный

Зарегистрирован: 12 апр 2011, 15:01
Сообщений: 357
Откуда: СПб
tommy писал(а):
KorSar, а может выложить её в «мастерскую»? плюс удалить там предыдущие версии (некоторые с поломанным майлс приёмом аж)

Я сам не смогу это сделать. Нужно просить держателей сайта. Собственно этот пост и есть просьба.

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


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

Зарегистрирован: 01 мар 2014, 15:38
Сообщений: 69
Добрый день!
правильно ли я понимаю, что исходники никогда не публиковались (кроме ltk_miles_13_12_11)?
Спасибо.


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

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
tommy писал(а):
Спс за отзыв, только это прошивка так и не дописана до конца.
Вообщем, делать с прошивкой можно всё что угодно, главное не забыть потом поделиться со всеми :)


Риторический вопрос: что она не умеет жизненно необходимого для игры ?
Сейчас сравнил "народную" прошивку со своей новой версией:
1. Народная прошивка конфигурится перекомпиляцией - и этого достаточно для самодельщика.
2. Только один wav звук выстрела, остальные сигналы тональные - а нужно ли больше ?
3. Нет проверки заряда АКБ и встроенного зарядного устройства - это не прокат можно и позаботится о своих батареях заранее.
4. Одна зона поражения - у комерсантов и прокатчиков тоже не сильно распростронена многозоновость.
5. Команды майлс оживить, прибавить патроны, здоровье вроде маловато, однако честно скажем нет у нас таких частых сценарных игр где нужно больше.
6. Нет подствольника - макеты с ним я пока невидел в живую


Итого "народная" прошивка достаточна, для большинства игр, и даже прокат для детей/манагеров на ней можно организовать !


tommy писал(а):
можно заливать, но перед компиляцией прошивки надо прочитать файлик config.h (на всякий случай, вдруг ноги кнопок и светодиодов отличаются

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


Вложения:
Lt_ncir.zip [92.03 KiB]
Скачиваний: 770
Im.png
Im.png [ 105.89 KiB | Просмотров: 12250 ]

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


Последний раз редактировалось LTagKirov 18 июл 2014, 14:29, всего редактировалось 5 раз(а).
Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 18 июл 2014, 14:24 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Ansat писал(а):
LTagKirov писал(а):
Вот новая схема, процессор нужен Ат168, но если в "кроватку" ставить то и Ат8 подойдёт для начала
правильно ли я понимаю, что исходники никогда не публиковались (кроме ltk_miles_13_12_11)?


Для второй версии LTK V2, исходники были выложены частями (основные узлы), полного проекта для сборки ещё не распространял. Если вам нужны исходники самое простое присоединится к "народной" прошивке от Tommy.

Если собрать схему LTK V2 (только что выложил), и поправить "народную" прошивку(переставить таймеры OC2 и ОС1А), для запуска на новой схеме без переподключения динамика и ИК диода, то можно будет менять прошивки в любой момент. У вас будет макет в котором собранна электроника совместимая с двумя варииантами прошивок от разных издателей. И в таком варианте эта вещь никогда не станет бесполезной, какая то ветка всё равно выживет.


ЗЫ. Объяснение почему полезно переменить в первой версии таймеры между собой и сделать OC2(звук) и ОС1А(выстрел)
http://open-tager.ru/forum/viewtopic.ph ... 0%B8%D1%8F

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 18 июл 2014, 21:57 
Не в сети
Местный

Зарегистрирован: 13 июл 2011, 17:05
Сообщений: 475
Откуда: Perm
Ansat писал(а):
правильно ли я понимаю, что исходники никогда не публиковались (кроме ltk_miles_13_12_11)?
кстати, публиковались ведь. для 1-й версии точно где-то были, только чёт не ищется и с сайта не скачивается. ltk_milesxxx - это уже вольное переложение оригинала :)

LTagKirov, спс за схему в диптрейсе. так-то немало отличий v2 от v1 - ноги, частота.

кстати, раз уж такая пьянка пошла, то последний вариант прошивки задумывался как какой-то промежуточный описательный язык игровой логики транслируемый либо компилируемый lex'ом/yacc'ом в подходящий вариант для различных железок (v1/v2/asket/pic/stm32). Типа хочешь гранату - берёшь универсальный файлик, прогоняешь его прогой которая с железкой шла и дальше уже по обстоятельствам либо компилируешь полученную прошивку, либо заливаешь байт-код в мк, ну или как оно там в разных железках. Но чёт в реальности всё одно не так и много разных железок и у всех лишь ружья, да повязки, ну и писать на промежуточном варианте код спагетти логики чёт не менее муторно чем просто под каждый вариант написать логику ружья, и как главная отмазка - всё одно больше чем для одной железки код писать не приходится :) а вот если люди с разными железяками соберутся, то им есть смысл логику в каком-то промежуточном варианте писать (ради этого предложения весь абзац писал).

например, прошлогодняя прошивка как-то так выглядела сначала (HW/SW - это требования на железку/парсер):
Код:
HW_VERSION 1
SW_VERSION 1

***hardware***
led led_fire
led led_hit      requied
led led_empty

button btn_restart   name:"New game button"
button btn_mode         name:"Burst mode button"
button btn_fire       name:"Firebutton"
button switch_mode   name:"Burst mode switch"
button btn_reload      name:"Reload button"

***variables***
int    id               default:0  editable range:{0..127}   name:"id"
int    team            default:0  editable range:{0..3}      name:"team" values:{"red", "green", "blue", "yellow"}
int    health         default:1  editable range:{0..255}   name:"health"
int    rounds         default:30 editable range:{0..INF}
int    mags            default:3  editable range:{0..INF}   name:"mags"
bool   fire_mode      default:false editable values:{"full auto", "semi"}
int      burst_size   default:false editable range:{0..INF}
bool   autoreload   default:false editable values:{"manual", "auto"}
bool   alive_at_startup default:false editable name:"power on status" values:{"dead", "alive by default"}


sound sound_new_game         default:"new_game_sound" editable
sound sound_reload_begin   default:"sound_reload_begin" editable
sound sound_reload_end      default:"sound_reload_end" editable
sound sound_out_of_ammo      default:"sound_out_of_ammo" editable
sound sound_fire               default:"fire" editable
sound sound_beep               default:"sound_beep" editable
sound sound_beep_beep         default:"sound_beep_beep" editable
sound sound_power_on         default:"sound_power_on" editable

timer timer_fire
timer timer_shock
timer timer_vulnerable
timer timer_flash

bool ready_to_fire

***code***
function reload_done() {
   //перезарядка завершена, устанавливаем количество патронов, сбрасываем значение отсекателя
   burst = get_default(burst)
   rounds = get_default(rounds)

   //играем звук, выключаем лампочку и переводим автомат в состояние готовности
   play_sound(sound_reload_done)
   ready_to_fire = true
   disable_led(led_empty)
}

function reload_weapon() {
   if (mags>0) {
      mags = mags-1
      ready_to_fire = false
      start_timer(timer_fire, reload_time, reload_done)
      play_sound(sound_reload_begin)
   } else {
      play_sound(sound_out_of_ammo)
   }
}

function flash_done() {
   disable_fire_led()
}

function firing_done() {
   ready_to_fire = true
}
...
и т.д. по тексту
всякие эти editables, name и values нужны для конфигурирования всего этого хозяйства утилитами (для прошивок где эти утилиты (bluetooth/radio/uart/etc) есть, для остальных - конфиг файлики и т.д.), вообщем, где-то это всё уже обсуждалось и не раз. Но вот если кто возьмется забацать что-нить такое (или не такое, но универсальное) - готов помогать, могу парсер с какого-нить языка под ltk v1/v2 сделать :) (в прошлый раз дальше описания в bison'е дело но ушло - всё одно под одну платформу поиск с заменой удобней) :)

не гербалайф, пасаны - надо лишь всем толпой с описательной частью определиться и усё (ну или взять язык уже существующий, какой-нить простой, добавить ограничений, да ЛТ специфики), а дальше каждый под разные железки свои парсеры сделает.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 18 июл 2014, 22:24 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
tommy писал(а):
кстати, раз уж такая пьянка пошла, то последний вариант прошивки задумывался как какой-то промежуточный описательный язык игровой логики транслируемый либо компилируемый lex'ом/yacc'ом в подходящий вариант для различных железок (v1/v2/asket/pic/stm32).
....
а вот если люди с разными железяками соберутся, то им есть смысл логику в каком-то промежуточном варианте писать (ради этого предложения весь абзац писал).


Волшебно - это получается сценарии для игр и поведение/протоколы маркеров смогут описывать люди которые нифига в програмировании STM PIC и AVR не понимают :roll: Придумщикам электроники надо так сказать только написать "драйвер" для своих плат, а вся скриптовая логика будет готовая


tommy писал(а):
не гербалайф, пасаны - надо лишь всем толпой с описательной частью определиться и усё, а дальше каждый под разные железки свои парсеры сделает.


Может тогда не усложнять с языками, изобразить дефайнами обвёртку над С и описать АПИ для драйвера.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: прошивки на систему LTagKirov
СообщениеДобавлено: 18 июл 2014, 22:47 
Не в сети
Местный

Зарегистрирован: 13 июл 2011, 17:05
Сообщений: 475
Откуда: Perm
Pacifist, Не, как раз ничего не работает :) мало того, что у всех логика даж ружей различается (и на разных системах по разному ружье себя ведёт), дык и взять-то доп. прошивки с базами, аптечками, гранатами, растяжками, админ-пультами тож не понятно где. Если какой-то функционал был не нужен автору железки - его и в прошивке не будет.

Pingvin, LTagKirov, во! давайте запилим!

В общем варианте дифайнами не обернуть никак. Железки-то у всех разные, у кого получится свою обёртку сделать - тому повезло, парсер простой будет, а у кого не получится - тот пусть хоть кодогенерацию пишет. Можно ведь взять си, упростить (типа нельзя локальные переменные, структуры, ссылки и т.д.) и добавить чего не хватает (типа описания полей для конфигураторов, необходимого железа и всякого). Можно даж парсер в байт код простой и тулзу для тестов прошивки для pc сделать, чтоб в мк не заливать, а на ходу оттестить всякие входящие параметры, да нажатия кнопок (чёт понесло).

Событий-то не шибко много ведь - в простейшем случае это игровой цикл, пришла ИК команда, пришёл ИК выстрел и всё (ну может ещё включение железки). События на кнопки вряд-ли нужны. Нужны ф-ции проверки состояния кнопок, включения-выключения светодиодов, проиграть-остановить звук, послать ИК команду и ИК выстрел и, вроде, по железу всё. Для нежелезных - прочитать знание по умолчанию для какого-нить поля, да запустить таймер с callback'ом. Таймеры причём спорная идея - я на них просто логику ружья забацал (на предыдущей странице прошивка, ежели чего), удобно вышло и от железа далеко:) если какие другие идеи есть как время считать в логике - давайте обсудим, да.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 359 ]  На страницу Пред.  1 ... 15, 16, 17, 18, 19, 20, 21 ... 36  След.

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


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

Сейчас этот форум просматривают: Google [Bot] и гости: 37


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

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