Как стать автором
Обновить
109
20.8

Embedded SW/Firmware Engineer

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

«Венера-7»: первый аппарат, который нырнул в инопланетный ад и подал оттуда весточку

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

Привет, Хабр! С вами Саша Баулин — фанат космоса и технологий. В последнюю неделю лета предлагаю вспомнить, что произошло в августе 54 года назад: если в прошлый раз были США на Марсе, то теперь время СССР на Венере.

17 августа 1970 года в 8:38 мск с космодрома Байконур состоялся пуск ракеты-носителя «Молния-М» с автоматической межпланетной станцией (АМС) «Венера-7». АМС стала первым посланцем Земли, который смог совершить мягкую посадку на поверхность Венеры и передать ценные данные. Что миссия дала науке и как помогла следующим полетам к соседней планете, рассказываю под катом.

Читать далее
Всего голосов 38: ↑36 и ↓2+48
Комментарии22

Cyrix: процессоры, оставившие след в истории технологий

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

Большинство из вас, безусловно, знакомы с Intel, AMD, Qualcomm, IBM, Texas Instruments и, возможно, даже VIA, но есть еще один производитель чипов, о котором вы должны знать: Cyrix.

На протяжении более десяти лет Cyrix открывала миллионам мир персональных компьютеров в виде доступных бюджетных ПК. Но в итоге компанию погубил ее лучший продукт который был не способный запустить популярную игру, а затем — катастрофическое слияние с более крупным партнером.

Начало 1990-х годов было прекрасным, но вместе с тем странным временем для индустрии настольных компьютеров.

image

Казалось, что Intel побеждает в жесткой конкуренции в области микропроцессоров; Apple перешла на архитектуру PowerPC от IBM, а чипы 68K от Motorola медленно тянули в могилу ПК Amiga от Commodore. Arm была лишь маленьким огоньком, вспыхнувшим благодаря Apple и нескольким другим компаниям, почти полностью сосредоточившимся на разработке процессора для нашумевшего Newton.

В этот период компания AMD старалась избавиться от репутации производителя, зависящего от архитектур Intel. После того как AMD выпустила несколько поколений процессоров, совместимых с архитектурами Intel, компания разработала собственную архитектуру. К концу 90-х годов AMD завоевала признание благодаря хорошему соотношению цены и производительности своих процессоров.
Читать дальше →
Всего голосов 15: ↑14 и ↓1+17
Комментарии28

35 лет игре «Prince of Persia»

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

Для разных поколений геймеров серия игр Prince of Persia, скорее всего, означает разные вещи: от невиданного реализма в эпоху 2D до незабываемых игр в формате 3D и первых мобильных игр. Серия берет свое начало в 1989 году, хотя если вы родились в этом веке, то, вероятнее всего, в детстве вы не играли ни в одну из игр Prince of Persia. Ведь последняя игра основной линейки вышла в 2010 году.

С выходом в 2024 году новой игры Prince of Persia, The Lost Crown, это отличная возможность познакомиться со старыми играми и понять, как они послужили источником вдохновения для одних из самых популярных современных игр.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+29
Комментарии10

Работа с SIM-картой при помощи Arduino

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров6.2K

Судебная компьютерно-техническая экспертиза (далее – СКТЭ) основывается на специальных знаниях в сфере электроники, электротехники, информационных систем и процессов, радиотехники и связи, вычислительной техники и автоматизации.

Типовыми объектами СКТЭ являются персональные компьютеры, периферийные устройства (принтеры, модемы и т.д.), микросхемы, мобильные телефоны и т.п.

Одним из типовых объектов СКТЭ является и SIM-карта, которая в рамках уголовного дела может фигурировать как вещественное доказательство, хранящее в себе криминалистически значимую информацию. Особенностями данного типа объектов является возможность их использования мобильными телефонами и иными объектами СКТЭ, оснащенными GSM модулем, как средством доступа к сети связи. Необходимость доступа к вышеназванным сетям и обуславливает наличие SIM-карты в подавляющем большинстве поступающих на исследования мобильных телефонах. При исследовании мобильного телефона эксперт тщательно проверяет наличие в «лотках», предназначенных для подключения SIM-карты, соответствующей контактной смарт-карты. Для проверки наличия SIM-карты эксперт использует соответствующую документацию на мобильный телефон (Например: руководство пользователя) и изучает все описанные в ней возможности подключения SIM-карты. В ряде случаев на телефонах может использоваться нестандартное расположение «лотка» для SIM-карты, а также не исключена возможность модификации внутреннего строения телефона с целью скрыть факт подключения SIM-карты и как следствие, возможность доступа к сети связи. К самой SIM-карте в процессе исследования применяются обычные правила исследования информационных компьютерных средств, в частности: описание объекта с фото и текстуальной фиксацией информации, извлечение информации из объекта средствами аппаратно-программных комплексов, анализ извлеченных данных для ответа на поставленные перед экспертом вопросы, составление заключения. Вне зависимости от наличия SIM-карты в списке поступивших на исследование объектов, эксперт в тексте заключения описывает и исследует ее как самостоятельный объект с привязкой к объекту, поступившему на исследование. Так достаточно типовым является фрагмент заключения в формулировке «из лотка SIM-карты исследуемого объекта исследования была извлечена». После привязки объекта исследования к поступившему объекту SIM-карта может фигурировать в тексте экспертного заключения как самостоятельный объект и все вопросы, поставленные перед экспертом, подлежат разрешению в том числе и в её отношении.

Читать далее
Всего голосов 15: ↑10 и ↓5+11
Комментарии16

Отладка микроконтроллеров ARM Cortex-M по UART

Время на прочтение2 мин
Количество просмотров15K
В данной статье я расскажу вам как можно использовать регистры отладки и breakpoint'ов в микроконтроллерах, построенных на ядрах ARM Cortex-M
Читать дальше →
Всего голосов 25: ↑24 и ↓1+32
Комментарии19

STM32F4: GNU AS: Мигаем светодиодом (Оживление) (Часть 2)

Время на прочтение14 мин
Количество просмотров30K
Это вторая публикация на тему программирования микроконтроллеров STM32 на языке ассемблера, первая часть находится Здесь.

Если у вас возникли вопросы или пожелания, но вы не можете здесь писать то переходите в VK: vk.com/topic-200545792_46641967

Дополнительно, обращаю внимание что сейчас (2021 год) написан небольшой редактор для программирования на ассемблере, в котором так же был написан код аналогичной функциональности, но с использованием «плюшек и удобных подушек» редактора, посмотреть конкретно про написание мигалки в нем можно в статье Assembler Editor Plus: Использование модулей (возможно в процессе прочтения нужно будет пройти еще по нескольким ссылкам где будет описано про функциональность редактора в общем, и как выполняется создание проекта, компиляция, прошивка, отладка)

Итак, в прошлой статье мы создали инструмент при помощи которого, можно произвести компиляцию и компоновку (линковку) проекта на языке ассемблера. Теперь напишем программу за работой которой можно наблюдать.

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

Способы отладки ПО микроконтроллеров в электроприводе

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

Как отлаживают программы микроконтроллеров? Берется JTAG, осциллограф – пара дней/недель и программа отлажена. Таким будет типичный ответ, и в большинстве случаев он будет правильным… Но не всегда. Микроконтроллеры решают очень разные задачи, и в этой статье мы рассмотрим, что делать, если нужно разработать громоздкое ПО низкоуровневого управления каким-либо силовым электрооборудованием, например, преобразователями частоты для электродвигателей, DC/DC преобразователями заряда АКБ для поезда, корректорами мощности, сервоприводами и т.п. Оборудованием, где протекают килоамперы и ШИМят киловольты, где на счету каждая коммутация IGBT ключей инвертора, где время реакции микроконтроллера на нештатную ситуацию измеряется в микросекундах, а само оборудование в герметичных корпусах устанавливается и эксплуатируется где-нибудь на заводах Якутии. Если вы хотите узнать, какие особенности это накладывает на способы отладки – добро пожаловать под кат.
Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии50

Первые шаги в импульсных нейронных сетях

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

Давайте попробуем немного разобраться в теме импульсных нейронных сетей (spiking neural network, SNN). Напишем простую импульсную нейронную сеть, используя только NumPy и Pandas, для классической задачи машинного обучения с использованием кодирования рецептивными полями.

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

Скрытая сила терминала или почему всем нужно уметь работать через командную строку

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

В фантастическом фильме Стивена Спилберга «Особое мнение» 2002 года представлен футуристический и концептуальный компьютерный интерфейс. Здесь отрывок, в котором Том Круз использует его.

Все согласятся, что интерфейс этого будущего невероятен и желанен. Если призадуматься, что является его самым удивительным аспектом? Много лет назад можно было бы сказать, что это тонкие экраны. Или невероятная сенсорная технология. Сегодня у нас есть и то, и другое! На самом деле, то, что у нас есть сегодня, даже лучше; мы можем отображать на экране более двух цветов, намного лучше, что есть в антиутопическом будущем Филипа К. Дика.

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

В настоящее время помимо терминалов командной строки и нескольких других дополнительных технологий, современные пользовательские интерфейсы даже близко не приближаются к такому фантастическому будущему.
Читать дальше →
Всего голосов 35: ↑25 и ↓10+31
Комментарии79

Дайте мне 15 минут, и я изменю ваш взгляд на GDB

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

Материал подготовлен на основе выступления с CppCon 2015 "Greg Law: Give me 15 minutes & I'll change your view of GDB" (доступно по ссылке ). Многие моменты я изменял и корректировал, поэтому учтите, что перевод достаточно вольный.

И да, вынесем за скобки вопрос о том, насколько GDB в целом удобная или неудобная программа, и что в принципе лучше использовать для дебаггинга: в данной статье будет рассматриваться именно работа с GDB.

В статье будет рассматриваться отладка кода на C в ОС Linux.

Читать далее
Всего голосов 47: ↑45 и ↓2+63
Комментарии16

Разработка контроллера резервного питания. Технология отладки и тюнинг

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

Здесь рассматривается технология отладки платы контроллера резервного питания и его программного обеспечения . Используются: адаптер SWD, осциллограф, VT100 терминал через UART, движок FreeMaster, экспорт и анализ в MATLAB. Дан пример реализации регулируемого источника напряжения. Заключительный тюнинг платы.

Читать далее
Всего голосов 12: ↑11 и ↓1+14
Комментарии9

Советские микропроцессоры. Заводы «Интеграл», «Микрон» и «Ангстрем». Что они могут сейчас?

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

Советский процессор 580ВМ80, аналог Intel 8080А

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

Всё это многократно обсуждалось на Хабре. Эксперты сошлись во мнении, что создать экосистему производства микроэлектроники внутри РФ — весьма нетривиальная задача, если это вообще возможно. В качестве примера разработки «с опорой на собственные силы» иногда вспоминают электронную промышленность СССР.
Читать дальше →
Всего голосов 56: ↑37 и ↓19+31
Комментарии233

Просто о make

Время на прочтение6 мин
Количество просмотров460K
Меня всегда привлекал минимализм. Идея о том, что одна вещь должна выполнять одну функцию, но при этом выполнять ее как можно лучше, вылилась в создание UNIX. И хотя UNIX давно уже нельзя назвать простой системой, да и минимализм в ней узреть не так то просто, ее можно считать наглядным примером количество- качественной трансформации множества простых и понятных вещей в одну весьма непростую и не прозрачную. В своем развитии make прошел примерно такой же путь: простота и ясность, с ростом масштабов, превратилась в жуткого монстра (вспомните свои ощущения, когда впервые открыли мэйкфайл).

Мое упорное игнорирование make в течении долгого времени, было обусловлено удобством используемых IDE, и нежеланием разбираться в этом 'пережитке прошлого' (по сути — ленью). Однако, все эти надоедливые кнопочки, менюшки ит.п. атрибуты всевозможных студий, заставили меня искать альтернативу тому методу работы, который я практиковал до сих пор. Нет, я не стал гуру make, но полученных мною знаний вполне достаточно для моих небольших проектов. Данная статья предназначена для тех, кто так же как и я еще совсем недавно, желают вырваться из уютного оконного рабства в аскетичный, но свободный мир шелла.
Читать дальше →
Всего голосов 104: ↑98 и ↓6+92
Комментарии111

Отладка микроконтроллеров ARM Cortex-M по UART Часть 2

Время на прочтение6 мин
Количество просмотров7.2K
В прошлой статье я рассказывал про прерывание DebugMon и регистры с ним связанные.

В этой статье будем писать реализацию отладчика по UART.
Читать дальше →
Всего голосов 12: ↑11 и ↓1+15
Комментарии24

Cи в роли промежуточного языка

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

Интересный небольшой эксперимент по использованию Cи в качестве цели компиляции для получения портативности программы, ее оптимизации и функциональной совместимости. В ходе эксперимента мы также напишем саму программу, реализующую алгоритм Эвклида, выполним ее отладку и профилирование, а также попутно задействуем функцию «красивой» печати gdb.
Читать дальше →
Всего голосов 30: ↑26 и ↓4+37
Комментарии3

Функциональная безопасность, Часть 3 из 7. МЭК 61508: Систематичная случайность или случайная систематичность?

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

Безопасности на Хабре посвящен целый хаб, и, пожалуй, никто особенно не задумывается, что именно вкладывается в понятие «безопасность», и так все ясно: информационная безопасность (security). Однако, есть еще и другая сторона безопасности, safety, связанная с рисками для здоровья и жизни людей, а также окружающей среды. Поскольку информационные технологии сами по себе опасности не представляют, то обычно говорят о функциональной составляющей, то есть о безопасности, связанной с правильным функционированием компьютерной системы. Если информационная безопасность стала критична с появлением интернета, то функциональная безопасность рассматривалась и до появления цифрового управления, ведь аварии происходили всегда.

Данная статья продолжает серию публикаций на тему функциональной безопасности.

Описание достаточно непростой терминологической казуистики заняло целую статью, и теперь пора разобраться со структурой требований МЭК 61508.

Не рекомендуется к прочтению тем, кто не интересуется стандартизацией.
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии1

Хакаем CAN шину авто. VAG диагностический бортовой компьютер

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

С огромным увлечением исследую протоколы CAN шины и разрабатываю устройства взаимодействующие с автомобилем. У меня уже есть голосовое управление центральным замком, виртуальная панель приборов и даже мобильное приложение для моей Skoda Octavia A5.

Теперь я решил разработать диагностический бортовой компьютер для автомобилей группы VAG (VW, Audi, Skoda, Seat). Моими техническими требованиями было: OLED дисплей, лёгкая установка и подключение, множество диагностических параметров. В качестве компонентной базы выбрал:
Читать дальше →
Всего голосов 76: ↑76 и ↓0+76
Комментарии41

Запускаем мелкосерийное производство электроники. Личный опыт

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

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

Чтобы статья получилась максимально практичной в ней будут приводиться ссылки на поставщиков оборудования, которое используется нами. Не сочтите за рекламу.

Читать далее
Всего голосов 80: ↑79 и ↓1+106
Комментарии71

Как начать писать программный код Си в ОС Linux (Руководство для совсем начинающих)

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

Этот материал рассчитан на людей, будущих программистов, которые только начинают разбираться в программировании под ОС Linux, или может быть долго были пользователями ОС Windows. Я попробую здесь показать прямое руководство к действию на примере ОС Ubuntu и тех простых инструментов, которые использовал некогда сам при изучении Си в процессе знакомства с Linux.

Читать далее
Всего голосов 21: ↑13 и ↓8+10
Комментарии37

Ретроспективный взгляд на развитие микропроцессоров CISC, RISC, MIPS, ARM

Уровень сложностиПростой
Время на прочтение21 мин
Количество просмотров9.9K

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

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

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

Потребовалась структура — простая, понятная и эффективная.

Читать далее
Всего голосов 19: ↑18 и ↓1+21
Комментарии19
1
23 ...

Информация

В рейтинге
333-й
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Embedded Software Engineer, DevOps
Senior
Git
Bash
CI/CD
C
Embedded system
Programming microcontrollers
Software development
Algorithms and data structures
System Programming
Development of drivers