реклама на сайте
подробности

 
 
> stm32f4discovery+scmRTOS4, Вопрос чайника: можно ли запустить?
Legath
сообщение May 11 2012, 11:04
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 30-12-10
Из: Рязань
Пользователь №: 61 958



Можно ли как то запустить версию порта от cortex-m3?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AHTOXA
сообщение May 11 2012, 11:09
Сообщение #2


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Можно, работает без каких-либо доработок.
Можете взять примеры для STM32F2XX (GCC), они вообще должны заработать сразу.

ЗЫ. Естественно, плавучку использовать можно только в одной задаче.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Legath
сообщение May 11 2012, 12:51
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 30-12-10
Из: Рязань
Пользователь №: 61 958



Цитата(AHTOXA @ May 11 2012, 15:09) *
Можно, работает без каких-либо доработок.
Можете взять примеры для STM32F2XX (GCC), они вообще должны заработать сразу.

ЗЫ. Естественно, плавучку использовать можно только в одной задаче.

А скрипт линковки какой взять? Из примеров платы или от ОС?
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение May 11 2012, 13:59
Сообщение #4


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



От ОС конечно. Прямо целиком пример берите.
Ну или могу выложить мигалку светодиодами непосредственно для STM32F4DISCOVERY. Надо?


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Nov 30 2012, 04:21
Сообщение #5


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(AHTOXA @ May 11 2012, 19:59) *
Ну или могу выложить мигалку светодиодами непосредственно для STM32F4DISCOVERY. Надо?

Меня тут в личке попросили всё же выложить пример. Выкладываю.
Прикрепленный файл  scmRTOS_stm32f4_sample.zip ( 137.74 килобайт ) Кол-во скачиваний: 325


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Pat
сообщение Nov 30 2012, 08:31
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480



Цитата(AHTOXA @ Nov 30 2012, 06:21) *
Меня тут в личке попросили всё же выложить пример. Выкладываю.
Прикрепленный файл  scmRTOS_stm32f4_sample.zip ( 137.74 килобайт ) Кол-во скачиваний: 325


Это я просил.
Спасибо огромное.
Думаю будет, Вам, общая благодарность, если найдете время допилить порт под F4.

Еще раз Спасибо.

Go to the top of the page
 
+Quote Post
viktory_93
сообщение Jun 19 2014, 14:48
Сообщение #7





Группа: Участник
Сообщений: 5
Регистрация: 15-06-14
Пользователь №: 81 956




Получилось примерно следущее в CoIDE
GCC HOME: C:\Program Files (x86)\GNU Tools ARM Embedded\4.8 2014q1\bin
compile:
[mkdir] Created dir: C:\CooCox\CoIDE\workspace\start_this\start_this\Debug\bin
[mkdir] Created dir: C:\CooCox\CoIDE\workspace\start_this\start_this\Debug\obj
[cc] 200
[cc] 9 total files to be compiled.
[cc] arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Wall -ffunction-sections -g -O0 -c -DSTM32F407VG -DSTM32F4XX -DSUPPORT_CPLUSPLUS -DUSE_STDPERIPH_DRIVER -D__ASSEMBLY__ -IC:\CooCox\CoIDE\workspace\start_this -IC:\CooCox\CoIDE\workspace\start_this\cmsis_boot -IC:\CooCox\CoIDE\workspace -IC:\CooCox\CoIDE C:\CooCox\CoIDE\workspace\start_this\OS_Kernel.cpp C:\CooCox\CoIDE\workspace\start_this\startup-stm32f4xx.c C:\CooCox\CoIDE\workspace\start_this\sys.c C:\CooCox\CoIDE\workspace\start_this\main.cpp C:\CooCox\CoIDE\workspace\start_this\OS_Target_asm.S C:\CooCox\CoIDE\workspace\start_this\OS_Services.cpp C:\CooCox\CoIDE\workspace\start_this\usrlib.cpp C:\CooCox\CoIDE\workspace\start_this\sysinit.cpp C:\CooCox\CoIDE\workspace\start_this\OS_Target_cpp.cpp
[cc] Starting link
[cc] arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -g -Wl,-Map=start_this.map -O0 -Wl,--gc-sections -LC:\CooCox\CoIDE\configuration\ProgramData\start_this -Wl,-TC:\CooCox\CoIDE\configuration\ProgramData\start_this/arm-gcc-link.ld -g -o start_this.elf ..\obj\OS_Kernel.o ..\obj\startup-stm32f4xx.o ..\obj\sys.o ..\obj\main.o ..\obj\OS_Target_asm.o ..\obj\OS_Services.o ..\obj\usrlib.o ..\obj\sysinit.o ..\obj\OS_Target_cpp.o -lm -lgcc -lc -lrdimon -lstdc++
[cc] ..\obj\sys.o: In function `__cxa_pure_virtual':
[cc] C:\CooCox\CoIDE\workspace\start_this/sys.c:15: multiple definition of `__dso_handle'
[cc] c:/program files (x86)/gnu tools arm embedded/4.8 2014q1/bin/../lib/gcc/arm-none-eabi/4.8.3/armv7e-m/crtbegin.o:(.data+0x0): first defined here
[cc] ..\obj\startup-stm32f4xx.o:(.isr_vector+0x0): undefined reference to `_estack'
[cc] ..\obj\startup-stm32f4xx.o: In function `__Init_Data':
[cc] C:\CooCox\CoIDE\workspace\start_this/startup-stm32f4xx.c:257: undefined reference to `__ctors_start__'
[cc] C:\CooCox\CoIDE\workspace\start_this/startup-stm32f4xx.c:257: undefined reference to `__ctors_end__'
[cc] ..\obj\main.o: In function `Pin<(char)68, 12, (char)72, (PinSpeed)3>::SetPullUp(PullUpMode)':
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 12, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 12, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 12, (char)72, (PinSpeed)3>::BBBits'
[cc] ..\obj\main.o: In function `Pin<(char)68, 13, (char)72, (PinSpeed)3>::SetPullUp(PullUpMode)':
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 12, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 13, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 13, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 13, (char)72, (PinSpeed)3>::BBBits'
[cc] ..\obj\main.o: In function `Pin<(char)68, 14, (char)72, (PinSpeed)3>::SetPullUp(PullUpMode)':
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 13, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 14, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 14, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 14, (char)72, (PinSpeed)3>::BBBits'
[cc] ..\obj\main.o: In function `Pin<(char)68, 15, (char)72, (PinSpeed)3>::SetPullUp(PullUpMode)':
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 14, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 15, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 15, (char)72, (PinSpeed)3>::BBBits'
[cc] C:\CooCox\CoIDE\workspace\start_this/pin_stm32F4xx.h:471: undefined reference to `Pin<(char)68, 15, (char)72, (PinSpeed)3>::BBBits'
[cc] ..\obj\main.o: In function `run':
[cc] C:\CooCox\CoIDE\workspace\start_this/OS_Kernel.h:646: undefined reference to `Pin<(char)68, 15, (char)72, (PinSpeed)3>::BBBits'
[cc] ..\obj\main.o: In function `OS::process<(OS::TPriority)2, 600u>::exec()':
[cc] C:\CooCox\CoIDE\workspace\start_this/main.cpp:67: undefined reference to `Pin<(char)68, 12, (char)72, (PinSpeed)3>::GPIOx'
[cc] C:\CooCox\CoIDE\workspace\start_this/main.cpp:67: undefined reference to `Pin<(char)68, 13, (char)72, (PinSpeed)3>::GPIOx'
[cc] C:\CooCox\CoIDE\workspace\start_this/main.cpp:67: undefined reference to `Pin<(char)68, 14, (char)72, (PinSpeed)3>::GPIOx'
[cc] C:\CooCox\CoIDE\workspace\start_this/main.cpp:67: undefined reference to `Pin<(char)68, 15, (char)72, (PinSpeed)3>::GPIOx
[cc] collect2.exe: error: ld returned 1 exit status
[cc] '

BUILD FAILED
Total time: 2 seconds
помогите исправить, пожалуйста

Сообщение отредактировал viktory_93 - Jun 19 2014, 14:49
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Jun 19 2014, 18:01
Сообщение #8


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Я не знаком с CoIDE. Судя по всему, в проект кроме стартапа от примера включен стартап от CooCox. Вот они и дерутся.
Нужно настроить проект на линковку без использования какого-либо стартапа.
И скрипт линкера не тот.

Ну а вообще, чтобы минимально зависеть от используемой IDE, надо делать так (только что проделал это на голой Win XP в виртуалке):
  1. Качаем и ставим свежий gcc-arm-embedded.
    (не забываем поставить птичку "добавить путь в PATH" или что-то типа того)
  2. Качаем нужные части из msys (не знаю, зачем они нашинковали их на столько кусочков, но уж как есть.):
    Распаковываем их все в папку "C:\Program Files\GNU Tools ARM Embedded\4.8 2014q2\"
    То есть, make.exe, sh.exe и прочие утилиты должны попасть в папку "C:\Program Files\GNU Tools ARM Embedded\4.8 2014q2\bin"
  3. Качаем и ставим svn.
  4. Пуск - выполнить - cmd.
    Там пишем:
    Код
    C:
    cd C:\
    mkdir test
    cd test
    svn checkout http://svn.code.sf.net/p/scmrtos/code/trunk/Samples/CortexM4F/GCC/STM32F4XX STM32F4XX
    cd STM32F4XX
    switch.bat
    cd 1-EventFlag
    make

    (Я всё это делаю в файловом менеджере Far, там работать с командной строкой значительно удобнее)
  5. Убеждаемся в том, что компиляция проходит без ошибок.
  6. Теперь настраиваем любую интегрированную среду разработки на использование makefile. Всё.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Legath   stm32f4discovery+scmRTOS4   May 11 2012, 11:04
|- - Legath   Цитата(AHTOXA @ May 11 2012, 17:59) От ОС...   May 11 2012, 15:31
||- - AHTOXA   Всегда пожалуйста Забыл написать. Если захотите ис...   May 11 2012, 17:52
||- - AHTOXA   Цитата(Pat @ Nov 30 2012, 14:31) Думаю бу...   Dec 2 2012, 12:09
||- - viktory_93   RE: stm32f4discovery+scmRTOS4   Jun 19 2014, 14:48
||- - viktory_93   Ура! Билдится! Спасибо Знать бы теперь как...   Jun 20 2014, 04:29
|- - viktory_93   Цитата(AHTOXA @ Nov 30 2012, 08:21) Меня ...   Jun 15 2014, 21:01
|- - AHTOXA   У Sourcery make называется cs-make. Исправьте в на...   Jun 16 2014, 04:58
- - Legath   еще глупый вопрос: почему когда в скрипте линковки...   May 17 2012, 20:51
|- - AHTOXA   Видимо потому, что верхние 64К - это некая CCM (co...   May 18 2012, 03:58
- - Legath   А там ошибки в sysinit нет? а то у меня возникла т...   May 18 2012, 13:37
|- - AHTOXA   На STM32F4DISCOVERY кварц 8МГц, а в примерах (они ...   May 18 2012, 16:39
- - Legath   Огромное спасибо за оперативную помощь по переходу...   May 18 2012, 18:26
- - IgorKossak   Я бы не стал ставить утилиты пакета MSYS в несвойс...   Jun 20 2014, 08:02
|- - Сергей Борщ   Цитата(IgorKossak @ Jun 20 2014, 11:02) а...   Jun 20 2014, 08:34
- - AHTOXA   Цитата(IgorKossak @ Jun 20 2014, 14:02) Я...   Jun 20 2014, 10:03
- - Сергей Борщ   Цитата(AHTOXA @ Jun 20 2014, 13:03) А чем...   Jun 20 2014, 10:16
|- - AHTOXA   Так их в любом случае придётся перечислять, из-за ...   Jun 20 2014, 11:09
- - IgorKossak   Цитата(AHTOXA @ Jun 20 2014, 13:03) Дело ...   Jun 20 2014, 11:26
- - AHTOXA   Цитата(IgorKossak @ Jun 20 2014, 17:26) m...   Jun 20 2014, 12:55
- - IgorKossak   Цитата(AHTOXA @ Jun 20 2014, 15:55) То ес...   Jun 20 2014, 13:16
- - AHTOXA   Цитата(IgorKossak @ Jun 20 2014, 19:16) О...   Jun 20 2014, 15:24
- - mdmitry   Цитата(IgorKossak @ Jun 20 2014, 17:16) О...   Jun 20 2014, 15:38
- - IgorKossak   Цитата(mdmitry @ Jun 20 2014, 18:38) P.S....   Jun 20 2014, 16:28


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th June 2025 - 01:00
Рейтинг@Mail.ru


Страница сгенерированна за 0.01471 секунд с 7
ELECTRONIX ©2004-2016