Pull to refresh

Энтузиаст проапгрейдил советский калькулятор МК-85 современным микроконтроллером

Reading time1 min
Views16K

Польский умелец Петр Патек (Piotr Patek) заменил процессор на своем калькуляторе «Электроника МК-85» на микроконтроллер STM32. Из-за несовместимого расположения пинов электроники 80-х годов и современных компонентов, автору пришлось изготовить печатную плату, позволяющую соединять между собой элементы из разных эпох.

Читать далее
Total votes 32: ↑32 and ↓0+32
Comments55

В США разработали систему электронной литографии с разрешением 0,7 нм

Reading time1 min
Views4.3K

Американская Zyvex Labs представила систему электронной литографии ZyvexLitho1. Она получила рекордное разрешение в 768 пикометров, что примерно равно ширине двух атомов кремния. 

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments5

Конспект. STM32. CMSIS. LTDC

Level of difficultyEasy
Reading time25 min
Views6.3K

Данный конспект (гайд) предназначен для лиц, желающих ознакомиться с конфигурацией LTDC модуля микроконтроллеров STM на примере STM32F429ZIT6 подключенному по 16-битному RGB565 интерфейсу к дисплею TM043NBH02 с разрешением 480x272 и использованием одного слоя без внешней памяти для видеобуфера.

Читать далее
Total votes 25: ↑25 and ↓0+25
Comments2

Как мы делали датчик для измерения уровня мусора

Reading time13 min
Views12K
Тариф на вывоз мусора в нашей стране скоро будет рассчитываться исходя из объема образованных отходов. И сразу возникает вопрос, как измерить этот объем, который напрямую отразится на нашем кошельке. Самым действенным представляется измерение объемов отходов в контейнерах. Решению этой инженерной и отчасти экологической задачи и посвящена статья.


Рисунок 1 — Измерение уровня наполненности контейнера без применения электронных средств.

Я руковожу отделом разработки радиоэлектронной аппаратуры в производственной компании ООО “Большая Тройка”. Компания занимается автоматизацией работы по обращению с отходами. Если вы хоть что-то слышали про территориальные схемы обращения с отходами и автоматизированные системы управления для региональных операторов, есть очень большая вероятность, что их разработали и внедрили именно мы. Мой отдел небольшой, но работает над весьма интересными задачами: телематические контроллеры для управления парком автомобилей-мусоровозов, разнообразная автоматика для полигонов, контейнерных площадок и самих контейнеров.

Я расскажу о разработке датчика уровня наполненности контейнера отходами. Задача такого прибора — измерять количество насыпанного в контейнер мусора и передавать эти данные на сервер для дальнейшей обработки. Уже сейчас, до внедрения тарификации по объему, данные от таких датчиков могут очень помочь в оптимизации использования контейнерных площадок: отходы из контейнеров должны вывозиться в строго определенный промежуток времени, холостой пробег мусоровозов должен быть минимизирован, а количество и качество контейнеров на контейнерной площадке должно быть максимально адекватно потребностям отходообразователей.
Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments49

SiC: микроэлектроника — это не только кремний

Reading time25 min
Views21K
Современная микроэлектроника практически полностью построена вокруг кремниевых КМОП-микросхем. Как вышло, что кремний опередил появившийся раньше германий и более перспективный арсенид галлия, я уже рассказывал раньше, а сегодня давайте поговорим о другом полупроводниковом материале, стремительно ворвавшемся в царство кремния и готовящемся остаться в нем всерьез и надолго. Этот материал — карбид кремния (SiC).


Статья получилась длинной, поэтому спойлеры: гегемонии кремния в микропроцессорах ничего не угрожает, но в силовой электронике SiC действительно намного лучше. В частности, внутри статьи можно будет увидеть чуть-чуть внутренностей автомобилей Tesla и много силовых полупроводниковых приборов.
Читать дальше →
Total votes 35: ↑35 and ↓0+35
Comments27

Краткая история космических микропроцессоров, часть вторая

Reading time27 min
Views38K
Это вторая часть статьи про историю микропроцессоров для космического применения. Первая часть – вот здесь. В ней на примерах американских и европейских микросхем мы посмотрели на историю развития радстойких чипов от первых однокристалльных процессоров до конца двухтысячных, когда проектные нормы космических разработок плотную подобрались к рубежу 100 нм.

Следующий большой шаг в обеспечении радиационной стойкости наступил с переходом на суб-100 нм, где практически каждое следующее поколение технологии приносит новые вопросы: меняются материалы, меняются требования к топологии, растет статическая мощность (утечки безо всякой радиации, которые под дозой становятся еще хуже), продолжает расти значимость одиночных эффектов, которые превращаются во множественные. Эти задачи потребовали разработки новых подходов и, что удивительно, частичного возврата к старым, потому что часть вещей, отлично себя зарекомендовавших на нормах 1-0.18 мкм, на более тонких нормах не работает. Например, в таких технологиях для повышения выхода годных запрещено делать любимые дизайнерами радстойких чипов кольцевые транзисторы. О том, как дизайнеры справляются с новыми вызовами, я расскажу на примере России – и заодно сравню достижения наших соотечественников с успехами иностранных коллег и покажу, чего стоит ожидать в обозримом будущем.
Читать дальше →
Total votes 91: ↑91 and ↓0+91
Comments79

.NET Framework 4.0 получил механизм Software Transactional Memory

Reading time1 min
Views2K
Software Transactional Memory (STM) — это альтернатива блокировкам и другим традиционным механизмам синхронизации асинхронных операций и потоков при доступе к общему участку памяти. Механизм STM похож на работу транзакций в современных СУБД и, хотя его использование в общем случае медленнее использования механизма блокировок, STM предлагает разработчику более простой способ управления параллельными вычислениями.

Использование STM в .NET крайне просто:

Atomic.Do(()=> {
<statememts>
});

где statements — это выражение которое должно выполняться в транзакции.

Существует масса библиотек реализующих STM для множества языков. STM для .NET ранее существовала в виде отдельного проекта группы Microsoft Research, кроме того для C# существовует еще 4 библиотеки STM. И вот теперь, этот механизм стал частью фреймворка.

* скачать .NET 4.0 с STM msdn.microsoft.com/en-us/devlabs/ee334183.aspx
* wiki-статья про STM en.wikipedia.org/wiki/Software_transactional_memory (eng)
* статья Beautiful Сoncurency (Haskell) research.microsoft.com/en-us/um/people/simonpj/papers/stm/beautiful.pdf (pdf), спасибо shai_xylyd

via www.infoq.com/news/2009/07/Software-Transactional-Memory
Total votes 55: ↑42 and ↓13+29
Comments8

16 Способов Отладки и Диагностики FirmWare

Level of difficultyEasy
Reading time9 min
Views7.1K

В этом тексте перечислены основные способы отлаживать и диагностировать проекты на микроконтроллерах.

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

Читать далее
Total votes 20: ↑17 and ↓3+14
Comments23

Бюджетный 3D принтер как конструктор. Заменяем материнскую плату и прошивку

Reading time15 min
Views20K

К нам приехал принтер Creality Ender 3 v2 с процессором GD (GigaDevice) вместо ожидаемого STM (STMicroelectronics). Принтер в базовой комплектации еще как-то работает (хотя прошивка очень урезана), но часть периферии принтера не работает вовсе (датчик филамента), а остальное работает не корректно (сенсор автокалибровки CR Touch) или перегревается (двигатели). Открытую прошивку Marlin для процессора STM можно скомпилировать и установить на матплату GD (хотя официально процессор не поддерживается), вот только эта прошивка не распознает сенсор автокалибровки. Получается, что нужна или замена материнской платы, или сенсора, или того и другого вместе. Логично начать с материнской платы и прошивки — как минимум, в открытой прошивке есть функции тестирования сенсора автокалибровки, так что уже можно будет выяснить, в порядке ли он.


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


Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments18

STM8L подробное руководство первых шагов

Level of difficultyEasy
Reading time6 min
Views11K

Речь пойдет о маломощном микроконтроллере STM8L001J3. Постараюсь подробно рассказать о необходимых шагах для прошивки "hello world" и различных подводных камнях.

Читать далее
Total votes 24: ↑24 and ↓0+24
Comments6

Транзакционная память и многопоточность

Reading time9 min
Views18K

На фото: Blue Gene / P в Аргоннской национальной лаборатории

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

В IBM (а как вы думали) заняты поиском решения этой задачи (один мой знакомый с юмором охарактеризовал ее как «узники блокировки»), так как голубой гигант остается самым крупным проектировщиком, изготовителем и поставщиком суперкомпьютерных кластеров, где синхронизированный доступ к памяти — камень преткновения.

Есть и хорошие новости: в процессорах следующей модели Blue Gene / Q, которые будут питать 20-петафлопсный суперкомпьютер Sequoia, строящийся компанией в настоящее время для Ливерморской национальной лаборатории, реализована поддержка транзакционной памяти не на программном, а аппаратном, уровне. При успешных испытаниях эта технология докажет, что масштабируемое параллельное программирование может быть простой задачей (и в отсутствии параллельных алгоритмов) — это, в свою очередь, изменит ландшафт вычислений. Так как большинство исследований до сегодняшнего дня проводились именно в области реализации STM на уровне ПО, чипы BlueGene/Q позволят реально оценить разницу в скорости работы двух принципиально разных архитектур: HTM (hardware transactional memory) и традиционной STM.

Интересно? Читаем дальше
Total votes 35: ↑34 and ↓1+33
Comments23

Анонсирована аппаратная поддержка транзакционной памяти в Haswell

Reading time4 min
Views14K
Haswell будет очень инновационным Tock'ом. Еще в прошлом году стало доступно описание новых операций с целыми в AVX. А на этой неделе было опубликовано очередное расширение архитектуры X86. В Haswell появится аппаратная поддержка транзакционной памяти! На англоязычных сайтах обсуждение кипит. ISN Arstechnica LWN Engadget

Я думаю, что это самое нетривиальное расширение архитектуры X86 за много-много лет. Фича называется Transactional Synchronization Extensions (далее TSX), и состоит из двух частей — Hardware Lock Elision (HLE) и Restricted Transactional Memory (RTM). Обратите внимание на слово «Restricted». Все верно, есть некоторые ограничения по объему, гранулярности и уровню вложенности транзакций.

Об этих ограничениях и как это все будет работать подробнее под катом. (Никаких картинок, скучный технический текст)
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments14

STM32F1xx — Инструменты разработчика и FreeRTOS

Reading time10 min
Views149K
Добрый день, уважаемые хабровчане. В своих прошлых статьях (STM32F1xx — лечимся от ардуинозависимости вместе, STM32F1хх — продолжаем лечение от ардуинозависимости при помощи LCD) я постарался осветить вопросы перехода с 8-битных микроконтроллеров на новые 32-битные STM32F1xx.
В процессе работы с ними, я, разумеется выбирал инструменты себе «по руке» — то есть, старался найти наиболее удобные для меня отладочные платы, программаторы, IDE. В этой статье я хочу поделиться с вами несколькими соображениями на этот счет, а также описать процесс сборки в выбранной IDE операционной системы реального времени FreeRTOS.
Читать дальше →
Total votes 27: ↑26 and ↓1+25
Comments9

STM32F1хх — продолжаем лечение от ардуинозависимости при помощи LCD

Reading time14 min
Views126K
Добрый день, уважаемые хабровчане. В своей прошлой статье я рассмотрел применение замечательных микроконтроллеров STM32F1xx на примере управления сервоприводами. В этой статье мы обратимся к более интересному вопросу – управлению цветным графическим LCD-дисплеем. Помимо стандартной работы с дисплеем я постараюсь осветить вопросы использования особенностей микроконтроллеров STM32F для эффективного решения данного вопроса. Итак, начнем.
Читать дальше →
Total votes 61: ↑60 and ↓1+59
Comments16

Настройка VSCODE под разработку для ARM на примере отладочной платы stm32f429i-disco

Reading time2 min
Views42K


Всем привет!


Сегодня рассмотрим настройку удобной и красивой среды разработки для программиста микроконтроллеров с помощью набора полностью бесплатных инструментов разработки.


Все шаги проверены на виртуальной машине со свежеустановленной Ubuntu 16.04 xenial desktop x64.


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


Все настройки, касающиеся конкретного железа (в моём случае это контроллер STM32F429 и девборда STM32F429DISCO), нужно подменить на свои. То же самое касается и путей.


Если готовы, то

Читать дальше →
Total votes 38: ↑37 and ↓1+36
Comments53

Простой цифровой радиоприемник на базе контроллера STM32G4 своими руками

Reading time44 min
Views34K

Обучающие проекты по созданию простого цифрового радиоприемника на базе микроконтроллера STM32G431KB.

Читать далее
Total votes 85: ↑85 and ↓0+85
Comments52

Moscow ALT.NET: 2ая встреча

Reading time1 min
Views630

Что это?
Обязательная регистрация
Место: Карта м. Чистые пруды / м. Лубянка / м. Китай-Город, пер. Архангельский, д.1., конференц-зал CustIS (http://www.custis.ru/) Будут кофе, печенюшки и wi-fi
Дата: 24 февраля 2011 года

Доклады


18-30 Использование Ruby on Rails 3 для быстрой разработки сложных веб-приложений


Доклад состоит из нескольких частей:
1) Обзор Ruby on Rails 3.
2) Пример использования фреймворка и описание процесса разработки крупного проекта (среда разработки, система контроля версий Git, средства развертывания приложений и т.п.).
3) Использование хранилища Redis для увеличения производительности.
4) Сравнение Ruby on Rails с ASP .NET MVC.
Докладчик: Мигальников Андрей (Медиахолдинг «Эксперт»)

19-30 Software transactional memory


Software transactional memory — какие задачи пытаются решить исследователи, что у них на данный момент получается, а что — нет; вкратце расскажу, что представляет из себя STM как для разработчика, так и внутри; дам ссылки на интересные публикации.
Докладчик: Алексей Бахиркин (Старший разработчик «ВТБ Факторинг»)

*если вы хотите выступить с докладом, отпишитесь в нашей уютной гугло-группе groups.google.com/group/moscow-altnet
Total votes 32: ↑22 and ↓10+12
Comments14

STM32F1xx — лечимся от ардуинозависимости вместе

Reading time14 min
Views265K
Добрый день, уважаемые хабровчане!
После длительного перерыва, связанного с защитой дипломного проекта в Бауманке, я снова вернулся к написанию статей. Так как с недавнего времени я занялся 32-битными микроконтроллерами серии STM32F на ядре ARM Cortex-M3, об этом и пойдет мой рассказ. Мне статья поможет систематизировать знания об этих замечательных микроконтроллерах, а вам, я надеюсь, послужит одной из ступеней на пути к их использованию и развеет страхи и сомнения, которые всегда возникают после уютных 8-битных AVRок при упоминании страшных 32-битных монстров.
Итак, почему Cortex, чем же плохи АVR?
Читать дальше →
Total votes 159: ↑157 and ↓2+155
Comments65

Concurrency: 6 способов жить с shared state

Reading time6 min
Views31K
concurrency

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

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

Все примеры приведены на Java, но содержат комментарии и я надеюсь будут понятны программистам не знакомым c Java. Данная статья носит обзорный характер и не претендует на полноту. В то же время она наполнена ссылками, которые дают более подробное объяснение терминам и утверждениям.

Читать дальше →
Total votes 52: ↑51 and ↓1+50
Comments20

Обзор платформы для разработчиков ST Nucleo на примере Nucleo-F401RE

Reading time5 min
Views86K
Оценочные платы ST Nucleo:

image

Это открытая, недорогая и легко расширяемая отладочная платформа для разработки с широким выбором специальных плат расширения, для всей линейки 32-х битных микроконтроллеров STM32 архитектуры ARM Cortex-M3 и Cortex-M4.

image

Платы «ST Nucleo» дают возможность выбирать из различных сочетаний производительность, энергопотребление, и архитектурные особенности микроконтроллера. Платформа позволяет быстро, удобно и легко изучить особенности архитектуры и программирования микроконтроллера, опробовать свои идеи, создать прототипы с любым микроконтроллером семейства STM32.
Читать дальше →
Total votes 34: ↑32 and ↓2+30
Comments28
1