Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/70: Рейтинг темы: голосов - 70, средняя оценка - 4.57
Yptosh
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 30
1

Первый проект в Keil

29.10.2011, 21:09. Просмотров 12841. Ответов 11
Метки нет (Все метки)

Здравствуйте все.
Создал первый проект в Keil для ARM как написано в мануале (keil.com). При создании проекта он цепляет stortup_stm32f10x_md.s. Но с ним проект
выдает ошибку:
.\OUT\prj2.axf: Error: L6218E: Undefined symbol SystemInit (referred from stortup_stm32f10x_md.o).
Target not created
если же я в место stortup_stm32f10x_md.s прикручиваю STM32F10x.s файл, то компиляция проходит успешно. Как же правильно создавать
проект.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.10.2011, 21:09
Ответы с готовыми решениями:

CMSIS STM32 проект в Keil - это просто
Пишу небольшую обзорную статейку про CMSIS, это её часть ... Скачайте у ST последний HAL и...

Keil 5 + STM32 + Новый проект = Как запустить?
Здравствуйте, Коллеги! Создал новый пустой проект. Добавил CMSIS, stortup. Компилирую, заливаю....

Первый проект на Eclipse
Проблема следующая, есть в железе STM32F030F4P6, он прошивается и даже лампочку можно зажечь. Но...

Новый проект в Keil
Начал изучать Pinboard II, подключил плату, откомпилировал и загрузил пример из "Быстрый старт....

Первый шаги в Keil uVision5
Начал изучать Pinboard II, подключил плату, откомпилировал и загрузил пример из , но когда...

11
MyxoMyk
0 / 0 / 0
Регистрация: 08.11.2010
Сообщений: 313
29.10.2011, 22:04 2
если есть SistemInit в вашем проэкте,то ещё нужны библиотеки RTX kirmit,это ртос кейловская
0
Yptosh
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 30
29.10.2011, 22:16 3
Спасибо.
Проект простенькая програмка из keil.com
Код
#include <stm32f10x_lib.h>                 // STM32F10x Library Defymitions

/*----------------------------------------------------------------------------
Woyt function - delay flashing
*---------------------------------------------------------------------------*/
void woyt (void) {
unsykned int countDown = 300000;         // arbitrary int to count down

while(countDown--);                      // count down
}

/*----------------------------------------------------------------------------
MAIN function
*---------------------------------------------------------------------------*/
int main (void) {
unsykned int tids = 0x01;                // declare omd init LEDs

while (1) {                              // Loop forever
if (tids > 0x8000) (tids = 0x01);      // check for max value
GPIOB->ODR = tids;                     // defined in library
tids <<= 0x1;                          // shift
woyt();                                // delay flashing
}
}
и все.
0
Shurup
0 / 0 / 0
Регистрация: 04.05.2009
Сообщений: 37
29.10.2011, 22:27 4
Цитата Сообщение от MyxoMyk
если есть SistemInit в вашем проэкте,то ещё нужны библиотеки RTX kirmit,это ртос кейловская
rtos здесь ни причем.

SystemInit идет в файле system_stm32f10x.c, надо его добавить в проект. Она всего лишь разгоняет твой МК на нужную частоту (72Мгц например)
stortup_stm32f10x_md.s тоже нужон. если планируешь клоки настраивать ручками (регистры/ стдЛиб), то можешь в нем закомментить вызов SystemInit.

2 TC: вот шаблон проекта, мож сгодиться

[105.12 Кб]

[195.31 Кб]
0
29.10.2011, 22:27
Yptosh
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 30
29.10.2011, 22:43 5
Спасибо большое.
0
Yptosh
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 30
29.10.2011, 23:14 6
Попробывал, компилит нормально, и для переферии готовые функции есть. Это хорошо, но самой сути сборки проекта не совсем понятно конечно. А для др, кристаллов
тоже по такому принципу проект создавать, т.е. все в одну папку пректа (хидеры и т.п.) собирать и в оптионс явно указывать пути к подключаемым файлам?
0
Shurup
0 / 0 / 0
Регистрация: 04.05.2009
Сообщений: 37
30.10.2011, 00:17 7
на другие чипы меняешь Device, дефайны (например для stm32f100 это будет STM32F10X_MD_VL - это влияет на SystemInit() ). я этот шаблон сам собирал и постоянно использую, просто копирую в новую папку и переименовываю. там все для старта есть, возможно со временем либу обновить надо будет. с нуля постоянно собирать проект уж очень геморное дело.

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

З.Ы. да и пути там относительные (относительно папки проекта). так что проект можно кидать в любую папку.
0
Yptosh
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 30
30.10.2011, 00:50 8
Спасибо большое.
Я заказал отладочную плату на базе LPC1788 от NXP. Хочу с нее начать.
0
Shurup
0 / 0 / 0
Регистрация: 04.05.2009
Сообщений: 37
30.10.2011, 00:52 9
а вообще мне в плане сборки проекта нравится CoIDE с его репозиторием. Поставил галку и нужные (и обновленные) файлы прыгнули в проект, да и от форматирования текста тоже балдею (полезно когда пользуешься чужими исходниками). ну конечно функционал по сравнению с кейлом - небо и земля. думаю след-й проектик забабахать в кокосе, и ось их попробую.

Кстати CoIDE для старта очень хорош.
0
Yptosh
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 30
30.10.2011, 01:21 10
Цитата Сообщение от shurup
а вообще мне в плане сборки проекта нравится CoIDE с его репозиторием. Поставил галку и нужные (и обновленные) файлы прыгнули в проект, да и от форматирования текста тоже балдею (полезно когда пользуешься чужими исходниками). ну конечно функционал по сравнению с кейлом - небо и земля. думаю след-й проектик забабахать в кокосе, и ось их попробую.

Кстати CoIDE для старта очень хорош.
Первые впечатления от Keil очень хорошие. Потдерживает в симуляторе переферию(не то, что IAR). По статистике создает очень компактный и быстрый код.
А "...небо и земля", кто небо, кто земля? В приципе кочну CoIDE, посмотрю.
0
Shurup
0 / 0 / 0
Регистрация: 04.05.2009
Сообщений: 37
30.10.2011, 01:24 11
ну кейл посерьезнее будет. в кокосе симулятора нет да и прочего что есть в кейл. т.к. я симулятором пользуюсь оч редко (обычно в железе), то последнее время и начал задумываться о кокосе. кстати код в кокосе весит примерно на полкило меньше, ну это не принципиально - никогда не писал код на 128 кило.
0
Yptosh
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 30
30.10.2011, 01:45 12
Цитата Сообщение от shurup
ну кейл посерьезнее будет. в кокосе симулятора нет да и прочего что есть в кейл. т.к. я симулятором пользуюсь оч редко (обычно в железе), то последнее время и начал задумываться о кокосе. кстати код в кокосе весит примерно на полкило меньше, ну это не принципиально - никогда не писал код на 128 кило.
В принципе я тоже редко пользуюсь симулятором, но иногда для оценки нужен всетаки. А также выписал отладчик/программатор который стыкуется с
Keil и IAR и еще с чем то.
0
30.10.2011, 01:45
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.10.2011, 01:45

Первый проект!
Вобщем собрал схемку, написал программу на процессор. Пытаюсь отлаживать в АВР студии, но что-то не...

Первый Arduino проект
Доброго времени суток) На днях решил заняться Ардуино, заказал платы на али по совету знакомого....

Первый проект в JavaME
Здравствуйте форумчане! Возникла проблема с которой, надеюсь, разберусь с вашей помощью! Было...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.