- Определение целей курса, организация работы разработчика на МК. IDE, компиляторы, отладчики.
- Система контроля версий. Git, GitFlow.
- Стандарты программирования
- Установка IDE для разработки ПО на С и Python.
- Введение в С.
- Синтаксис и семантика С.
- Функции в С.
- Структуры и массивы.
- Указатели и работа с ними.
- Запуск первой программы. Написание простейших программ АСУ ТП.
- Обзор платформы Cortex-M. Организация доступа к памяти и перефирии. Обзор общих модулей. Стек.
- Обзор семейств контроллеров STM32. Основы выбора контроллера под задачу.
- Обзор специализированных инструментов STM32, CubeMX. Как не потерять наработки после перегенерации проекта
- HAL, LL
- Написание первых программ на STM32.
- Приемы работы с указателями, так как очень большой пласт занятий
- GPIO работа с ножками контроллеров
- IRQ&NVIC базовые определения
- Программа реагирующая на кнопки мигая светодиодом.
- ADC&DAC работа в прямом режиме через HAL
- Считываем напряжение и зажигаем светодиод если напряжение вышло за границы
- Пересчет напряжения в показания датчиков.
- логический анализатор - основа разработки Embedded Устройств
- режимы работы с таймеров.
- виды таймеров
- настройка таймеров
- использование таймеров
- Режим отладки "одна нога" - секрет отладки в прерываниях и при работе с таймером.
- мигание светодиодом с разными интервалами на таймерах
- Плохой код, или как не надо писать код на микроконтроллеры.
- Секреты написания неблокирующего кода для микроконтроллеров.
- Написание неблокирующего кода для микроконтроллеров
- Суперлуп. Плюсы и минусы.
- FreeRTOS: обзор системы. Плюсы и минусы.
- С чего начинается написание программы для МК.
- Шаги проектирования программного обеспечения
- Написание алгоритмов управления примеров АСУ ТП
- Реализация конечных автоматов
- Работа через интерфейсы. DataSheet – основа успеха.
- I2C
- Опрос датчика температуры через I2C.
- SPI
- UART
- Написание программы работающей с SPI
- Отправка и прием информации через UART
- Обзор стандартных протоколов межплатной связи. RS-232, RS485, CAN
- Реализация обмена контроллера с компьютером через UART и АТ команды
- Резюме плюсов и минусов разработки на С.
- Обзор MicroPython. Плюсы и минусы. Обзор архитектуры.
- Обзор контроллеров работающих с MicroPython.
- Прошивка базового ядра micropython для ESP32.
- Написание первых программ для Micropython.
- GPIO
- I2C
- SPI
- мигание светодиодом при нажатии кнопок
- отправка и прием данных в интерфейсы
- Общие принципы асинхронности. Корутины и Мьютексы. Отличия от тредов.
- Особенности реализации асинхронности на компьютерах
- Особенности реализации асинхронности в МК
- Обзор успешных кейсов
- Обзор неудачных кейсов и как их превратить в удачные.
- Написание программ для работы с кнопками и светодиодами на асинхронных функциях.
- Написание программ для работы с дисплеем и флеш-картой.
Устройство опрашивающее умный сенсор (I2C, SPI, UART) и датчик температуры (АЦП) отображающее данные на дисплее и сохраняющие значения на флешку по SPI
- сборка макета устройства
- написание кода работы с датчиками. Получение данных и их сохранение в ОЗУ
- вывод данных на экран
- сохранение данных на флешку