Как стать автором
Обновить
4
0

Пользователь

Отправить сообщение

Разработка сложных процессорных систем на примере модуля SMARC. Заключение

Уровень сложностиСложный
Время на прочтение8 мин
Количество просмотров7.1K
Приветствую, Хабр!



Пришло время заключительной статьи из цикла на тему разработки сложных плат на процессорах. Я постарался наиболее подробно описать процесс, стараясь как можно доступнее структурировать материал.

По просьбе Indemsys немного расширю эту статью и кратко расскажу о трассировке различных интерфейсов. Спасибо за замечание, почитываю Ваши статьи.
Читать дальше →
Всего голосов 48: ↑48 и ↓0+68
Комментарии18

Константность в C++

Уровень сложностиСредний
Время на прочтение31 мин
Количество просмотров15K


Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Это седьмая статья из серии, список предыдущих статей приведен в конце в разделе 10. Серия ориентирована на программистов, имеющих определенный опыт работы на C++. Данная статья посвящена концепции константности в C++.


Переменные являются основой любого языка программирования. Если значение переменной нельзя изменить после инициализации, то такие переменные называются неизменяемыми (immutable) переменными или константными переменными или просто константами. Константные переменные в том или ином виде поддерживаются во всех языках программирования и играют в них важную роль. Такие переменные помогают компилятору оптимизировать код, улучшают читаемость и надежность кода, позволяют выявлять бОльшее количество ошибок на стадии компиляции. Константы помогают решать проблемы, связанные с многопоточным доступом к переменным. Использование константных переменных влияет на проектные решения в объектно-ориентированном программировании, а функциональное программирование изначально исходит из неизменяемости используемых переменных.


В C++ концепции константности уделяется значительное место. Для переменных используется два вида константности, имеются ссылки и указатели на константу, константные функции-члены, константные итераторы. Попробуем разобраться во всех этих понятиях.

Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии24

Эй конвертер, не шипи! Строптивые преобразователи платы для E-Ink экранов (Ч2)

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров4.7K

Приветствую вас, друзья!
Продолжаем разработку системы питания универсальной платы для E-Ink экранов. В этой части займёмся запуском и отладкой прототипа, «почувствуем вкус» ферритовых бусин, взорвём полсхемы. Поработаем с обратной связью: узнаем простой способ испытания устойчивости и измерения параметров, рычаги влияния при встроенной компенсации и разные хитрости. Проверим правильность расчётов программы Power Stage Designer с помощью экспериментов. Постабилизируем обратную связь и попробуем укротить уже эти конвертеры!
Читать дальше →
Всего голосов 47: ↑47 и ↓0+47
Комментарии12

STM32. Процесс компиляции и сборки прошивки

Уровень сложностиПростой
Время на прочтение30 мин
Количество просмотров27K
Многие из начинающих разработчиков софта для микроконтроллеров реализуют свои проекты исключительно в средствах разработки, которые предоставляются производителем. Многое скрыто от пользователя и очень хорошо скрыто, из-за чего некоторые воспринимают эти процессы сродни настоящей магии. Я, в свою очередь, как человек в пытливым умом и природной любознательностью, решил попробовать собрать проект без использования IDE и различного рода автоматизаций.

Так родилась идея для этой статьи: не используя ничего, кроме текстового редактора и командной строки, собрать проект мигания светодиодом на отладочной плате STM32F0-Discovery. Поскольку я не до конца понимал, как происходит процесс компиляции и сборки проекта, мне пришлось восполнять пробелы в знаниях. Разобравшись с этим вопросом, я подумал — а почему бы не рассказать другим об этом?

Всем кому интересно — добро пожаловать под кат! 🙂

Читать дальше →
Всего голосов 107: ↑106 и ↓1+122
Комментарии67

Высокоэффективный 600 Вт усилитель НЧ на нитрид-галлиевых силовых транзисторах

Время на прочтение7 мин
Количество просмотров25K

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

Читать далее
Всего голосов 30: ↑29 и ↓1+42
Комментарии42

Signal Integrity of DDR4

Уровень сложностиСложный
Время на прочтение15 мин
Количество просмотров18K

Доброго времени суток! Наверное, вы все знакомы с компьютерной оперативной памятью DDRx (где x - поколение). Я бы хотел вам рассказать о ней с точки зрения SI (Signal Integrity - целостность сигналов) и принципов трассировки этого интерфейса.

Читая документацию на различные микросхемы CPU, FPGAs, DSPs, ASICs можно увидеть много различных рекомендаций, так называемых «Rules of Thumb», по трассировке DDR3/4 SDRAM (Double Data Rate Synchronous Dynamic Random Access Memory — синхронная динамическая память с произвольным доступом и удвоенной скоростью передачи данных). Но в ней редко можно встретить информацию почему именно так это необходимо делать. В этой статье я попытаюсь вам объяснить различные способы улучшения SI с точки зрения схемотехники и топологии.

Читать далее
Всего голосов 125: ↑125 и ↓0+125
Комментарии11

SamsPcbGuide, часть 15: Феранек, заблуждение Богатина и новый ЭМС-гуру

Уровень сложностиСложный
Время на прочтение4 мин
Количество просмотров4.8K

Привет, Хабр! Давно не было повода написать, но вот информационная пружина сжалась. Сейчас в Яндексе занимаюсь разработкой печатных плат, входящих в состав робота. Возникает много нюансов, выходящих за пределы печатной платы: кабельные соединения и разъёмы, экранирование, помехи на уровне системы. По мере накопления и структурирования опыта добавлю новый раздел в руководство, а в этой статье делюсь координатами золотых приисков — информация для тех, кто любит копать и разбираться (моё почтением вам).

Читать далее
Всего голосов 13: ↑8 и ↓5+7
Комментарии28

STM32CubeMonitor стоит попробовать

Время на прочтение2 мин
Количество просмотров15K

Введение


STM32CubeMonitor — утилита для удобного отображения данных с контроллеров семейства STM32. Причем не требуется никакого дополнительного оборудования, только плата с контроллером и программатор (я пробовал и китайский свисток и оригинальный st-link\v2). Слово «Cube» в название не означает привязку к CubeMx\HAL, от вас требуется всего лишь прошивка в формате "*.elf", что не может не радовать. Данная утилита позволяет чрезвычайно быстро и просто выводить данные с контроллера в реальном времени в виде графика, а так же осуществлять постобработку(присутствуют наборы основных математических и тригонометрических функций).
Читать дальше →
Всего голосов 15: ↑13 и ↓2+19
Комментарии13

Интеграция в проект LVGL графической библиотеки для микроконтроллеров

Время на прочтение4 мин
Количество просмотров34K
LVGL — Light and Versatile Graphics Library также известная как LittleVGL.


Библиотека поддерживает большое количество микроконтроллеров, таких как STM32, ESP32 и другие. Мне пока удалось запустить полноценную демо программу на ESP32 и STM32f429 Discovery. Библиотека открытая, поддерживает большое количество графических элементов с Dark and Light темами. Распространяется под MIT license. Можно свободно использовать даже в коммерческих продуктах. Можно посмотреть интерактивное Online Demo без установки на устройство
Всего голосов 39: ↑39 и ↓0+39
Комментарии56

Очередная книга про разработку операционных систем

Время на прочтение4 мин
Количество просмотров14K
image

Приветствую!

В последние несколько лет мне довелось в той или иной степени изучать исходники примерно трех десятков операционных систем. Все из них я уже наверно даже и не вспомню. В основном это были маленькие библиотеки для микроконтроллеров, но «большие» ОС тоже приходилось просматривать с разной степенью погружения.

Всё это время я также наблюдал на разных ресурсах посты о «разработке ОС», которые в основном сводились к выводу «hello world» в QEMU, и сетовал на то, что не нужно путать ОС и «программу, которая может работать на голом железе». ОС это совсем не про работу на железе, это, в первую очередь, про синхронизацию и все такое прочее.
Читать дальше →
Всего голосов 30: ↑29 и ↓1+39
Комментарии35

Нехватка кадров, о чём, где, для кого, а есть ли на самом деле?

Время на прочтение6 мин
Количество просмотров18K
Россия, страна очень интересная, сейчас будет не много лирики и оффтопа но они понадобятся позже для некоторого понимания ситуации.
Читать дальше →
Всего голосов 57: ↑49 и ↓8+62
Комментарии307

2. Математическое описание систем автоматического управления

Время на прочтение10 мин
Количество просмотров38K

Публикую первую часть второй главы лекций по теории автоматического управления.
В данной статье рассматриваются:


2.1. Получение уравнений динамики системы. Статическая характеристика. Уравнение динамики САУ (САР) в отклонениях
2.2. Линеаризация уравнений динамики САУ (САР)
2.3. Классический способ решения уравнений динамики


Лекции по курсу «Управление Техническими Системами», читает Козлов Олег Степанович на кафедре «Ядерные реакторы и энергетические установки», факультета «Энергомашиностроения» МГТУ им. Н.Э. Баумана. За что ему огромная благодарность.


Данные лекции только готовятся к публикации в виде книги, а поскольку здесь есть специалисты по ТАУ, студенты и просто интересующиеся предметом, то любая критика приветствуется.


Первая часть: «Введение в теорию автоматического управления. Основные понятия теории управления техническим системами»



Читать дальше →
Всего голосов 6: ↑3 и ↓3+3
Комментарии9

Собираем простейшую ZigBee-сеть, программируем под Mbed, общаемся через MQTT

Время на прочтение14 мин
Количество просмотров30K
Эта статья — большой учебный практикум начального уровня по использованию XBee-модуля в связке с микроконтроллером, имеющим на борту Mbed OS. ZigBee — давно и прочно укоренившийся стандарт в системах «Умного дома» (например, он используется наряду с Z-Wave в хабе Samsung SmartThings, см. нашу статью), он отличается низким энергопотреблением, простотой использования, и, что самое интересное, возможностью создания самоконфигурируемых mesh-сетей. Вы увидите из практикума, что это действительно так — мы посмотрим на структуру такой сети через удобную утилиту-визуализатор.

Предполагается, что вы уже знаете, что такое ZigBee и для чего он нужен. Теперь вам хочется подключить свой первый XBee-модуль и решить с его помощью свои задачи, не вдаваясь в программирование самого модуля, а лишь используя его как интерфейс связи. В конце будем все данные пересылать через самодельный MQTT-шлюз куда угодно, хоть на локальный сервер, хоть в Интернет. Мы решили показать всё на примере Mbed как самой простой и доступной новичкам RTOS. Вы убедитесь, что всё работает «из коробки», и можете сразу начать делать свой проект, даже если до этого вы имели дело только с Ардуино.


Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии10

Лазерный резак своими руками. Часть номер ноль. Силовая

Время на прочтение5 мин
Количество просмотров99K
image
В свое время я очень сильно хотел заиметь ЧПУ лазер, не то чтобы он был очень нужен для работы или хобби, но тем не менее вещь полезная в подсобной мастерской, да и круто же!
Читать дальше →
Всего голосов 75: ↑73 и ↓2+71
Комментарии156

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность