Pull to refresh
5
0.1

Программист микроконтроллеров, схемотехник.

Send message

Как пять нейросетей заменяют целую студию людей

Level of difficultyEasy
Reading time11 min
Views25K

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

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

Читать далее

Топ-11 бесплатных нейросетей для генерации изображений: лучшие AI генераторы 2025 года

Reading time8 min
Views437K

Признайтесь, сколько раз вы хотели быстро накидать картинку для поста или презентации, но вместо этого застревали в редакторе или бесконечных поисках подходящего изображения в Google? А ведь как было бы здорово, если бы картинка, которая у вас в голове, внезапно просто появилась! Время — деньги, вдохновение — на паузе, и тут на помощь приходит AI. Нейросети могут генерировать всё, что угодно, включая самые безумные идеи. Больше не нужно тратить часы на поиски, когда за пару кликов можно увидеть то, что секунду назад было в мыслях.  

Кстати, заметили обложку с динозавром? Давайте будем звать его Рекс. Рекс –сам плод работы нейросети. Сегодня он станет главной звездой наших экспериментов. Но что будем делать? Помните я говорил о безумных идеях? Так вот, чтобы понять все возможности генерации, давайте дадим AI сложное задание. Отправим Рекси куда-нибудь в космос, например на Луну, пусть наденет скафандр и готовит барбекю на фоне Земли. Интересно? Тогда пристегивайтесь, мы отправляемся в мир генерации изображений.

Читать далее

Библиография киберпанка

Level of difficultyEasy
Reading time17 min
Views16K

Если вас всё ещё преследует вопрос о том, что бы почитать в жанрах протокиберпанк, киберпанк и посткиберпанк, гляньте одним глазком в мой библиографический обзор. Почти уверен, там есть книги, которые вы ещё не прочли. Не верите? Проверьте!

Читать далее

Пишем 2D игру на JavaScript и Canvas. Часть 2. Графика

Level of difficultyEasy
Reading time18 min
Views9K

Привет!

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

Читать далее

Как я, в итоге, написал новую RTOS, протестированную и стабильную

Level of difficultyMedium
Reading time40 min
Views84K
Я работаю со встраиваемыми системами в течение нескольких лет: наша компания разрабатывает и производит бортовые компьютеры для автомобилей, зарядные устройства, и т.д.

image


Процессоры, используемые в наших продуктах — это, в основном, 16- и 32-битные микроконтроллеры Microchip, имеющие RAM от 8 до 32 кБ, и ROM от 128 до 512 кБ, без MMU. Иногда, для самых простых устройств, используются еще более скромные 8-битные чипы.

Очевидно, что у нас нет (разумных) шансов использовать ядро Linux. Так что нам нужна какая-нибудь RTOS (Real-Time Operating System). Находятся даже люди, которые не используют никаких ОС в микроконтроллерах, но я не считаю это хорошей практикой: если железо позволяет мне использовать ОС, я ее использую.

Несколько лет назад, когда мы переходили с 8-битников на более мощные 16-битные микроконтроллеры, мои коллеги, которые были гораздо более опытными, чем я, рекомендовали вытесняющюю RTOS TNKernel. Так что это — та ОС, которую я использовал в разных проектах в течение пары лет.

Не то, чтобы я был очень доволен ею: например, в ней нет таймеров. И она не позволяет потоку ждать сообщения сразу из нескольких очередей. И в ней нет программного контроля переполнения стека (это действительно напрягало). Но она работала, так что я продолжал ее использовать.
Читать дальше →

Первые шаги с GD32F. Подготовка среды

Level of difficultyEasy
Reading time5 min
Views18K

Доброго времени суток! Не так давно я опубликовал небольшую статью на основе своего онлайн-урока для студентов 2020 года, по работе с GD32F103TB. Статья была выложена в ВКонтакте и как оказалось, была многим полезна. По этой причин я решил выложить её здесь с дополнительными комментариями, а так же продолжить цикл статей по данным контроллерам.

Читать далее

USB на регистрах: STM32L1 / STM32F1

Reading time18 min
Views24K


Еще более низкий уровень (avr-vusb)
USB на регистрах: bulk endpoint на примере Mass Storage
USB на регистрах: interrupt endpoint на примере HID
USB на регистрах: isochronous endpoint на примере Audio device

С программным USB на примере AVR мы уже познакомились, пришла пора взяться за более тяжелые камни — STM32. Подопытными у нас будут классический STM32F103C8T6 а также представитель малопотребляющей серии STM32L151RCT6. Как и раньше, пользоваться покупными отладочными платами и HAL'ом не будем, отдав предпочтение велосипеду.
Читать дальше →

USB на регистрах: bulk endpoint на примере Mass Storage

Reading time13 min
Views11K


Еще более низкий уровень (avr-vusb)
USB на регистрах: STM32L1 / STM32F1
USB на регистрах: interrupt endpoint на примере HID
USB на регистрах: isochronous endpoint на примере Audio device

В прошлый раз мы познакомились с общими принципами организации USB и собрали простое устройство, иллюстрирующее работу конечной точки типа Control. Пришло время изучать следующий тип — Bulk. Конечные точки такого типа предназначены для обмена большими объемами информации, причем чувствительной к надежности, но не скорости обмена.

Классические примеры — запоминающие устройства и переходники вроде USB-COM. Но переходники требуют еще наличия конечной точки типа Interrupt, которую мы пока «не проходили», так что остановимся на эмуляции флешки. Точнее, двух флешек одновременно.
Читать дальше →

Учим железки разговаривать, или ESP32 DAC и немного таймера

Reading time6 min
Views27K
В ходе разработки одного очень интересного устройства (эх, лишь бы силенок хватило) я решил, что будет неплохо, если устройство это будет говорящим. Как нельзя кстати здесь пригодилось наличие в целевом микроконтроллере, ESP32 компании Espressif Systems, двухканального 8-битного ЦАПа.

В этом туториале (если его можно так назвать) я покажу, как можно быстро и довольно просто организовать проигрывание аудиофайла силами микроконтроллера ESP32.

Конечный автомат (он же машина состояний) на чистом С

Reading time5 min
Views133K
Почти каждый микроконтроллерщик сталкивался с громадными switch-case и мучительно их отлаживал.
И много кто, начиная писать реализацию какого-либо протокола, задумывался как написать её красиво, изящно, так чтобы через месяц было понятно что ты имел в виду, чтобы она не отжирала всю память и вообще какала бабочками.
И вот тут на помощь приходят машины состояний, они же конечные автоматы (те самые которые используются в регулярных выражениях).

Собственно через регулярные выражения я к ним и пришёл.
Читать дальше →

Подключаем LCD экран к макетной плате LPCXpresso55S69

Reading time12 min
Views5.5K
В рамках проекта All-Hardware довелось мне освоить работу с экраном на макетной плате LPC55S69-EVK фирмы NXP. Пикантность ситуации состоит в том, что штатно эта плата поставляется без экрана, так что в освоение работы также входил поиск экрана, который можно достать в наших краях, и его подключение.



Во второй части статьи, я расскажу о том, какие действия следует выполнить, чтобы повторить мой подвиг на практике. Но сначала я выскажу всё, что накипело за время работы. Правда, всё ниже сказанное является моим личным мнением и часто не совпадает с мнением руководства нашей компании. Но у инженера-программиста, лично прошедшего через это всё, вполне может быть собственное мнение… И вот оно.
Читать дальше →

Information

Rating
6,060-th
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity