Архив за 11 октября 2020 - 2

Всем привет! Относительно недавно, закончив ВУЗ, я попал в небольшую компанию, которая занималась разработкой электроники. Одна из первых задач с которой я столкнулся — необходимость в реализации Modbus RTU Slave протокола с использованием STM32. С грехом пополам я её тогда написал, однако этот протокол начал встречаться мне из проекта в проект и я решил написать зарефакторить и оптимизировать либу с использованием FreeRTOS.
Читать полностью »

Компания Apple несколько пересмотрела свою логистику, благодаря чему теперь некоторые пользователи иногда будут получать свои заказы намного быстрее. 

Как известно, новейшие процессоры AMD Ryzen 5000 будут работать с чипсетами 500-й серии, а позже даже с некоторыми платами, основанными на чипсетах 400-й серии. 

Сегодня в Сети появились слухи про Samsung Galaxy S21, в числе которых можно найти упоминание поддержки 65-ваттной зарядки. Если верить инсайдеру Ice Universe, чей послужной список вполне заслуживает уважения, столь быстрой зарядки у нового корейского флагмана не будет. 

Читать полностью »

Статические методы Atomics.wait() и Atomics.notify() представляют собой низкоуровневые примитивы синхронизации, которые можно применять для реализации мьютексов и других подобных механизмов. Но, так как метод Atomics.wait() является блокирующим, его нельзя вызывать в главном потоке (если попытаться это сделать — будет выдана ошибка TypeError).

Движок V8, начиная с версии 8.7, поддерживает неблокирующий вариант Atomics.wait(), называемый Atomics.waitAsync(). Этим новым методом можно пользоваться в главном потоке.

Использование Atomics.wait(), Atomics.notify() и Atomics.waitAsync() - 1

Сегодня мы расскажем о том, как применить эти низкоуровневые API для создания мьютекса, который может работать и в синхронном режиме (в потоках воркеров) и асинхронно (в потоках воркеров или в главном потоке).
Читать полностью »

Article

Вы сталкивались когда-нибудь с построением (непрерывного) пути обхода кривой на плоскости, заданной отрезками и кривыми Безье?

Вроде бы не сильно сложная задача: состыковать отрезки кривых в один путь и обойти его "не отрывая пера". Замкнутая кривая обходится в одном направлении, ответвления — в прямом и обратном, начало и конец в одном узле.

Всё было хорошо, пока из-под рук дизайнеров не стали вылезать монструозные пути, где отдельные кривые могли пересекаться или не точно состыковываться. Объяснение было предельно простым — визуально они все лежат как надо, а для станка, который этот путь будет обходить, такие отклонения незаметны.

Вооружившись знанием о величине максимально допустимого отклонения, я приступил к исследованию, результатами которого хочу поделиться.

Читать полностью »

Компания Microsoft работает над новой функцией в своей флагманском приложении клавиатуры SwiftKey, которая может изменить способ копирования и вставки контента в Windows 10. 

Умные телевизоры стали массовыми, но тяга к функциональному минимализму только усилилась. Мало кто хочет разбираться со сложными интерфейсами, а многие и вовсе предпочитают модульный подход: когда ТВ — это просто экран и не более того. Мы проанализировали более 600 комментариев, которые оставили по этой теме резиденты Hacker News, и выделили ключевые моменты этой дискуссии.

Фотография: Aleks Dorohovich. Источник: Unsplash.com
Фотография: Aleks Dorohovich. Источник: Unsplash.com

Читать полностью »

После официальной разборки PlayStation 5 появились данные о ее температурном режиме во время работы. Как оказалось, именно консоль Sony оказалась самой горячей в тройке игровых приставок нового поколения.

Читать полностью »

Отдавая дань продолжительному карантину этого года, в который надо было чем-то занимать детей ежедневно, хочу рассказать об опыте совмещения конструкторов Fischertechnik и мира открытых одноплатных компьютеров (с великим множеством датчиков и исполнительных устройств к ним) для своих детей.
Конструкторы Fischertechnik плюс одноплатный компьютер BBC Micro:Bit, устройства «для Arduino» и детали 3D принтеров - 1
Автоматический шлагбаум: пересечение светового барьера активирует сервопривод. Генерируемая контроллером Micro:Bit кодовая последовательность для поворота сервопривода в позицию 90° и параметры сигнала видны на осциллографе DSO138. Для внимательных- ИК-приемник отключен, поскольку сын успел «сжечь» один из 3-х доступных портов контроллера, а платы расширения для доступа к остальным портам еще не приехали.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js