www.open-tager.ru https://open-tager.ru/forum/ |
|
Общие вопросы по STM32 https://open-tager.ru/forum/viewtopic.php?f=5&t=4762 |
Страница 1 из 1 |
Автор: | onegray [ 26 сен 2015, 16:10 ] |
Заголовок сообщения: | Общие вопросы по STM32 |
Как лучше генерировать IR-сигнал? Возможные варианты: 1) Используя один таймер, и в обработчике прерывания вручную включать/выключать ножку контроллера. 2) Использовать два таймера. Один задает несущую частоту 56kHz, второй - для передачи самих данных. Модулировать результирующий сигнал можно транзистором с двух выходов, либо использовать встроенный IRTIM модулятор (только для серий F0/F3). 3) Один таймер для данных, в обработчике которого будем включать/выключать ШИМ несущей (второй таймер). Какие здесь плюсы минусы? Или может есть еще варианты? |
Автор: | Pingvin [ 26 сен 2015, 17:41 ] |
Заголовок сообщения: | Re: Общие вопросы по STM32 |
Здра-а-а-а-а-а-вствуйте! Как минимум в двух проектах (ARMada и Caustic) - все проблемы приёма и передачи пакетов решены, да ещё прием по нескольким независимым зонам. Caustic - проект с закрытыми исходниками. C ARMada - ещё не решено, думаю - стоит ли открывать. Если Вы не связаны с коммерческими производителями, можете присоединиться и стать разработчиком ARMada. Получите исходники на условиях нераспространения (пока, а там посмотрим) и сохранения бренда ARMada. Но я должен быть в Вас уверен, что это не праздный интерес и что наработки не всплывут потом под брендом какого-нибудь коммерческого производителя. Ну и хотелось бы посмотреть на ваши реализованные проекты. Или можете изобретать свой "велосипед" (ИМХО, ничего плохого в этом нет, каждый должен это пройти). Через годик можете получить весьма неплохой результат. Я использую в ARMada два таймера (один аппаратно генерит несущую, второй - генерит нужные периоды и включат/выключает в нужный момент первый, никаких "модулирующих" транзисторов для этого не надо). В Аскете используется вариант №1 (но это не от хорошей жизни, а от дефицита таймеров на Атмега32) Цитата: либо использовать встроенный IRTIM модулятор (только для серий F0/F3). А тут можно подробней? Похоже - я что то пропустил... |
Автор: | onegray [ 26 сен 2015, 18:12 ] |
Заголовок сообщения: | Re: Общие вопросы по STM32 |
Мне казалось, что ничего особо сложно я не спрашиваю... А сам я только начал "ковырять" STM. Но обязательно разберусь )). Присоединяться к закрытой разработке - не интересно. Никаких доп. условий для себя тоже принимать не хочу - обычно я в открытый доступ выкладываю все что делаю на некоммерческой основе - https://github.com/onegray Так что, не говорите ничего, что считаете своей личной тайной Касательно своего вопроса, то вот пока нашел некоторую осмысленную аргументацию, что несущую лучше задавать через ШИМ http://electronics.stackexchange.com/a/101332 |
Автор: | onegray [ 26 сен 2015, 18:18 ] |
Заголовок сообщения: | Re: Общие вопросы по STM32 |
Pingvin писал(а): Цитата: либо использовать встроенный IRTIM модулятор (только для серий F0/F3). А тут можно подробней? Похоже - я что то пропустил... Можно и подробнее, и с исходниками: http://www.st.com/web/en/resource/techn ... 053084.pdf http://www.han-ese.nl/~ewout/ESE/Softwa ... isting.php |
Автор: | Pingvin [ 26 сен 2015, 18:25 ] |
Заголовок сообщения: | Re: Общие вопросы по STM32 |
А я и не сказал, что ARMada закрытый проект. Железо - открыто! По исходникам прошивки - ещё думаю... Вопрос не в том - открывать или нет, конечно открывать. Вопрос - для всех открывать или только для разрабов ЭТОГО проекта? Просто жизненный опыт показывает (сужу по полностью открытому Аскету) - мало кого интересуют исходники! Буквально несколько человек попытались что то внести своё. Так этим нескольким я и сейчас готов дать исходники, но бренд должен остаться. Мне то особого интереса делиться нет, вот в чем дело. Потому имею наглость выдвигать некоторые условия. Мне не жалко для независимых разработчиков, но дарить коммерсам удачные решения я не хочу. Потратите год на разработку, получите результат - может меня поймёте. А все уже обсосано и расписано тут на форуме - ищите. viewtopic.php?f=5&t=3776 |
Автор: | Pingvin [ 26 сен 2015, 18:44 ] |
Заголовок сообщения: | Re: Общие вопросы по STM32 |
onegray писал(а): Pingvin писал(а): Цитата: либо использовать встроенный IRTIM модулятор (только для серий F0/F3). А тут можно подробней? Похоже - я что то пропустил... Можно и подробнее, и с исходниками: http://www.st.com/web/en/resource/techn ... 053084.pdf http://www.han-ese.nl/~ewout/ESE/Softwa ... isting.php Спасибо, интересно. SIRC протокол похож на Милес. Но нам про 40 КГц несущей написано, надо поизучать детальней. Как то я действительно упустил эту возможность при разработке ARMada P.S. О, Боже - так это не аппаратная функция специального таймера, а просто реализация на двух обычных таймерах? Так у меня так и сделано, как то и сам допёр. P.P.S. Да нет - есть альтернативная функция для ножки IRTIM. А для чего она? Все ведь и так работает. Пошел гуглить. |
Автор: | Pingvin [ 26 сен 2015, 19:51 ] |
Заголовок сообщения: | Re: Общие вопросы по STM32 |
onegray писал(а): А сам я только начал "ковырять" STM. Но обязательно разберусь )). Разберётесь! Вот мой "путь самурая" viewtopic.php?f=5&t=2171 этот путь бесконечен. Но я как то конкретней себе цели ставил год назад Pingvin писал(а): Начну новую ветку, так как от общих вопросов "ARMейского" лазертага переходим к конкретной реализации. Уже реализовано: - Шаблон для проекта (SD карта + файловая система FAT + FreeRTOS); - Реализовано воспроизведение wav-файлов с SD карты; - Фактически реализована передача пакета. Чего хочу ещё: - Обновление прошивки с SD карты; - USB для настройки и замены файлов. По поводу звуков. Будут различные звуковые схемы. Как лучше это реализовать? Сделать стандартизированные имена файлов? И разложить звуки в различные папки с именами схем? Сегодня с удовлетворением констатирую - все поставленные цели достигнуты, и даже более. Осталось воплотить это в серийном девайсе - на следующей недели должны прислать печатки новой версии платы (с USB). А Вы что хотите в итоге получить? |
Автор: | Alexies [ 26 сен 2015, 20:18 ] |
Заголовок сообщения: | Re: Общие вопросы по STM32 |
onegray, рад приветствовать на нашем тернистом пути! Пробуйте, экспериментируйте. Я в Caustic сделал точно так же, как Pingvin. Один таймер генерит аппаратно ШИМ с 50% заполнением, другой в прерывании его включает/выключает для генерации огибающей. Другого выгодного решения тут и не придумать. Статус моих исходников тоже до конца не определен Может забью на коммерческие перспективы, и опубликую всё. А может и нет) Мои железо и прошивки тут: https://github.com/caustic-lt-system/caustic-public По мере возможности отвечу на любые вопросы. Ибо сам год назад только начинал всё это. |
Автор: | onegray [ 27 сен 2015, 03:22 ] |
Заголовок сообщения: | Re: Общие вопросы по STM32 |
Добавлю еще один вариант: 4) Используя расширенный таймер TIM1. Несущая частота может задаваться как ШИМ с предопределенным количеством повторений (в регистре RCR), а паузы между битами данных через режим одиночного импульса (в регистре CCR1). |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |