Top.Mail.Ru

Функциональная схема GPIO с точки зрения железячника.

В прошлый раз я рассказывал, что такое адресное пространство МК, и как мог показал отличия разных архитектур. Настала пора рассказать, как примерно устроены порты GPIO, и с чем их лучше готовить. Каждый функциональный регистр - это, с точки зрения программиста, просто адрес, куда мы пишем или откуда читаем данные. Но с точки зрения железячника это ...

Продолжить чтение

Теория распределения памяти для разных архитектур.

Как всё устроено "внутрях". Данный опус меня побудило написать приобретение новых друзей, которые хотят изучать STM. Есть много разных хороших книг, но многие из них сразу начинают рассказывать, как всё это программируется, и не касаются внутренней структуры самого МК. Можно найти отдельных авторов, которые небольшими статьями пытаются объяснить, как все устроено. Но приходится всё это ...

Продолжить чтение

Воронежский НИИ электронной техники разработал контроллер АСУ ТП, индустриальных систем и автоэлектроники.

Недавно АО «НИИЭТ» приступил к реализации двух проектов по созданию микроконтроллеров на ядре RISC-V для различных задач актуальных на гражданском рынке.  Данные разработки помогут снизить зависимость отечественных производителей от зарубежных изделий микроэлектроники. Двухъядерный 32-разрядный контроллер, созданный инженерами из Воронежа, найдет применение в сферах АСУ ТП, индустриальных системах и автоэлектронике. АСУ ТП – это комплекс аппаратных ...

Продолжить чтение

Незаметный, но незаменимый.

Сложно представить, что даже самые маленькие изделия, умещающиеся в ладони или кармане, оснащены своим мозгом, позволяющим одним касанием разблокировать двери автомобиля или запустить кондиционер. Современные микроконтроллеры обладают достаточно высокими вычислительными мощностями, которые позволяют на одной миниатюрной микросхеме расположить полноценное функциональное устройство. Но существуют приложения и задачи, где ресурсов 16-разрядных микроконтроллеров недостаточно. Российские инженеры потратили много ...

Продолжить чтение

«Наш трамвай без рельсов и звонков…».

В прошлом месяце в столице произошло знаковое событие - был запущен первый регулярный маршрут московского речного электротранспорта от Киевского вокзала до причала на Шелепихинской набережной. Его длина составила более 6.5 км. Перевозки выполняются электросудами серии Ecobus, пришедшими на смену легендарным пароходам серии «Москвич», и получившими имена в честь московских рек: Синичка, Сетунь, Пресня, Филька, Сходня, ...

Продолжить чтение

АО «НИИЭТ» приступил к разработке серии микроконтроллеров для гражданского рынка.

Воронежский НИИ электронной техники приступил к реализации нового комплексного проекта «Разработка и освоение в серийном производстве серии 32-разрядных микроконтроллеров» с использованием программы субсидирования в соответствии с постановлением Правительства РФ от 24 июля 2021 года № 1252. В рамках проекта разрабатывается четыре микроконтроллера на основе открытой архитектуры RISC‑V, которые перекрывают широкий спектр применений – от аппаратуры АСУ ТП до ...

Продолжить чтение

Stm32. Переходим на современный C++. Часть 8. Таймеры. Режим энкодера. Режимы Master/Slave.

Вступление. В завершение изучения таймеров, в частности таймеров общего назначения, рассмотрим оставшийся без внимания блок - Trigger controller: Таймер в режиме ведомого. Таймеры также могут работать в режиме ведомого с реакцией на внешнее событие, задаваемой битами SMS регистра TIMx_SMCR: 100 (Reset Mode): режим сброса, выбранный триггер сбрасывает счетчик; 101 (Gated Mode): режима шлюза, счетчик включен только при высоком ...

Продолжить чтение

Stm32. Переходим на современный C++. Часть 7. Таймеры общего назначения и модуль захвата.

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

Продолжить чтение

Stm32. Переходим на современный C++. Часть 6. Таймеры общего назначения и модуль сравнения.

Вступление. Прошу прощения, если кого-то расстроил столь долгим перерывом, но конец года постоянно не оставляет ни минуты свободного времени. Ранее мы начали изучение таймеров в контроллерах Stm32 и рассмотрели базовый таймер, функционал которого ограничен увеличением счетчика (регистра CNT) и генерацией события (на которое можно "повесить" прерывание и DMA-запрос) при его переполнении. Переходим к следующему в иерархии ...

Продолжить чтение

Stm32. Переходим на современный C++. Часть 5. Система тактирования.

Вступление. На прошлом занятии мы начали рассматривать таймеры, а именно разобрали приемы работы с базовым таймером. Наименьший период генерации события переполнения, который можно получить, равен 1/8 мкс (при частоте тактирования таймера 8 МГц и нулевых значениях регистров предделителя и автоперезагрузки). Однако даже в такой конфигурации невозможно реализовать хоть какой-нибудь обработчик прерывания, который бы выполнялся с ...

Продолжить чтение