www.open-tager.ru

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

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


Реклама

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


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



Начать новую тему Ответить на тему  [ Сообщений: 52 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 29 окт 2013, 12:41 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
разливное :roll:

это для открытия нужного портала, очень помогает :D


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 01 ноя 2013, 00:38 
Не в сети
Местный
Аватар пользователя

Зарегистрирован: 13 апр 2012, 14:01
Сообщений: 441
Откуда: Тегусигальпа
Собрал для теста )
Решаю ребус с подключением сегментов ) В схеме обозначил D2-D8 пытаюсь как то сопоставить a-g

PS: Какая то беда с динамической индикацией...
При нулях - горит по одному сегменту во всех разрядах, можно было бы предположить что это сегмент G - имеем типа прочерк.
Но дальше сумел выставить счетчик на 10 (посчитал кол-во пыхов) но с каждым пыхом одинаково меняются разряды сотен и десятков.
Очень подозреваю что на самом деле должен быт SLED с общим катодом, а не анодом как на схеме....

_________________
Вечно молодой, вечно пьяный...

www.lasertag76.ru


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 01 ноя 2013, 02:15 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
да, так и есть. Должен быть общий катод. Я сперва схемку накидал, потом отпаял единственный имевшийся индикатор и не особо проверяя анод там или катод подпаял. Потом просто выставил в одном порту нолики в другом единички, так и так, и посмотрел в каком положении работает )

Косяк в том что я схемке уделил слишком мало внимания. Сейчас займусь.
И сегменты расставлю. А то там долго искать придется что куда


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 01 ноя 2013, 04:02 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
LED индикатор в схеме с общим катодом
если нужен с общим анодом - открываем исходники, ищем user.h и правим в нем маски символов на инвертированные (массивы const int8_t _simbol[13], const int8_t _slider[6])
дальше открываем main.c и правим функцию Refresh - инвертируем в опросе биты PORTB<0:3>
В функции sliders вместо PORTB = 0b00000000; пишем PORTB = 0b00000111;

ну вроде ничего не забыл
Изображение

во время первого старта аптечки на экране будет отображаться всякая ерунда, потому как в EEPROM еще ничего не записано и читается что попало (конкретно 0xFF). Удерживая кнопку New Game включаем питание и заходим в конфигуратор (экранчик мигнет красивой заставкой. Держим кнопку пока не увидим заставку, отпускаем кнопку), устанавливаем нужные значения двумя другими кнопками, еще разок жмем New Game. Аптечка подтверждает что сохранила данные и перешла в активный режим еще раз весело помигав экранчиком. Играем. Теперь при нажатии New Game аптечка посылает 1(!) пакет команды и минусует одну жизнь из памяти. Не из EEPROM. Там так и остается настроенное в прошлый раз число ))
Сброс аптечки производится выключением питания.

(Дополнил первые посты в теме актуальной информацией и описанием)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 01 ноя 2013, 09:52 
Не в сети
Местный
Аватар пользователя

Зарегистрирован: 13 апр 2012, 14:01
Сообщений: 441
Откуда: Тегусигальпа
mail_robot писал(а):
LED индикатор в схеме с общим катодом
если нужен с общим анодом - открываем исходники, ищем user.h и правим в нем маски символов на инвертированные (массивы const int8_t _simbol[13], const int8_t _slider[6])
дальше открываем main.c и правим функцию Refresh - инвертируем в опросе биты PORTB<0:3>
В функции sliders вместо PORTB = 0b00000000; пишем PORTB = 0b00000111;

А лучше сгонять до радиодеталей ) Я так и сделаю )

_________________
Вечно молодой, вечно пьяный...

www.lasertag76.ru


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 01 ноя 2013, 10:54 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
у нас там улица такая рядом с магазином - хрен запаркуешься. 1 карман и 3 эвакуатора все время дежурят. хз чего проще...
есть правда еще парочка магазов, но там ассортимент ни в ... ни в красную армию в общем


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 01 ноя 2013, 21:26 
Не в сети
Местный
Аватар пользователя

Зарегистрирован: 13 апр 2012, 14:01
Сообщений: 441
Откуда: Тегусигальпа
Собрал! :) Работает! Спасибо :)

В процессе тестирования выяснил:
Глюк: после девятый десяток проскакивает. т.е. после 100 идет 90.

Коды не смотрел, но по всей видимости команда не Full Ammo ? А Clips Pickup (0x8A 0x00-0x0F) т.к. второй раз на майлсе не работал (стояли настройки что аммо бокс можно один раз брать)
И Add Health +5, а не Full Health.
Скомпелируй пжл для меня с Full Ammo и Full Health.Хочу сэкономить нажатия кнопок )))
И подскажи чем компилировать? Думаю что команды то научусь менять)
И еще мерцание очень заметно. Может увеличить время горения?

_________________
Вечно молодой, вечно пьяный...

www.lasertag76.ru


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 02 ноя 2013, 08:04 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
команды я брал точно такие же, как на лазерваровской хреновине medic/ammo. Особо не вдавался в из подробности если честно )) Просто соснифил их оттуда логическим анализатором и загнал в код программы

Глюк десяток тоже вчера неожиданно обнаружил, поправлю. Гдето неправильно условие стоит в if. Главное в блоке программирования такого глюка нет, а в игровом блоке есть.

AddHealth действительно сейчас настроена на +5, потому как мы всем городом+Владивосток приняли соглашение об общих настройках. У всех по 20 здоровья, а у разных видов оружия разный урон. Легкие ПП - 4, штурмовые 5, пулеметы - 7, снайпера легкие - 10, снайпера тяжелые - 20 (таких пока нет). Договорились что медик будет пополнять 1 урон штурмовика. То есть +5. У вас конечно может отличаться.
Если что команды меняются ооочень просто. Открываем файлик user.h. Там будут 3 очень хорошо закоментированных массива констант с командами, которые передаются в каждой из функций. Просто пишем там то что нам нужно по нажатию нужной кнопки, заливаем, пользуемся.

Я это все дело компилирую стандартными микрочиповскими инструментами (бесплатными)
MPLAB X IDE http://www.microchip.com/pagehandler/en ... ly/mplabx/
и на него ставится компилятор XC8 Free. Он как бы коммерческий, просто во фришной версии не делает выравнивания кода и не оптимизирует на скорость/размер. А так все то же самое
http://www.microchip.com/pagehandler/en ... s/mplabxc/
если что, у меня на него таблетка есть ))) Досталась случайно от сочувствующих. Но разницы с таблеткой и без я особой не заметил

Мерцание дисплея пофиксил уже, дня три еще назад. Просто уменьшил прелоад таймера 1 с 16000 до 10000 тиков в функции Refresh. Мерцание на глаз стало вообще не заметным

Сейчас поправим все глючки. Мне вообще было интересно когда соберут первую копию, чтобы хоть чтото что я не заметил вылезло.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 02 ноя 2013, 08:13 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
Код:
const uint16_t _Start[24]=  2400, 1200, 1200, 1200, 1200, 1200, 2400, 2400, // 0b10000011 = 0x83 Header
                            1200, 1200, 1200, 1200, 1200, 2400, 1200, 2400, // 0b00000101 = 0x05 NewGame
                            2400, 2400, 2400, 1200, 2400, 1200, 1200, 1200; // 0b11101000 = 0xE8 End

const uint16_t _Medic[24]=  2400, 1200, 1200, 1200, 1200, 1200, 1200, 1200, // 0b10000000 = 0x80 Header
                            1200, 1200, 1200, 1200, 1200, 2400, 1200, 2400, // 0b00000101 = 0x05 5x health
                            2400, 2400, 2400, 1200, 2400, 1200, 1200, 1200; // 0b11101000 = 0xE8 End

const uint16_t _Ammo[24]=   2400, 1200, 1200, 1200, 2400, 1200, 2400, 1200, // 0b10001010 = 0x8A Header
                            1200, 1200, 1200, 1200, 2400, 1200, 2400, 1200, // 0b00001010 = 10x ammo pack
                            2400, 2400, 2400, 1200, 2400, 1200, 1200, 1200; // 0b11101000 = 0xE8 End


вот что сейчас отправляется по кнопочкам


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Проект - умная аптечка (релиз)
СообщениеДобавлено: 02 ноя 2013, 08:35 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
пофиксил 9-ку после 100 вниз и мерцание дисплея
Код:
if (RB3==0 && RA7 == 1)
        {
           
            if ((DIGIT1+DIGIT2+DIGIT3)>0) NewGameFlag = 1;  // to decrement LED digits
                                                            // before sending command

            if (DIGIT3 > 0) DIGIT3--;               // decrement health
            else
            {
                if (DIGIT2>0)
                {
                    DIGIT2--;
                    DIGIT3 = 9;
                }
                else
                {
                    if (DIGIT1>0)
                    {
                        DIGIT1--;
                        DIGIT2 = 9;
                        DIGIT3 = 9;   // этой строчки не хватало для корректной работы счетчика
                    }
                }
            }


не хватало одной строчки


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 52 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.

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


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

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


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

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