
Обучающие проекты по созданию простого цифрового радиоприемника на базе микроконтроллера STM32G431KB.
Пользователь
Обучающие проекты по созданию простого цифрового радиоприемника на базе микроконтроллера STM32G431KB.
Эпидемическая изоляция целых стран производит тектонические сдвиги в экономике. В нашей стране она сводит с ума государство и отечественную промышленность в отношении телекоммуникационного оборудования. Как повелось в нашей стране, сакральность процесса подчеркивается формированием аббревиатур. ТОРП - телекоммуникационное оборудование российского производства - созвучно со словом "топор" в грудь мирового империализма.
Но - кому война, а кому мать родна. На нашей инженерной улице праздник! Когда еще российскому радиоинженеру дадут такое поразрабатывать? А вдруг завтра передумают? Беремся и делаем скорее!
Но не так все оказалось просто. Попытка определить инженерные требования к радио-тракту привела к эпическому столкновению мира инженерного с миром сотовых спецификаций.
Ряд наших устройств имеет встроенный порт RS-485 для прямого подключения электросчётчиков, имеющих данный интерфейс. Для облегчения тестирования устройств мы разработали небольшую программу-эмулятор. Именно о ней дальше и пойдёт речь.
Разработка или выбор управляющего контроллера для встраиваемой системы на ПЛИС –актуальная и не всегда тривиальная задача. Часто выбор падает в пользу широкораспространенных IP-ядер, обладающих развитой программно-аппаратной структурой – поддержка высокопроизводительных шин, периферийный устройств, прикладное программное обеспечение и, в ряде случаев, операционных систем (в основном Linux, Free-RTOS). Одними из причин данного выбора являются желание обеспечить достаточную производительность и иметь под рукой готовый инструментарий для разработки программного обеспечения.
В том случае, если применяемая в проекте ПЛИС не содержит аппаратных процессорных ядер, реализация полноценного процессорного ядра может быть избыточной, или вести к усложнению программного его обеспечения, а следовательно приведет к увеличению затрат на его разработку. Кроме того, универсальное софт-ядро будет, так или иначе, занимать дефицитные ресурсы программируемой логики. Специализированный софт-процессор будет более оптимальным решением в свете экономии ресурсов логики – за счет адаптированной системы команд, небольшого количества регистров, разрядности данных (вплоть до некратной 8битам). Согласование с периферийными устройствами – проблема в основном согласования шин и протоколов. Заменой сложной системы обработки прерываний может служить многопоточная архитектура процессора.
Стековые софт-процессоры и контекст потока
Обычно многопоточные процессоры имеют одно АЛУ и несколько наборов регистров (иногда называемых «теневыми» регистрами) для хранения контекста потока, следовательно, чем больше требуется потоков, тем будут больше накладные расходы логики и памяти. Среди разнообразия архитектур софт-процессорных ядер следует выделить стековую архитектуру. Такие процессоры часто называют еще Форт-процессорами, так как чаще всего их ассемблер естественным образом поддерживает подмножество команд языка Форт.
При проектировании устройства на микроконтроллере бывает встает вопрос об обновлении прошивки прибора. Причем сам процесс обновления прошивки должен быть простым и доступным для обыкновенного пользователя. И конкретно для микроконтроллера STM32F103C8 возможна загрузка прошивки по UART. То есть к схеме необходимо добавлять микросхему конвертера USB-UART. Либо воспользоваться аппаратными возможностями USB микроконтроллера, что я и сделал. Меня заинтересовал вопрос о возможности обновления прошивки по USB. На некоторых МК даже есть аппаратный USB-загрузчик, но только не на STM32F103C8, поэтому пришлось все программно реализовывать. По программной части для STM32 существует USB Library от STMicroelectronics с реализованными классами USB и примерами. В частности заинтересовал класс DFU т.е. загрузка прошивки по USB. В данном классе уже реализован свой набор команд для взаимодействия МК и приложения на ПК "STM32CubeProgrammer". Но мне хотелось что-то своё, кастомное и неограниченное данным набором команд. И пришла мысль "А почему бы не реализовать всё это в классе CDC?". Тут и размер загрузчика примерно таким же оказался, но главное можно реализовать свой набор команд, работать на ПК с последовательным портом и соответственно понятнее, как написать приложение для ПК. У меня есть небольшой опыт написания приложений с использованием библиотеки QT на С++, поэтому с ее помощью была создана программа для USB загрузчика.
Добрый день, меня зовут Денис Генералов, я являюсь младшим системным администратором Cloud4Y. Надеюсь, что данный пост поможет коллегам, которые оказались в такой же ситуации, что и я: в купленном для компании ноутбуке система стоит в MBR (Legacy BIOS) и на нём имеется пароль, а поставить необходимо в GPT (UEFI).
Как понять, что выборка данных принадлежит определенному распределению? Есть 2 метода: аналитический тест Колмогорова-Смирнова (тест Шапиро-Уилка для нормального) и графический метод при помощи графика квантиль-квантиль плот.
Чем так замечателен второй вариант? Он позволяет делать выводы, не основываясь на таких спорных показателях как.
Графический метод является мощнейшим инструментом анализа, но как сказано в англоязычной статье википедии про Q-Q Plots, требует серьезных навыков для интерпретации. В данной статье я представляю дорожную карту пути к пониманию квантильных графиков.
Здесь рассматривается технология отладки платы контроллера резервного питания и его программного обеспечения . Используются: адаптер SWD, осциллограф, VT100 терминал через UART, движок FreeMaster, экспорт и анализ в MATLAB. Дан пример реализации регулируемого источника напряжения. Заключительный тюнинг платы.
Многоканальный имитатор GPS - зачем он нужен? Все знают, как используются одноканальные: для тестирования навигационных приемников при разработке и производстве, для обмана систем навигации в мирное и военное время. А зачем нужны многоканальные?
... и точно. Точнее, с заданной точностью, простите за каламбур.
Под катом я расскажу, как сделать это с использованием школьного курса алгебры и целочисленной арифметики, при чём здесь полиномы Чебышёва I-го рода, и дам ссылки на примеры реализаций для ПК и Cortex-M3.
Исходник КДПВ: Lena London, CC BY-SA 4.0
Количество блоков управления в современных автомобилях растет с каждым годом. Обычно каждый из них отвечает за отдельный набор датчиков и исполнительных механизмов. Но есть блок, появление которого частично связано... с растущим количеством блоков. Метаблок, если хотите.
mkinitcpio
код, который позволяет ему создавать файлы UEFI с использованием заглушки systemd
.И снова здравствуйте!
Первая часть. Обзор Рынка
Вторая часть. Внешние и внутренние противоречия
Третья часть. Основные действующие лица
Четвертая часть. Что есть базовая станция 4G/5G?
В прошлый раз мы рассмотрели внешние и внутренние противоречия, которые, как мне кажется, и породили саму тематику создания отечественного оборудования для сетей 5G.
На этот раз предлагаю присмотреться к тому какие основные экономические субъекты в нашей отрасли связи имеют прямое или косвенное отношение к теме и постараемся выявить характерные сущностные черты и интересы, способные повлиять на дальнейшее развитие событий.
Как обычно - буду рад конструктивной критике, обратной связи и дискуссии для дальнейшего углубления и улучшения материала.
Немалое количество простых кнопочных телефонов, присутствующих в российских магазинах, содержат нежелательные недокументированные функции. Они могут совершать автоматическую отправку СМС-сообщений или выходить в интернет для передачи факта покупки и использования телефона (передавая IMEI телефона и IMSI SIM-карт). Встречаются модели со встроенным трояном, отправляющим платные СМС-сообщения на короткие номера, текст которого загружается с сервера, также бывают устройства с настоящим бэкдором, пересылающим входящие СМС-сообщения на сервер злоумышленников.
Статья описывает детали вредоносных функций и способы их обнаружения.
Уже было описание уязвимости на сайте Умного голосования. Владислав Здольников на своём канале в Телеграм рассказывает очевидные вещи про прозрачность банковских платежей. И вот вчера Дмитрий Зворыкин заспорил с Леонидом Волковым, а Волков начал хамить в ответ будто Дима троль какой-то, а не ИТ-профессионал. Диму знаю 20+ лет ещё со студенческих времён в МИЭМ, потом мы вместе работали в избирательной кампании Навального 2013 года, и мне лично очень неприятно подобное отношение политиков к гражданам. Даже если бы Дима был не прав, то Волков как публичное лицо не имеет права так неуважительно общаться и позорить в том числе и Навального. И в результате, возможно увидев, что народ лайкает Диму, а не его, Волков просто забанил Диму. Типа проблемы нет. Но она есть.
Дима прав по сути.
Этот вопрос уже был рассмотрен на хабре. Дима лишь убедился что проблема осталась на том же самом месте.
На сайте Умного голосования инициализируется Яндекс.Метрика.