Введение 4
1. Постановка задачи 6
2. Обзор 7
2.1. STM32 7
2.1.1. Семейство микроконтроллеров STM32 7
2.1.2. Плата микроконтроллера STM32F429I-Discovery . 8
2.2. Средства программирования микроконтроллера STM32 . 10
2.2.1. Цели и критерии обзора 10
2.2.2. IAR Embedded Workbench for ARM 10
2.2.3. Keil MDK 11
2.2.4. Eclipse ARM plugin 12
2.2.5. Atollic TrueStudio 13
2.2.6. CooCox 13
2.2.7. Выводы 14
2.3. TRIK Studio 15
2.3.1. Общая архитектура 15
2.3.2. Генераторы 16
3. Архитектура системы 18
4. Плагин для микроконтроллера STM32 в TRIK Studio 21
5. Генератор кода на языке C+—+ 22
6. Интеграция компилятора и загрузчика с TRIK Studio 23
7. Апробация 25
Заключение 30
Список литературы 31
Во многих сферах деятельности для выполнения разнообразных задач внедряются роботы, которые способны заменить человеческий труд машинным. В связи с этим масштабнее становится развитие робототехнической отрасли, одним из направлений деятельности которой является создание программных средств, которые дадут возможность пользователям удобно и быстро программировать различных роботов.
Одним из средств, способных упростить и ускорить процесс создания программ, является визуальное программирование [24]. Визуальное программирование — это способ задавать программу в терминах графических объектов вместо привычного для многих программистов применения абстракции текстового программирования. Данный способ позволяет упростить представление объектов, с которыми приходится оперировать программисту при разработке программы, что может сэкономить время, затрачиваемое на создание программного продукта, и упростить процесс обучения программированию, тем самым расширив аудиторию разработчиков программного обеспечения.
На кафедре системного программирования Санкт-Петербургского государственного университета в течение нескольких лет ведется разработка платформы QReal [27]. QReal представляет собой metaCASE- инструментарий, то есть среду для создания новых визуальных языков и интегрированных сред программирования для них. Визуальное программирование можно использовать в качестве средства управления роботами [22], в связи с чем на основе среды QReal [15] была создана технология визуального программирования роботов TRIK Studio [25], которая позволяет создавать графические программы для различных роботов и исполнять их.
Для управления разнообразными электронными устройствами, в том числе роботами, используются определенные микросхемы — микроконтроллеры. Микроконтроллер представляет собой вычислительное устройство небольших размеров, которое содержит в себе одно или несколько процессорных ядер, память, программируемые устройства ввода/вывода и прочие периферийные устройства.
С недавнего времени в робототехнической отрасли возрос интерес к относительно молодой серии микроконтроллеров STM32. Широкое распространение данная линейка получила благодаря своим преимуществам по сравнению с аналогами: высокой производительности, относительно низкой стоимости и работе в условиях низкого электропотребления.
В связи с этим с целью расширения возможностей среды TRIK Studio была поставлена задача осуществить поддержку программирования микроконтроллера STM32 в TRIK Studio.
В результате работы были получены следующие результаты:
• разработана архитектура системы программирования микроконтроллера STM32 в среде TRIK Studio;
• реализован подключаемый модуль для микроконтроллера STM32 в TRIK Studio;
• реализован генератор кода из программы на языке визуальных диаграмм в программу на языке Cd—+;
• разработана подсистема интеграции компилятора и загрузчика программы с TRIK Studio;
• проведена апробация средства программирования на плате микроконтроллера STM32F4-Discovery;
• по теме выпускной работы был сделан доклад на конференции студентов, аспирантов и молодых ученых «Современные технологии в теории и практике программирования» в Политехническом университете и были опубликованы материалы в сборнике конференции [26].
Результат работы доступен по ссылке [19].