Программирование [Дмитрий Забарило] Учимся программировать микроконтроллеры (2020)

ПОЛЬЗОВАТЕЛЬ
Регистрация
29 Июн 2019
Сообщения
10,963
Реакции
10,716
[Дмитрий Забарило] Учимся программировать микроконтроллеры (2020)
Посмотреть вложение 55188

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

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

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

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

Какой тип микроконтроллеров будем изучать
Выбирать в качестве обучения тип микроконтроллера следует с учетом спроса рынка. Если посмотреть вакансии, связанные с программированием микроконтроллеров, то можно обнаружить, что более чем в 90 % вакансий требуются программисты микроконтроллеров линеек AVR и STM. Микроконтроллеры STM являются довольно мощным «оружием», но сложны для понимания начинающим программистам, кроме того STM не выпускаются в DIP корпусах, что создает некоторое неудобство на начальных этапах изучения, — их без специальных переходников не установить на макетной плате.

По этим причинам мы будем изучать микроконтроллеры серии AVR, что позволит более глубоко понять структуру и механизм программирования микроконтроллеров. Кроме того, освоим МК AVR, Вам будет очень просто самостоятельно освоить ARDUINO. Более того, после изучения МК AVR ARDUINO покажется не такой уже интересной «штукой» и возникнет желание перейти к освоению МК STM.

Для обучающих целей за базовый МК мы примем ATmega8, но также будем тренироваться писать коды для МК других типов: ATmega48, ATmega16, ATmega8535, ATmega328, ATtiny2313, ATtiny13 и др.

В общем, после изучения курса вы сможете написать программу для любого МК серии AVR, так как мы будем подробно изучать даташиты МК разных типов.

На каком язык программирования будем писать программы
В основном микроконтроллеры программируют на таких языках: C, С++, Python, а также на Ассемблере. Знать ассемблер – это хорошо, но опыт показывает, что программирование микроконтроллеров для начинающих выглядит гораздо интересней и увлекательней на языке C. Поэтому в данном курсе особое внимание уделяется языку C, причем С излагается с учетом того, что у слушателей ранее не было никакого опыта программирования вовсе, то есть мы будем изучать C от самых базовых понятий до вполне приличного уровня.

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

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

Программа курса включает следующие основные (на занятиях уроков будет больше) пункты:


  1. Общие понятия об МК и перспективы развития. Среда разработки и эмуляция работы микроконтроллера.
  2. Порты ввода-вывода микроконтроллеров. Настройка портов на вход и выход.
  3. Библиотека задержек. Формирование временных интервалов. Оператор if.
  4. Подключение кнопки. Дребезг контактов и борьба с ним. Оператор while.
  5. Логические и побитовые операции.
  6. Таймер-счетчики микроконтроллера. Настройка таймер-счетчиков. Переполнение и сравнение значений таймер-счетчиков. Таймер-счетчик в режиме захвата. (Формирование звука, изменение яркости света).
  7. Внешние прерывания микроконтроллеров. Прерывания от таймер-счетчиков.
  8. Общие сведения о семисегментных индикаторах. Подключение семисегментных индикаторов к микроконтроллерам. Семисегмментные индикаторы с общим анодом и общим катодом.
  9. Принцип работы динамической индикации. Подключение многоразрядной динамической индикации к микроконтроллерам. Массивы.
  10. Оператор switch case. Подключение динамической индикации к произвольным выводам микроконтроллера.
  11. Таймер и секундомер с применением динамической индикации.
  12. Широтно-импульсная модуляция микроконтроллеров AVR. Регулировка мощности с помощью ШИМ. Регулировка яркости освещения с помощью ШИМ. Формирование звука с помощью ШИМ микроконтроллера.
  13. Принцип работы и настройка аналогово-цифрового преобразователя МК.
  14. Цифровой вольтметр на МК.
  15. Создаем цифровой амперметр и вольтметр-амперметр на МК. Ваттметр на микроконтроллере.
  16. Подключение датчиков с аналоговым выходом к МК. (Датчик температуры, уровня воды, ультразвуковой датчик расстояния и т.п.).
  17. Принцип работы и настройки аналогового компаратора.
  18. Энергонезависимая память микроконтроллера. Настройка EEPROM МК. Счет, запоминание и отображение количества событий.
  19. Принцип работы и настройки интерфейса I2C (TWI) МК AVR. Подключение внешней EEPROM к микроконтроллеру по каналу I2C.
  20. Подключение датчика температуры и углубленная работа с даташитами устройств с интерфейсом I2C. Настройка, отладка и выявление ошибок при передаче данных по I2C. Подключение датчиков температуры и датчиков влажности.
  21. Подключение жидкокристаллических дисплеев к микроконтроллерам.
  22. Принцип работы и настройки интерфейса UART микроконтроллера AVR.
  23. Применение потоков данных при управление микроконтроллером по команде, поступающей из компьютера посредством интерфейса UART.
  24. Подключение различных датчиков к микроконтроллеру по интерфейсу UART.
  25. Интерфейс SPI. Принцип работы и настройки.
  26. Подключение датчиков по интерфейсу SPI.
  27. Подключение термопары посредством преобразователя MAX6675.
  28. Управление шаговыми двигателями и двигателями постоянного тока. Изучение и подключение драйверов.
Обращаю Ваше внимание на то, что данная программа раскрывает больше вопросов, чем в некоторых вузах по соответствующим дисциплинам.

После курсов
После изучения курса Вас ожидает следующее:


  • Полюбите микроконтроллеры и больше не будете их бояться.
  • Научитесь программировать микроконтроллеры любых типов серии AVR.
  • Приобретете навыки уверенного программирования на языке C.
  • Научитесь читать и понимать даташиты (техническую документацию) микроконтроллеров, датчиков, радиоэлектронных элементов.
  • Сможете разрабатывать электронные устройства средней сложности на базе микроконтроллеров AVR.
  • Сможете очень быстро и без труда освоить ARDUINO.
  • Будет гораздо проще и интересней изучать микроконтроллеры других серий: STM, PIC и т.п.
  • Приобретете новую профессию и даже сможете работать программистом микроконтроллеров.
ПРОДАЖНИК
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.
Скрытое содержимое доступно для зарегистрированных пользователей!

СКАЧАТЬ

Скрытое содержимое. Вам нужно войти или зарегистрироваться.
 
Последнее редактирование модератором:
ПОЛЬЗОВАТЕЛЬ
Регистрация
15 Окт 2019
Сообщения
6
Реакции
2
Доброго времени суток! Уважаемый админ, если можно - перезалейте пожалуйста материал.
 
Назад
Сверху Снизу