Главная » Статьи » Уроки по программированию stm32fxxx » Уроки по программированию stm32f4xx

Урок 1: Создание проекта для stm32f4xx
После установки и запуска программы, мы получаем окно следующего вида:



Теперь нам нужно создать проект. Для этого жмём Project -> New uVision project
Появится окно для сохранения созданного проекта. Придумайте ему осмысленное название и поместите в отдельную папку. Жмите Сохранить. Выскочит окно выбора микроконтроллера:



Для STM32f4xxDiscovery выбираем микроконтроллер: STMicroelectropnics -> STM32F407VG. Жмём Ок. Появится окно с вопросом, создать ли стартовый файл. Жмём Да.



Теперь наш проект выглядит так:



Обратите внимание на вкладку Target 1 слева. Там хранятся наши файлы.
Теперь нам надо добавить в наш проект стандартные файлы: CMSIS , StdPeriph и main.c
Скачать CMSIS можно с официального сайта вместе с библиотекой stdPeriph: CMSIS+stdPeriph (Или с сайта с разделе Каталог файлов)
Создаём в папке с проектом папку main. В ней создаём текстовый файл, который сразу переименовываем в main.c.
Из скачанного архива из папки Librares копируем в папку с проектом 2 папки CMSIS и StdPeriph. Далее переименовываем уже имеющуюся группу в startup. Теперь щёлкаем по надписи Target 1 в keil, выбираем Add Group. Так создаём 3 группы. одну называем CMSIS, другую StdPeriph, третью user. В группу main добавляем файл main.c, а в группу CMSIS добавляем файл system_stm32f10x.c. В группу stdPeriph добавляем все файлы из папки STM32F4xx_StdPeriph_Driver\src. В итоге наш проект должен выглядеть так:



Теперь нужно прописать местоположение наших файлов в проекте. Щёлкаем правой кнопкой мыши по Target 1 и выбираем Options for Target "Target 1". Откроется окно вида:



Выбираем вкладку C/C++, Жмём на кнопку возле строки с надписью Include Paths. Там прописываем местоположение ваших добавленных файлов. Проще это делать нажимая на кнопку справа от строки, куда вы прописываете адрес. Должно получиться что-то типа такого:



Добавляем в него текст:
#include "stm32f4xx.h"
int main(void)
{

}

Пытаемся собрать нажав на F7.
Вылезет много ошибок. В папке с библиотекой CMSIS находим файл stm32f10x.h. Выделяем, жмём правую кнопку мыши, выбираем свойства. Там снимаем галочку "только чтение".
Теперь перезагрузите кейл, чтобы изменеия вступили в силу.
В keil возле main.c появится плюсик. Нажимаем на него и открываем файл stm32f10x.h.
В нём находим строки:

#if !defined (STM32F4XX) && !defined (STM32F40XX) && !defined (STM32F427X)
/* #define STM32F40XX */ /*!< STM32F40xx/41xx Devices */
/* #define STM32F427X */ /*!< STM32F427x/437x Devices*/
#endif

Тут надо раскомментировать строку:
/* #define STM32F40XX */ /*!< STM32F40xx/41xx Devices */

Это укажет на используемое устройство.

Теперь найдите строку: /*#define USE_STDPERIPH_DRIVER */

Если вы собираетесь использовать StdPeriph, то Вам надо раскомментировать эту строку. Иначе надо удалить раздел с подключенной библиотекой из программы.
Ещё стоит обратить внимание на строки:

#if !defined (HSE_VALUE)
#define HSE_VALUE ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
#endif /* HSE_VALUE */

Сюда пишется величина вашего кварцевого резонатора в герцах. В нашем случае это 8 МГц. В вашем скорее всего тоже.

Теперь в архиве с библиотеками найдите файл stm32f4xx_conf.h. Добавьте его в проект, например, к stdPeriph.
Всё. Теперь всё должно собраться. Мы подключили CMSIS и StdPeriph. Проект создан
Для stm32Discovery необходимо ещё настроить SWD. Для этого опять заходим в окно Options for Target "Target 1" выбираем debug, меняем точку с Use simulator на Use и в качестве то, что использовать выбираем ST-Link Debugger. Жмём Settings. Тут выбираем SWD и жмём Ок. Во вкладке Utilites также выбираем ST-Link Debugger. Жмём Ок. Теперь проект настроен. Можно писать программу.

Драйвера на ST-Link можно взять отсюда:
ST-Link

Категория: Уроки по программированию stm32f4xx | Добавил: Korvin (05.08.2013)
Просмотров: 6694 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]