Процесс, в целом похож на создание проекта для STM32F4Discovery. Создавать проект буду в Кейле, это, особенно для начинающих, просто.
У меня стоит uVision 4.54 (evaluation которая), для обучения её хватит с лихвой. Но если интересуют другие IDE, у ST есть мануал, как создавать проект в четырёх самых популярных средах. Под них же, кстати, сделаны проекты во всех примерах.
читать дальшеСперва, если Кейл установлен впервые, стоит поменять кодировку редактора:
1. Edit->Configuration...
2. Вместо ANSI выбрать UTF-8. Это позволит писать комментарии на русском. Если вы этого не делаете, то настройку можно не менять.
А теперь можно и создавать проект:
1. Project->New uVision Project. Среда предложит сохранить файл проекта в папку, по имени файла проект и будет называться.
2. Выбор контроллера: STMicroelectronics->STM32F051R8. Именно он установлен.
3. Среда предложит скопировать загрузочный файл startup_stm32f0xx.s. Нет нужды не соглашаться с ней.
4. В свойствах проекта, на вкладке Target я поставил галочку Microlib, чтоб библиотека была такая же, как и раньше. Размеры сегментов и их адреса уже проставлены.
5. В соседних вкладках Output и Listing я сразу указываю папку, куда кейл будет сбрасывать объектные файлы и прочие дела. Не здорово, когда он захламляет корневую папку проекта (делаю папочку build).
6. На вкладке Debug задаётся отладчик. Можно эмулятор запускать, но лучше сразу отлаживать на платке: ST-Link Debugger, в его настройках выбирается протокол SW вместо JTAG. При этом в поле SW Device появится акое-то число и надпись ARM CoreSight SW-DP. В тех же настройках отладчика на вкладке Flash Download стоит выбрать (если это ещё не сделано автоматически) STM32F05x Flash.
7. На вкладке Utilites тоже надо поменять драйвер на ST-Ling Debugger.
8. Осталось создать файл кода с двумя функциями main и SystemInit. Причём, язык не важен: хоть си, хоть ассемблер. Я исходники помещаю в папочку source. И надо не забыть добавить файл после сохранения в проект, чтобы Кейл знал, что его тоже компилировать надо.
9. При первой попытке загрузки кода или отладки, ст-линк попросит обновить прошивку. Не стоит отказываться. После окошка с просьбой переподключить, переподключите отладочную плату. После чего никаких окошек не будет и отладчик обновится без проблем.
Например, на си:
Проект должен собраться. Пока что он абсолютно бесполезен и ничего не делает. Но зато он есть и собирается =)
На асме я писал это для STM32F4. Но чуть позже напишу проект и на ассемблере, где покажу отличия от F4.
Если Кейл достаточно старый (он должен хотя бы знать о Cortex-M0), то можно выбрать это ядро, а остальные настройки забить вручную.
Они, в основном, заключаются в сегментах памяти:
Флеш: смещение 0x08000000, размер 0x10000;
SRAM: смещение 0x20000000, размер 0x2000;
Ещё можно задать путь к файлу sfr, где расписаны все регистры периферии (на базе CMSIS-SVD). Оно позволит смотреть в специальном окошке (View->System Viewer->...), где что записано. В новом кейле файл stm32f0xx.sfr уже есть. В старом не знаю, не знаю и понимает ли он такие файлы, вроде, стандарт недавний.
Единственное, что старый Кейл может не знать о способах прошивки этих контроллеров, потому придётся это делать через стороннюю программу. Или обновлять Кейл.
Про создание проекта для STM32F4Discovery я уже писал, там же и примеры ряда программок несложных на си и ассемблере.
Проект.
Следующее >>
STM32F0. Создание проекта в Keil
Процесс, в целом похож на создание проекта для STM32F4Discovery. Создавать проект буду в Кейле, это, особенно для начинающих, просто.
У меня стоит uVision 4.54 (evaluation которая), для обучения её хватит с лихвой. Но если интересуют другие IDE, у ST есть мануал, как создавать проект в четырёх самых популярных средах. Под них же, кстати, сделаны проекты во всех примерах.
читать дальше
Следующее >>
У меня стоит uVision 4.54 (evaluation которая), для обучения её хватит с лихвой. Но если интересуют другие IDE, у ST есть мануал, как создавать проект в четырёх самых популярных средах. Под них же, кстати, сделаны проекты во всех примерах.
читать дальше
Следующее >>