Създаване на проект в Keil vision5
Аз самият съм начинаещ в този въпрос, ако опиша нещо нередно, моля, не ритайте много)
Преди да работя със STM микроконтролери, изучавах усилено AVR. След като закупих първата си платка STM32f3discovery, първият ми проект, разбира се, беше да мигам светодиоди. Мислех да се прибера, да го включа и веднага да започна да програмирам и да правя всякакви проекти там без никакви проблеми. Но го нямаше. След създаването на проекта непрекъснато излизаха всякакви грешки, компилаторът постоянно се кълнеше в липсващите файлове.
Най-честата грешка беше нещо подобно:
След много опити най-накрая успях да установя причината за всичките си неуспехи. По-долу са няколко стъпки, които предприема, за да създам проект. Тези стъпки ще улеснят създаването на вашите първи проекти на семейството микроконтролери STM32.
Средата Keil има свои собствени "вътрешни" файлове, които използва по подразбиране. Например файлове, отговарящи за конфигурацията на периферни устройства и т.н. За да може компилаторът да използва пропуснатите файлове, трябва да направите
1. Първа стъпка - изтеглете конфигурационните файлове на контролера
За да настроите първия си проект, първо трябва да изтеглите архива за вашата конкретна платка от официалния уебсайт
За моята платка STM32f3Discovery изтеглих архива с примери от връзката
След това разопаковайте този архив.
2. Създайте папки за проекти
След това в папката на проекта създайте 4 папки
- cmsis - папка, съдържаща конфигурационни файлове на микроконтролера;
- pl - папка с файлове на периферии;
- user - потребителска папка, тук е основният изпълним файл;
- стартиране - първоначална инициализация /
За мен изглежда така:
3. Създайте подобни групи в среда Keil u vision
По същия начин в нашияпроект създаваме групи с еднакви имена. Можете да дадете всякакви имена, но за да не се объркате, е по-добре да използвате същите имена като самите папки.
Важно е да разберете, че създаването на група в проект не създава подобни папки в папката на проекта, а просто групиране на изпълними файлове.

4. Копирайте необходимите файлове в папките на проекта
След това трябва да копираме следните файлове от нашия предварително изтеглен архив.
В папката cmsis следните 3 файла:
- "F:\Projects\STM32\Ex4\cmsis\system_stm32f30x.c"
- "F:\Projects\STM32\Ex4\cmsis\system_stm32f30x.h"
- "F:\Проекти\STM32\Ex4cmsis\stm32f30x.h"
Файлът stm32f30x.h е файлът, необходим за конфигуриране на микроконтролера.
В папката pl две папки от STM32F30x_StdPeriph_Driver са
inc и src, които съдържат куп файлове за работа с периферни устройства.
Също така в папката pl трябва да копирате файла stm32f30x_conf.h от всеки проект.
В резултат на това имаме:
- "F:\Проекти\STM32\Ex4\pl\stm32f30x_conf.h"
- "F:\Projects\STM32\Ex4\pl\inc\има куп h файлове"
- "F:\Projects\STM32\Ex4\pl\src\ има куп c файлове"
Копирайте следния файл в папката за стартиране
В потребителската папка създайте нашия изпълним файл main.c
5. Добавяне на файлове към проекта
В средата на Keil трябва да добавим някои файлове към създадените групи.
- Добавете един файл system_stm32f30x.c към cmsis групата;
- В групата pl всички C-файлове на периферията от папката src;
- В групата за стартиране файлът startup_stm32f30x.s;
- И в потребителската папка създаваме ръчно файла main.c.
На този етап изглежда така:

6. Най-важните етапи от създаването на проект
В резултат на това Keil започва да използва вашиякопирани файлове.
7. Добавете базова стандартна библиотека към проекта
За да добавите тази библиотека, трябва да изберете елемента Run-TimeEnviroment в мениджъра на проекти и да поставите отметка в квадратчето CMSIS.

След това отворете нашия main.c и компилирайте, ако няма грешки. Така че проектът е конфигуриран правилно.