Программирование микроконтроллеров STM32 для начинающих

80 участников

О чём курс

Дмитрий Забарило ведёт курс по программированию STM32 от первой программы на C до работы с периферией микроконтроллера. Вы разберёте выводы, таймеры, обмен данными и аналоговые сигналы. Курс рассчитан на начинающих: предварительные знания программирования и микроконтроллеров не требуются.

Первые программы и работа с выводами

Сначала вы познакомитесь с устройством микроконтроллера и областями его применения, настроите CubeIDE и поработаете с документацией STM32. Затем напишете первую программу. Язык C изучается с основ: переменных, типов данных, условий, циклов и функций. Позже в занятиях появляются массивы, строки, указатели и структуры.

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

Таймеры и обмен данными

В теме прерываний разбираются внешние прерывания, приоритеты и обработчики. Затем вы перейдёте к базовым таймерам и системе тактирования STM32. Программа охватывает режимы сравнения и захвата, прерывания от таймеров и формирование ШИМ. Среди задач занятий — секундомер, частотомер и считывание сигналов инкрементального энкодера, включая определение направления и скорости вращения.

Курс охватывает интерфейсы I2C, SPI и UART. Для UART указаны передача и приём данных в режиме опроса, работа через прерывания и обмен с применением DMA. Вы разберёте передачу целых чисел и значений с плавающей запятой, а также работу с массивами символов и строками.

Датчики, аналоговые сигналы и память

При изучении АЦП вы познакомитесь с его режимами и сделаете вольтметр. В занятиях есть измерение температуры с помощью внутреннего и внешних датчиков, усреднение показаний и запуск преобразования от таймеров. Отдельная задача связывает данные АЦП с ШИМ для регулирования оборотов двигателя постоянного тока. В теме ЦАП разбирается формирование постоянного напряжения и сигналов разной формы.

Дальше вы изучите организацию памяти STM32, обращение к регистрам по адресам и побитовые операции. Курс знакомит с CMSIS и сравнивает управление выводами через CMSIS, HAL и прямое изменение битов регистров. Среди устройств, с которыми работают в занятиях, — сдвиговый регистр 74HC595 для расширения портов и ЖК-дисплей для вывода символов и строк. Программирование таких устройств входит в круг тем встроенных систем и IoT.

Об авторе

Дмитрий Забарило создаёт курсы для начинающих электронщиков и радиолюбителей. Он также ведёт канал ElectronicsClub, где объясняет устройство и принципы работы электронных компонентов.

Программа обучения

  • Основы микроконтроллеров STM32
  • Настройка среды разработки
  • GPIO и периферия
  • Протоколы I2C, SPI, UART
  • Работа с датчиками
  • Прерывания и таймеры
Складчина создана 1 января 2025 г.

Другие материалы автора 3

ДЗ Дмитрий Забарило Все материалы
994 ₽ 33 560 ₽