www.open-tager.ru

открытый лазертаг форум
Текущее время: 05 май 2024, 19:03

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


Реклама

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


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



Начать новую тему Ответить на тему  [ Сообщений: 169 ]  На страницу Пред.  1 ... 8, 9, 10, 11, 12, 13, 14 ... 17  След.
Автор Сообщение
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 27 янв 2017, 06:16 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
С утречка пришла мысль - попробую просто отключать режим полудуплекс на время передачи!
То есть "разъединить" ножка Rx и Tx

P.S. Не сработало от слова СОВСЕМ. Ну и хрен с ним, пусть ловет, просто буду приемный буфер очищать после передачи данных.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 27 янв 2017, 12:06 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 27 ноя 2011, 00:22
Сообщений: 1569
Откуда: Україна
Просто отбрасывайте пакеты, которые не предназначены данной плате по адресу.

_________________
Нет предела совершенству, но ресурсы заканчиваются быстро.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 27 янв 2017, 16:03 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pingvin писал(а):
С утречка пришла мысль - попробую просто отключать режим полудуплекс на время передачи!
То есть "разъединить" ножка Rx и Tx

P.S. Не сработало от слова


Для переключения прием/передача в полудуплексе нужно ещё что-то делать, кроме непосредственно включения передачи или приема. Через HAL это делается функциями
Код:
HAL_HalfDuplex_EnableReceiver(&huart1);

и
Код:
HAL_HalfDuplex_EnableTransmitter(&huart1);

Что у них внутри - не смотрел. Моя реализация в этом файле: https://github.com/DAlexis/lasertag-sma ... p-driver.c . Это драйвер библиотеки на стороне сенсора.
Ну и плюс сгенерированный кубом инициализатор uart: https://github.com/DAlexis/lasertag-sma ... rc/usart.c , но там ничего необычного кроме HAL_HalfDuplex_Init вместо HAL_UART_Init

<а тут блок ненавязчивой рекламы STM HAL, текст можете придумать сами :) >


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 27 янв 2017, 16:35 
Не в сети
Аксакал форума
Аватар пользователя

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

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 27 янв 2017, 19:25 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pingvin писал(а):
Да я мечусь между SPL, HAL и регистрами.
HAL тоже не идеал, нет гибкости.
У регистров тоже свои плюсы есть.

Мне кажется, проблемы на самом деле нет. Покажите пример, где не хватает возможностей или гибкости HAL, и я уверен на 95%, что смогу предложить корректное решение в рамках HAL.

Делать обычные операции через регистры напрямую имеет смысл только если нужно выжать абсолютный максимум производительности в каком-то отдельном месте. Но почти всегда это означает, что лучше взять более мощный МК: ведь может потребоваться ещё чуть-чуть скорости... Код с регистрами труднее читать, и как следствие поддерживать и развивать. Если рутинные вещи вроде разбора флагов прерываний или настройки какого-нибудь DMA делать каждый раз вручную, легко ошибиться. В то время как в HAL код очень качественный и безопасный, везде есть assert-ы и т.п.

SPL можно воспринимать, как неудачную версию HAL. Много разнородных функций, нет единообразия. Приходится держать в голове особенности устройства конкретного МК. Если получилось настроить интерфейс XXX1 в каком-то режиме, то настройка интерфейса XXX2 может требовать каких-то неожиданных новых манипуляций (под XXX может быть что угодно: таймеры, UART, I2C...)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 27 янв 2017, 20:40 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Alexies писал(а):
Мне кажется, проблемы на самом деле нет. Покажите пример, где не хватает возможностей или гибкости HAL, и я уверен на 95%, что смогу предложить корректное решение в рамках HAL.


Давайте настроим PWM INPUT на таймере 3.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 27 янв 2017, 21:30 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pingvin писал(а):
Давайте настроим PWM INPUT на таймере 3.

Коррекнтный код должен сгенерироваться при таких настройках в кубе:
Вложение:
0.png
0.png [ 12.63 KiB | Просмотров: 8990 ]

Вложение:
1.png
1.png [ 180.69 KiB | Просмотров: 8990 ]


Может забыл какую мелочь. Полярность надо поменять, если работать с выходом TSOP-а.

Дальше только написать коллбэк по нужному событию и в путь.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 28 янв 2017, 13:16 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Не, не пойдет!
Первый и второй каналы должны быть настроены на захват, но разных фронтов.
Второй канал должен брать сигнал с той же ножки, что и первый.
Кроме того, режим SLAVE должен быть настроен так, чтобы сбрасывал счетчик таймера в 0, когда приходит фронт, по которому работает второй канал.
Этот режим в даташите описан подробно.

Ну и кроме того, чтобы не было переполнения, третий канал настраиваем на сравнение.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 28 янв 2017, 23:35 
Не в сети
Старожил

Зарегистрирован: 18 мар 2015, 13:19
Сообщений: 574
Откуда: Нижний Новгород
Pingvin писал(а):
Не, не пойдет!
Первый и второй каналы должны быть настроены на захват, но разных фронтов.
Второй канал должен брать сигнал с той же ножки, что и первый.

Согласен, немного поторопился. Забыл настроить первый канал
Pingvin писал(а):
Кроме того, режим SLAVE должен быть настроен так, чтобы сбрасывал счетчик таймера в 0, когда приходит фронт, по которому работает второй канал.
Этот режим в даташите описан подробно.

Да, поле Master/Slave mode забыл поправить на втором скриншоте
Pingvin писал(а):
Ну и кроме того, чтобы не было переполнения, третий канал настраиваем на сравнение.

Это не обязательно. У таймера и так есть период и обработчик прерывания переполнения. Код будет проще, если обойтись этим.

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


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Умный датчик. Smart sensor.
СообщениеДобавлено: 29 янв 2017, 19:35 
Не в сети
Аксакал форума
Аватар пользователя

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

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


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 169 ]  На страницу Пред.  1 ... 8, 9, 10, 11, 12, 13, 14 ... 17  След.

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


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

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


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

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