www.open-tager.ru

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

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


Реклама

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


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



Начать новую тему Ответить на тему  [ Сообщений: 332 ]  На страницу Пред.  1 ... 28, 29, 30, 31, 32, 33, 34  След.
Автор Сообщение
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 27 мар 2014, 17:18 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Sapienti sat ;)

http://chibios.org/dokuwiki/doku.php?id ... _rt_how-to

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 27 мар 2014, 17:51 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
А в чем преимущества Chibios/RT перед FreeRTOS?

У меня шаблон то уже готов, собственно - SD card+FAT+FreeRTOS.
Wav-чики с карточки воспроизводятся на ура!
Как же я хотел реалистичный качественный звук в неограниченном, практически, количестве! :roll:
Сбылось! ;) :)
Сейчас за генерацию несущей возьмусь (все не получается светодиод запаять, чтобы хоть как то на железе проверить).

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 27 мар 2014, 18:19 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Pingvin писал(а):
А в чем преимущества Chibios/RT перед FreeRTOS?

У меня шаблон то уже готов, собственно - SD card+FAT+FreeRTOS.


Там уже готовы к тому что у вас есть: PWM, i2C, USB, NestedIRQ, Таймеры, RTC, UART и ещё куча страшных слов.
Всё равно это придётся писать, а жизнь коротка - зачем делать велосипед, когда есть готовый автомобиль, который спонсирует контора ST, для меня лично последний аргумент самый важный ;)

А ещё встроенная поддержка в этой ОС графической библиотеки http://ugfx.org/, цветные экранчики сейчас везде.


ЗЫ. Для лазертага конечно всё это ненужно: игрушки должны оставатся игрушками 8-)

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 27 мар 2014, 18:29 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
LTagKirov писал(а):
Там уже готовы к тому что у вас есть: PWM,



Вот пример генерации ШИМ в Чибисе, читабельность отменная. Мне глубоко наплевать на потраченную память, главное читабельный код для человека. Сравните со своим вариантом на CMSIS, или ещё хуже на StdPeriph.

Код:
 static PWMConfig pwmcfg = {
  10000, /* 10Khz PWM clock frequency */
  10000, /* PWM period 1 second */
  NULL,  /* No callback */
  /* Only channel 4 enabled */
  {
    {PWM_OUTPUT_DISABLED, NULL},
    {PWM_OUTPUT_DISABLED, NULL},
    {PWM_OUTPUT_DISABLED, NULL},
    {PWM_OUTPUT_ACTIVE_HIGH, NULL},
  },
  0
};
 
 
int main(void)
{
 
  halInit();
  chSysInit();
 
  /* Enables PWM output (of TIM4, channel 4) on blue LED connected to PD15 */ 
  palSetPadMode(GPIOD, GPIOD_LED6, PAL_MODE_ALTERNATE(2));
 
  pwmStart(&PWMD4, &pwmcfg);
  pwmEnableChannel(&PWMD4, 3, 5000);
 
  while (TRUE) {
    chThdSleepMilliseconds(5000);
  }
}



ЗЫ. Почти ардуина, но многозадачная и собирается под любым разумным компилятором.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 27 мар 2014, 19:14 
Не в сети
Аксакал форума
Аватар пользователя

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

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 01 апр 2014, 05:45 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Для генерации несущей ИК сигнала планирую использовать timer 4 в режиме ШИМ.
Две его канала - для Low_Power_IR и High_Power_IR.
Как настроить таймер - вроде разобрался.
А как идеологически правильно включать и выключать ШИМ?
LTagKirov, как Вы это делали, если не секрет?

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 01 апр 2014, 11:37 
Не в сети
Аксакал форума

Зарегистрирован: 29 авг 2011, 11:08
Сообщений: 1849
Pingvin писал(а):
А как идеологически правильно включать и выключать ШИМ?
LTagKirov, как Вы это делали, если не секрет?


Делал так - заводил таймер с периодом 100мкс (10кгц), в нулевой момент времени включал шим, отсчитывал 600мкс (6 прерываний таймера) и выключал затем отмерял паузу и тд. Частота прерываний 10 кгц, это меньше чем 56кгц, и у процессора меньше накладных расходов на обработку прерываний. Дополнительно это единственное прерывание ещё и принимает сигнал опрашивает клавиатуру, играет звук и тд. Сейчас это бы назвал квант времени в РТОС.

Для STM с его ресурсами можно и просто импульсы в каждой пачке посчитать. Тактовой 168МГц на всё хватит.

Код:
// Обработка прерывания, частота 10кгц
ISR(TIMER0_OVF_vect) {      // Timer 0 overflow ISR

    TCNT0 = TCNT0_VAL;   // reload Timer 0 counter
//  ставим первым минимальный разброс задержки при передаче

     update_tx();      // передача ИК пули
         //       нет пули одно условие flFire = 0

     update_remote();   // update remote, приём ИК кодов
         //      много условий

     update_sound();   // воспроизведение звука
         //       нет звука одно условие snd_current = 0

    tmr_flags_upd();   // update timing flags
 // ЗДЕСЬ выставляются флаги для медленных задач,
// задачи работают в основном теле программы
// и не занимают время прерывания
// опрос клавиатуры, зарядка АКБ, контроль АКБ,
// логика работы игры и тд

    update_mic();   // микрофон
}


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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 01 апр 2014, 11:55 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Меня интересует, как именно "заткнуть" ШИМ - вырубить тактирование или как лучше и правильней?

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 01 апр 2014, 12:28 
Не в сети
Аксакал форума
Аватар пользователя

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: АРМейский лазертаг
СообщениеДобавлено: 01 апр 2014, 12:39 
Не в сети
Старожил
Аватар пользователя

Зарегистрирован: 26 фев 2011, 18:53
Сообщений: 813
Откуда: Пятигорск
Pingvin писал(а):
Меня интересует, как именно "заткнуть" ШИМ - вырубить тактирование или как лучше и правильней?

Не знаю как в АРМ, в ПИКах достигается подачей логического нуля на ногу вывода ШИМ.

_________________
Считаешь что я не прав? Выскажи и аргументируй свою точку зрения.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 332 ]  На страницу Пред.  1 ... 28, 29, 30, 31, 32, 33, 34  След.

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


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

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


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

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