Pull to refresh
29
0
Евгений Мамин @DZhon

User

Send message
Есть невероятно компактный и нетребовательный к рантайму nanopb: github.com/nanopb/nanopb

Успешно может работать даже без malloc/free!
Конечно же, интересно!
О, приятно, что в комментариях страницы о продукте есть технически грамотный представитель компании.
Кстати, пользоваться автогенератором можно хотя бы для того, чтобы создавать примерчики, не выуживая последовательности, регистры и сдвиги из даташита, прыгая от страницы к страницы по получасу.
Благодаря этим газетам я узнал про overclockers.ru и долгое время участвовал в ростовской тусовке этого сообщества, ых!
Хорошо, я сам просто сталкивался с такими задачами, если интересно, то могу ещё подкинуть интересный алгоритм:

A spline-based algorithm for continuous time-delay estimation using sampled data
Viola, F.; Dept. of Biomed. Eng., Virginia Univ., Charlottesville, VA; Walker, W.F.
Jan. 2005

In this paper, we present a new time-delay estimator that directly determines continuous time-delay estimates from sampled data. The technique forms a spline-based, piece-wise continuous representation of the reference signal then solves for the minimum of the sum squared error between the reference and the delayed signals to determine their relative time delay. Computer simulation results clearly show that the proposed algorithm significantly outperforms other algorithms in terms of jitter and bias over a broad range of conditions. We also describe a modified version of the algorithm that includes companding with only a minor increase in computational cost


Они публиковались ещё на эту тему, применяя для вычисления сплайнов предварительно расчитанные фильтры для повышения эффективности. Однако, общее описание проблемы и самого алгоритма, на мой взгляд, наиболее полно раскрыли в этой статье.
Синусоидальная осцилляция на ВКФ уходит, если работать с аналитическим сигналом. Применительно к указанной технике, достаточно выполнить преобразование Гильберта, что в частотной области выражается заполнением нулями правой (зеркальной) части спектра.
Подскажите, пожалуйста, чем это решение будет качественно отличаться от вычисления той же ВКФ, которое можно аналогично реализовать через частотную область (умножив принятую реализацию на сопряжение эталонной и вычислив обратное преобразование Фурье)? Положение (индекс) максимума будет определять задержку (в терминах дискретных отсчётов) относительно эталонного сигнала. Т.е. здесь можно вести речь о согласованной фильтрации, которая имеет обоснованную теорией оптимальность по соотношению сигнал/шум.
Спасибо за материал, интересно было посмотреть схему.

Не рассматривали вариант автономного питания от батарей и использования энергосберегающих режимов?
Сам пользуюсь ESP8266 с AT прошивкой версии 0.22 через контроллер MSP430. Есть вот занятная команда, которая переводит контроллер в спящий режим.

AT+GSLP | Переход в режим пониженного энергопотребления | базовая | AT+GSLP=<время в мс> | Пример: AT+GSLP=5000 (5сек)
Для того, чтобы модуль вышел из режима сна, необходимо соединить выводы XPD_DCDC и EXT_RSTB


К сожалению, конструктив ESP8266-01 не предусматривает вывод этих самых контактов, поэтому предпочёл ESP8266-12, в котором заметно больше доступных линий!

Отличия налицо
ESP-01:
image

ESP-12:
image
У Vert Dider прекрасные переводы и отличный выбор тем для них!
И еще вес рантайма — растовский подойдет для всякого эмбеддеда.
Тут скорее идеологическая разница — в том же boost.asio рекомендуют защищать не данные, а сами операции посредством strand. Думается, это обеспечивает определенную свободу реализации этих механизмов под капотом, ну и повышает уровень абстракции.
В статьях о Lock-free программировании весьма часто говорят о плохой масштабируемости пессимистичных схем блокировок. Конкретно в Расте я как раз и хочу узнать, чем является Mutex внутри и каковы стратегии по работе с ним.

Пример из мира С++: начиная с последних версий Qt4 мьютексы используют оптимистичные алгоритмы на атомарных переменных.
Спасибо за доклад!
Возможности языка выглядят впечатляюще относительно классических подходов к статическому анализу того же C++.

Действительно ли в разработке часто используется Mutex и как он реализован внутри? На первый взгляд кажется, что это весьма дорогое удовольствие — вешать явные локи на каждую переменную.
[ирония] Нужно больше менджеров, чтобы управлять менеджерами! [/ирония]

Вот какая-то совершенно однобокая статья, репрезентативность которой весьма сомнительна.
Горшочек, не вари.
Использую этот тулчейн:
launchpad.net/gcc-arm-embedded
+
специфично Stellaris github.com/utzig/lm4tools

В качестве IDE — KDevelop и всё это на ArchLinux x64.
Такое чувство, что выводы к этой статье писал человек, который воспитан этими самыми «Реалити-шоу».
По-моему, большинство из них представляют собой очередную реинкарнацию публичных казней или игр гладиаторов на арене. Где можно ловко и вальяжно демонстрировать свою добродетель взмахом пальца и громкими словами в микрофон, усыпать сладкими речами и подкупать зрителя понимающим взглядом. Недалёкий, нахальный и жалкий цинизм ­— вот что в действительности становится эмоциональным продуктом среди аудитории.

Надеюсь на свою ошибку.
Не подумал, что вставка/удаление именно в начале или конце является константной по времени. Ваша правда.
Позвольте, а почему не используется std::priority_queue?
В таком случае вставка в начало/конец определяется приоритетом и временная сложность на обе эти операции гарантирована быть O(logn) из-за свойств нижележащей кучи.
Появляется, конечно, небольшой оверхэд по памяти на хранение приоритета.
На сколько мне видится, аппаратная криптография (вроде AES, SHA-1 и SHA-256) позволит в дальнейшем получать бОльшую производительность на всяких одноплатниках, используемых в качестве NAS и узлов скрытосетей (тут как раз ещё одно царство ARM архитектуры для энтузиастов).

Information

Rating
Does not participate
Location
Ростовская обл., Россия
Date of birth
Registered
Activity