Использование примеров для STM32F4DISCOVERY в IAR Embedded Workbench for ARM

В  статье "Программное обеспечение для STM32F4DISCOVERY  (http://firsthand.ru/node/298)" я уже писал, что примеры которые идут вместе с IAR EWARM (IAR Embedded Workbench for ARM) для микроконтроллеров STM32F4 не работают с STM32F4Discovery, потому что они ориентированы на их собственную отладочную плату IAR KickStart Kit for STM32F407ZG.

Для того чтобы работать в IAR EWARM с STM32F4Discovery нужны примеры именно для STM32F4-Discovery и именно для среды разработки или toolchain IAR EWARM (IAR Embedded Workbench for ARM).

Такие примеры есть у самой компании STMicroelectronics и их можно свободно использовать.

Скачать примеры можно с сайта "www.st.com" компании "STMicroelectronics" со страницы с названием

STSW-STM32068
STM32F4DISCOVERY board firmware package, including 22 examples (covering USB Host, audio, MEMS accelerometer and microphone) (AN3983)

Попасть на неё легче через поиск. Можно и по другому, но мне нравиться через поиск. Так быстрее. Просто набираешь "STSW-STM32068" и первая ссылка ведет куда надо.

Ищем внизу на странице раздел "Get Software" и жмем на кнопочку "Download" напротив STSW-STM32068. После этого загружается zip-архив stsw-stm32068.zip.

В данном архиве, после распаковки, видим папку STM32F4-Discovery_FW_V1.1.0. Эта папка и содержит примеры для STM32f4discovery. Эту папку можно теперь перенести в папку с проектами IAR EWARM, оставить там где она есть или перенести в, специально созданную для экспериментов, свою папку. У меня такой папкой является E:\PROJ\STM32F4, вот туда я и перенес папку STM32F4-Discovery_FW_V1.1.0. со всем её содержимым.

Практически во всех примерах от официальных изготовителей микроконтроллеров и изготовителей отладочных плат файлы проектов для IAR EWARM (IAR Embedded Workbench for ARM) размещаются в папках с названием EWARM. Например, есть папка "Demonstration" с файлами проекта демонстрации некоторых основных возможностей отладочной платы, а в ней есть папка  EWARM, в которой находятся файлы проекта для IAR EWARM.

Пример работы с портами ввода/вывода GPIO я нашел в папке "E:\PROJ\STM32F4\STM32F4-Discovery_FW_V1.1.0\Project\Peripheral_Examples\IO_Toggle" и файлы проекта для  IAR EWARM соответственно в папке "E:\PROJ\STM32F4\STM32F4-Discovery_FW_V1.1.0\Project\Peripheral_Examples\IO_Toggle\EWARM"

 

Далее находим файл с расширением ".eww" - это IO_Toggle.eww. Это основной файл для проекта в IAR EWARM. Щелкаем по нему мышкой и если toolchain IAR EWARM установлен правильно, то вскоре откроется IAR Embedded Workbench for ARM с загруженным проектом IO_Toggle.

Слева отображается состав проекта, а внизу две строчки сообщают что проект создан для STM32F407VG.

В папке User находиться файл main.c в котором содержиться основной код программы и откуда всегда стоит начинать изучать примеры. Но сейчас мы этот шаг изучения пропустим, потому что основная цель - это проверить работоспособность примеров для STM32F4discovery в среде разработки IAR Embedded Workbench for ARM.

Для этого просто откомпилируем пример работы с портом ввода/вывода GPIO. Для этого в меню выбираем "Project", затем "Rebuild All". Так проверим наличие ошибок, все ли файлы присутствуют и, если всё хорошо, откомпилируем пример.

После компиляции проекта выходит сообщение о том, что ошибок нет и замечаний нет.

Теперь загрузим полученную прошивку в микроконтроллер в режиме отладки. Если отладочная плата STM32F4discovery ещё не подключена, то самое время её подключить. В меню выбираем "Project", затем "Download and Debug".

После загрузки, выполнение программы останавливается на строке подсвеченной зеленым цветом.

Теперь можно проверить работу программы в пошаговом режиме, или запустить непрерывное выполнение. Для непрерывного выполнения нажимаем на кнопочку "Go". Ранее погасшие светодиоды начинают мигать по часовой стрелке. То есть, пример откомпилировался, загрузился и нормально себя чувствует в памяти микроконтроллера, выполняя заданную работу.

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

И как итог, получаем что примеры для STM32F4-Discovery с сайта st.com для IAR EWARM вполне рабочие и ими можно пользоваться для изучения и освоения микроконтроллера STM32F407VG.