Долгое время мы занимались изучением возможностей написания программного кода для контроллеров STM серии F1. И вот наконец-то, когда мы их неплохо изучили, применяя к ним различные приёмы разработки программного обеспечения, мы можем перейти к гораздо более мощной линейке контроллеров серии …

STM Урок 206. LL. STM32F4. Светодиоды и кнопка Читать далее »

Продолжаем освоение ассемблера для архитектуры ARM. На данном занятии мы попробуем задействовать такой механизм, как аппаратные таймеры. Что это такое, мы давно знаем и давно используем в своих проектах. Поэтому вдаваться в подробности устройства аппаратных таймеров в STM32 и их …

STM Урок 205. Assembler. Таймеры. Табличные переходы Читать далее »

Продолжаем тему поддержки программного I2C в контроллере ESP8266 и сегодня мы ещё закрепим знания по данной теме, продолжив работу с символьным дисплеем разрешением в 4 строки по 20 символов, подключенному по шине I2C к нашему контроллеру. И целью данного занятия …

ESP8266 Урок 18. I2C. Переходник для LCD 20×4. Переопределяем контакты Читать далее »

Продолжим освоение ассемблера для архитектуры ARM. В предыдущих уроках мы использовали задержки исполнения кода с помощью пустых циклов, тем самым нам тяжело было даже примерно подсчитать заранее, сколько циклов потребуется для организации задержки на определённое время. Так как в прошлом …

STM Урок 204. Assembler. SysTick. Прерывания Читать далее »

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

  Так как очищали мы только один бит, логичнее было применить бит-бэндинг. Выключим HSE и его детектор …

STM Урок 203. Assembler. RCC. Стек. Новые команды. Часть 2 Читать далее »

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

STM Урок 203. Assembler. RCC. Стек. Новые команды. Часть 1 Читать далее »

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

STM Урок 202. Assembler. Мигающий светодиод. Команды BX, BL, SUB. Флаги. Условия Читать далее »

В предыдущей части нашего урока мы познакомились с процессором Cortex-M3, регистрами ядра, создадим и настроим проект, также познакомимся с несколькими необходимыми директивами. Давайте теперь в нашу процедуру Start добавим хотя бы одну строку с кодом  

  Мы используем здесь …

STM Урок 201. Assembler. Первый проект. Команды MOV, LDR, STR, B. Часть 2 Читать далее »

С данного урока начнём знакомиться с таким интересным языком, как ассемблер. Я всегда люблю говорить, что ассемблер — это очень лёгкий язык, но писать на нём очень трудно. И вскоре вы поймёте, почему. Язык C, который мы использовали, является языком …

STM Урок 201. Assembler. Первый проект. Команды MOV, LDR, STR, B. Часть 1 Читать далее »

Архитектура ядер семейства Cortex-M, на котором также основываются многие микроконтроллеры STM32, аппаратно поддерживает интересную технологию. Называется данная технология bit banding. Это такая возможность модели памяти, при которой биты определённых участков данной памяти отображаются на целые слова другого участка памяти. То …

STM Урок 200. CMSIS. Bit banding Читать далее »