STM8L IAR создание проекта, настройка для использования SPL (Standard Peripheral Library) и загрузка в контроллер stm8l051f3 первой программы.
Ссылка на видео в YouTubeПрежде чем начнём создавать новый проект мы должны будем скачать с официального сайта STM(Home-STMicroelectronics) SPL(стандартная периферийная библиотека), как это сделать показано в видео справа(жми YouTube).
Ссылка на видео в YouTubeВидео по созданию проекта и подключение к нему стандартной периферийной библиотеки, ссылка справа.
Теперь когда у нас имеется библиотека можем начать. В любом удобном для вас месте создаём папку и называем её как вам угодно только на английском языке, лучше сокращение проекта, у меня будет так.
В общей папке(Project IAR STM8L) для всех проектов создаю ещё папку(stm8l_TEST) где и будет наш проект с нужными файлами.
Запускаем программу IAR и создаём новый проект поэтапно как показано ниже.
Наводим мышь на Project и выбираем Greate New Project...
Выбираем C жмём OK
Придумываем имя проекту и жмём Сохранить
Проект собрался, осталось подключить SPL
В папке stm8l_TEST для файлов Standard Peripheral Library создаём папку с названием SPL и для дополнительных файлов папку INC.
Распаковываем архив с SPL ранее скаченный с сайта STM, у меня для контроллера stm8l051f3 он называется en.stsw-stm8016_v1.6.2.zip.
Из распакованного архива, из папки Libraries→STM8L15x_StdPeriph_Driver копируем в проект в папку SPL две папки inc и src.
Должно получится так
Из распакованного архива, из папки Project→STM8L15x_StdPeriph_Template копируем три файла stm8l15x_conf.h, stm8l15x_it.c, stm8l15x_it.h в проект в папку INC. Должно быть так
Все нужные файлы в проекте, осталось настроить среду.
Первым делом выбираем нужный контроллер из списка для компилятора.
Для этого выделяем название проекта правой кнопкой мыши и левой открываем меню настроек. Жмём на General Options, нажимаем на иконку в виде списка и выбираем нужный контроллер, и жмём на OK.
Теперь пропишем пути к нашим файлам, что бы компилятор знал где их искать при сборке проекта.
Жмём на название проекта, выбираем C/C++Compiler, жмём на квадратик с точками и в проводнике выбираем пути, просто открыв папку с нужными файлами. Когда все пути будут выбраны жмём на OK и ещё OK.
Также пропищим определения компилятору для использования SPL, что бы не править файлы. Но сначала в код добавим строку #include "stm8l15x.h" и жмём на компиляцию проекта, что бы создался файл Workspace, назовём его как и проект project_test.
Компилятор просит сохранить для отладки файл, придумываем ему имя и жмём на OK.
Происходит компиляция проекта и возникают ошибки, не обращаем на них внимание.
Нажмём левой кнопкой мыши на название файла в #include"stm8l15x.h", что бы курсор остался между букв названия и жмём правую кнопку мыши где выбираем Open "stm8l15x.h". Откроется файл, в котором находим подходящее определение для нашего контроллера и что мы хотим использовать Standard Peripheral Library.
Библиотека создана для множества моделей контроллеров поэтому нужно выбрать подходящее определение для своего контроллера, у меня stm8l051f3 и более подходящее для него это STM8L05X_LD_VL.
Определение для использования SPL.
Открываем прежние настройки, но нам понадобится окно Defined symbols:(one per line) и вставляем туда оба наши определения, каждое определение должно быть написано в новой строке, должно получится так.
Осталось добавить исполнительные файлы в Workspace, для этого создаём две группы SPL и INC. В SPL будут храниться исполнительные файлы для стандартной периферийной библиотеке, а в INC вспомогательные.
Будет так.
В группу INC из папки INC(находится в проекте) копируем следующие файлы.
В группу SPL также копируем файлы только из папки SPL→src.
Должно получится так.
Проект настроен и пробуем скомпилировать тот код, который есть, жмём на кнопку как на рисунке ниже.
Если сборка проекта прошла удачно и у вас вот такое окно, то продолжаем, если выскочили ошибки, то проверяем всё по этапно.
Отключаем отладку, жмём на красный кружок с крестиком вверху.
Осталось переключить отладчик с режима симуляции на программирование через ST-LINK.
Выбираем ST-LINK и жмём на OK, теперь сможем прошить через программатор.
Схема для подключения программатора со светодиодом и демонстративная прошивка, на всякий случай.
Как всегда, пример программы с миганием светодиода.
#include "stm8l15x.h"
int main( void ){
GPIO_Init(GPIOB, GPIO_Pin_1, GPIO_Mode_Out_PP_High_Fast);
while(1){
for(uint16_t i=0; i<50000; i++);
GPIO_ToggleBits(GPIOB, GPIO_Pin_1);
}
return 0;
}