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

 
 
> CodeBlocks - неведомые ошибки
Ekka
сообщение Feb 13 2018, 09:26
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Привет, форум) Битый день сижу над ошибками CodeBlocks! И не могу понять, откуда оно вообще лезет.
Пытаюсь собрать проектик на CodeBlocks уже готовый, но вылетают неведомые мне ошибки.
Что может значить такая вот ошибка?

Код
C:\Users\F1DB~1\AppData\Local\Temp\ccrGumQB.s|35|Error: no such instruction: `mrs %eax,ipsr'|


Если у кого-то есть эта среда, я могу кинуть проект вам, может у вас скомпилируется((( Мне всего лишь нужны файлы .hex и .bin.
Помогите кто-нибудь( ПОЖАЛУЙСТА( smile3046.gif


Ой, немного не в ту тему ... ну может модераторы перенесут потом

Сообщение отредактировал Ekka - Feb 13 2018, 09:27
Go to the top of the page
 
+Quote Post
4 страниц V   1 2 3 > »   
Start new topic
Ответов (1 - 52)
mcheb
сообщение Feb 13 2018, 09:55
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 326
Регистрация: 30-05-06
Пользователь №: 17 602



1 путь, самый правильный. В свойствах проекта указать ( поставить галочку ) Custom makefile. Под свой процессор и компилятор найти Makefile и отредактировать его.
2 й путь. В свойствах компилятора прописать правильные пути к exe файлам, типа /usr/bin/arm-none-eabi-gcc и т.д. CodeBlocks идёт с arm-linux-gcc
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 13 2018, 10:09
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Цитата(mcheb @ Feb 13 2018, 10:55) *
1 путь, самый правильный. В свойствах проекта указать ( поставить галочку ) Custom makefile. Под свой процессор и компилятор найти Makefile и отредактировать его.
2 й путь. В свойствах компилятора прописать правильные пути к exe файлам, типа /usr/bin/arm-none-eabi-gcc и т.д. CodeBlocks идёт с arm-linux-gcc


Вот дело в том, что все пути к exe-никам у меня прописаны, компилятор MinGW

и все равно C:\Users\F1DB~1\AppData\Local\Temp\ccMmmQR2.s|35|Error: no such instruction: `mrs %eax,ipsr'|

Мне от этого проекта нужен пока только hex или bin файл... Потом проект не нужен будет, и меняться скорее всего тоже не будет. У кого-нибудь установлен нормально CodeBlocks?

Сообщение отредактировал Ekka - Feb 13 2018, 10:13
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 13 2018, 11:24
Сообщение #4


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 13 2018, 12:09) *
У кого-нибудь установлен нормально CodeBlocks?

Так выложите проект, попробуем скомпилировать.
У меня есть старенький CodeBlocks, иногда применяю для консольных приложений для Windows.
Установлен по-умолчанию, картинка как ваша, один-в-один. Только первый путь без \bin
C:\Program Files\CodeBlocks\MinGW
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 13 2018, 11:52
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Цитата(Baser @ Feb 13 2018, 12:24) *
Так выложите проект, попробуем скомпилировать.
У меня есть старенький CodeBlocks, иногда применяю для консольных приложений для Windows.
Установлен по-умолчанию, картинка как ваша, один-в-один. Только первый путь без \bin
C:\Program Files\CodeBlocks\MinGW


Объемный наверное, сейчас



Попробую через облако, сейчас кину ссылку

Проект

Тут в "Проект" весь проект с библиотеками
Путь к проекту YAPLC\yaplc_ide\YAPLC\RTE-master\projects\yaplc-runtime


Сообщение отредактировал Ekka - Feb 13 2018, 11:55
Прикрепленные файлы
Прикрепленный файл  RTE_master.rar ( 280.22 килобайт ) Кол-во скачиваний: 9
 
Go to the top of the page
 
+Quote Post
mcheb
сообщение Feb 13 2018, 12:02
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 326
Регистрация: 30-05-06
Пользователь №: 17 602



А при чём здесь ARM?
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 13 2018, 12:17
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Как при чем?
Эту прошивку нужно собрать и залить в stm32f4... По инструкции((( Просто не в ту тему топик


Из "Поддержки" ответили на мои вопросы, как связать YAPLC-IDE c stm32f4, и в первых рядах - собрать эту несчастную прошивку и влить в МК( но в этом у меня затор уже на несколько дней... вот и сижу...кукую

У Вас тоже не собирается?
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 13 2018, 12:31
Сообщение #8


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Во-первых, там в архиве 7 разных тестовых проектов.
Во-вторых, проекты под АРМ.
Стандартная инсталляция CodeBloks с MinGW включает GCC компилятор для x86 ядер, у меня она стоит и хорошо компилирует для Windows.
Как я понимаю, компилятора для APM у меня в CodeBloks нет, поэтому ничего и не собирается.

Ищите инсталляцию CodeBloks с GCC for ARM
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 13 2018, 13:24
Сообщение #9


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



А почему у меня в выпадающем списке компиляторов нет GNU ARM GCC Compiler ? Как это исправить, чтобы он появился в списке

А почему у меня в выпадающем списке компиляторов нет GNU ARM GCC Compiler ? Как это исправить?
Подключился GNU ARM, но чистый проект теперь вот ругается... Ну на что он еще может ругаться?



Настроено так:





Сообщение отредактировал Ekka - Feb 13 2018, 13:23
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 13 2018, 13:27
Сообщение #10


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 13 2018, 15:02) *
А почему у меня в выпадающем списке компиляторов нет GNU ARM GCC Compiler ? Как это исправить, чтобы он появился в списке

У меня в выпадающем списке компиляторов GNU ARM GCC Compiler как раз есть, но это только перечень поддерживаемых.
Еще раз: в инсталляции его нет.

Как это исправить? Например, набрать в Гугле "codeblocks arm"
и почитать ссылки.
Скачать, установить и работать - я не пробовал, но в Гугле говорят, что это возможно rolleyes.gif
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 13 2018, 13:32
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Цитата(Baser @ Feb 13 2018, 14:27) *
У меня в выпадающем списке компиляторов GNU ARM GCC Compiler как раз есть, но это только перечень поддерживаемых.
Еще раз: в инсталляции его нет.

Как это исправить? Например, набрать в Гугле "codeblocks arm"
и почитать ссылки.
Скачать, установить и работать - я не пробовал, но в Гугле говорят, что это возможно rolleyes.gif


А какая у вас версия Code Blocks?
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 13 2018, 13:42
Сообщение #12


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 13 2018, 15:32) *
А какая у вас версия Code Blocks?

У меня старая 13.12 с MinGW, в ней ни одного компилятора кроме x86 нет.
codeblocks-13.12mingw-setup.exe

Больше ничем помочь не могу, с АРМ из-под CodeBlocks не работал.
Go to the top of the page
 
+Quote Post
Vitaly
сообщение Feb 13 2018, 13:44
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 17-06-05
Пользователь №: 6 095



Есть готовая сборка CodeBlocks для работы с ARM - https://www.embitz.org
Работает из коробки, компилятор armgcc встроенный, STM32 поддерживает
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 14 2018, 14:36
Сообщение #14


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Цитата(Vitaly @ Feb 13 2018, 14:44) *
Есть готовая сборка CodeBlocks для работы с ARM - https://www.embitz.org
Работает из коробки, компилятор armgcc встроенный, STM32 поддерживает

но в ней не соберешь проект с расширением .cbp...? crying.gif
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 14 2018, 21:29
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Ekka @ Feb 13 2018, 12:09) *
и все равно C:\Users\F1DB~1\AppData\Local\Temp\ccMmmQR2.s|35|Error: no such instruction: `mrs %eax,ipsr'|

Команда вроде ARM-овская, а регистр - x86. Каша какая-то там у Вас... wacko.gif
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 15 2018, 08:38
Сообщение #16


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (jcxz @ Feb 14 2018, 23:29) *
Команда вроде ARM-овская, а регистр - x86.
все нормально - код inline asm компилится под неродную архитектуру.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 15 2018, 09:10
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Сергей Борщ @ Feb 15 2018, 10:38) *
все нормально - код inline asm компилится под неродную архитектуру.

Файл-то с расширением "s" - это нативный asm, а не inline asm. Или думаете - там компиляция си через промежуточный asm и трансляцию его затем?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 15 2018, 10:42
Сообщение #18


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (jcxz @ Feb 15 2018, 11:10) *
Или думаете - там компиляция си через промежуточный asm и трансляцию его затем?
Я не думаю - старые gcc делали именно так. Полагаю, что и новые тоже.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 15 2018, 11:31
Сообщение #19


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



ТС даже не смог выложить нужные файлы проекта, ибо в том, что он выложил, включая архив на 100Мег с громадной коллекцией всяческого софта и демо проектов, я не нашел папки libremodbus c нужными библиотеками.
А без них я даже не смог получить те ошибки, о которых ТС спрашивает...

И сначала он явно пытался собрать АРМ проект компилятором для x86, хотя CodeBlocks упирался и говорил:
хочу compiler="armnoneeabigcc" !!! biggrin.gif
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 20 2018, 06:22
Сообщение #20


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Компилятор все же подключился) И начал компилировать. Возник другой вопрос:
КАК библиотеку Libopencm3 подключить к своему проекту? И что с ней вообще делать?
ЕЕ собрать нужно сначала? Построить? Как ее заcтавить работать в CODE BLOCK??
Пробовалось так:
1)файлы из папки include библиотеки скопировать в папку include компилятора
2)Тоже проделать с папкой lib.

Но при попытке собрать проект - файл nvic.h для stm32f4 должен создаваться на этапе компиляции, а он не создается(

Цитата(Ekka @ Feb 20 2018, 07:16) *
Компилятор все же подключился) И начал компилировать. Возник другой вопрос:
КАК библиотеку Libopencm3 подключить к своему проекту? И что с ней вообще делать?
ЕЕ собрать нужно сначала? Построить? Как ее заcтавить работать в CODE BLOCK??
Пробовалось так:
1)файлы из папки include библиотеки скопировать в папку include компилятора
2)Тоже проделать с папкой lib.

Но при попытке собрать проект - файл nvic.h для stm32f4 должен создаваться на этапе компиляции, а он не создается(


И да... мои попытки заставить проект собираться без указания нужного компилятора - лажа... простите, вродь разобралсё)
В проекте не было в стандартных нужного мне компилятора, пришлось скопировать настройки GNU GCC for ARM и в поля ексешников добавить все для arm-none-eabi-gcc.
Все подключилось.

Файлы библиотеки нужно было добавить в папки компилятора, ибо путь до них он не находил ни при каких раскладах.
Теперь находит.
Но в топиках по темам liboprncm3 обнаружилось, что библиотеку сначала нужно...эм..СОБРАТЬ отдельно?
файлы .a, файлы nvic.h для stm-ов, их нет в библиотеке и некоторые форумчане говорят, что эти файлы создаются при компиляции.
Как правильно подключить библиотеку?

И да... вот те файлы, которых недостает
Если еще какие-то попросит, говорите, может, я не все перекидываю, у меня фырчит только на libopencm3 и matiec

ссылка
библиотеки

Сообщение отредактировал Ekka - Feb 20 2018, 06:50
Прикрепленные файлы
Прикрепленный файл  projectRTE.rar ( 264.27 килобайт ) Кол-во скачиваний: 11
 
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 20 2018, 08:44
Сообщение #21


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Библиотека собралась через консоль...) все файлы создались... Но.. ОПЯТЬ...что это за штука(

C:\Users\F1DB~1\AppData\Local\Temp\ccKP6878.s|67|Error: selected processor does not support requested special purpose register -- `mrs r3,ipsr'|
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 20 2018, 13:04
Сообщение #22


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Нужно в настройках компилятора указать [mcpu=cotrex-m3]...
Но этот проект все равно не але...
Что с ним... cranky.gif

cranky.gif cranky.gif cranky.gif

Может,я пропускаю какой-то шаг?... smile3046.gif smile3046.gif smile3046.gif
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 20 2018, 18:22
Сообщение #23


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Попробовал собрать ваш проект:
нагромождение файлов и библиотек чудовищное...

Так и не смог найти файлов CMSIS, где определяются номера векторов прерываний:
NVIC_USART1_IRQ
NVIC_TIM7_IRQ

До ваших ошибок добраться так и не получилось...

Применять open source "навалом", а не "из коробки" - это не для слабых духом... smile3046.gif
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 21 2018, 11:51
Сообщение #24


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Цитата(Baser @ Feb 20 2018, 19:22) *
Попробовал собрать ваш проект:
нагромождение файлов и библиотек чудовищное...

Так и не смог найти файлов CMSIS, где определяются номера векторов прерываний:
NVIC_USART1_IRQ
NVIC_TIM7_IRQ

До ваших ошибок добраться так и не получилось...

Применять open source "навалом", а не "из коробки" - это не для слабых духом... smile3046.gif


Удалось исправить предыдущие ошибки...
Кто-то знает, что это?
Что за несоответствие?

Код
||=== Build: Debug in yaplc_runtime (compiler: GNU ARM GCC Compiler) ===|
||error: bin\Debug\yaplc_runtime.elf uses VFP register arguments, c:/program files/gnuarm/bin/../lib/gcc/arm-none-eabi/4.8.4\libgcc.a(bpabi.o) does not|
||error: bin\Debug\yaplc_runtime.elf uses VFP register arguments, c:/program files/gnuarm/bin/../lib/gcc/arm-none-eabi/4.8.4\libgcc.a(_divdi3.o) does not|
||error: bin\Debug\yaplc_runtime.elf uses VFP register arguments, c:/program files/gnuarm/bin/../lib/gcc/arm-none-eabi/4.8.4\libgcc.a(_udivdi3.o) does not|
||error: ld returned 1 exit status|
||=== Build failed: 4 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|


Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 21 2018, 13:09
Сообщение #25


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Это ошибки, связанные с компилятором?...


А еще, Baser, Вы говорили, что у Вас нет файла с NVIC-ками... вот архив с библиотекой, где он есть
libopencm3_build


Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 21 2018, 13:17
Сообщение #26


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 20 2018, 08:22) *
1)файлы из папки include библиотеки скопировать в папку include компилятора
2)Тоже проделать с папкой lib.

Это плохое решение. Так же как и правка файлов проекта с указанием полного пути для включаемых файлов.
В свойствах проекта есть спец. окно, куда можно добавить пути к папкам, где компилятору дополнительно нужно искать требуемые файлы.

Цитата
Но при попытке собрать проект - файл nvic.h для stm32f4 должен создаваться на этапе компиляции, а он не создается(

На этапе компиляции файлы не создаются. Этого файла в библиотеках просто нет, он должен идти от производителя, т.е. STM (Как я понял, вы его нашли)

Цитата(Ekka @ Feb 21 2018, 13:51) *
Кто-то знает, что это?

[code]||=== Build: Debug in yaplc_runtime (compiler: GNU ARM GCC Compiler) ===|
||error: bin\Debug\yaplc_runtime.elf uses VFP register arguments, c:/program files/gnuarm/bin/../lib/gcc/arm-none-eabi/4.8.4\libgcc.a(bpabi.o) does not|

Вопросов про "uses VFP register arguments" в интернете много, говорят, что нужно смотреть конфигурацию FPU
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 21 2018, 13:21
Сообщение #27


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Цитата(Baser @ Feb 21 2018, 14:17) *
Это плохое решение. Так же как и правка файлов проекта с указанием полного пути для включаемых файлов.
В свойствах проекта есть спец. окно, куда можно добавить пути к папкам, где компилятору дополнительно нужно искать требуемые файлы.


На этапе компиляции файлы не создаются. Этого файла в библиотеках просто нет, он должен идти от производителя, т.е. STM (Как я понял, вы его нашли)


Вопросов про "uses VFP register arguments" в интернете много, говорят, что нужно смотреть конфигурацию FPU



Да...на этот счет уже просмотрено... а где эту конфигурацию смотреть? В Makefile? или во флагах компилятора?
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 21 2018, 13:37
Сообщение #28


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 21 2018, 13:51) *
Что за несоответствие?
Код
||=== Build: Debug in yaplc_runtime (compiler: GNU ARM GCC Compiler) ===|
||error: bin\Debug\yaplc_runtime.elf uses VFP register arguments, c:/program files/gnuarm/bin/../lib/gcc/arm-none-eabi/4.8.4\libgcc.a(bpabi.o) does not|

Эта ошибка говорит о том, что объектные модули проекта скомпилированы с применением аппаратного модуля FPU,
а библиотеки попытались прицепить, где модуль FPU не применялся. Ессно, это работать не будет, поэтому ошибка.

Цитата(Ekka @ Feb 21 2018, 15:21) *
а где эту конфигурацию смотреть? В Makefile? или во флагах компилятора?

Ошибка была в опциях линкера в файле проекта yaplc-runtime.cbp. Если опции компилятора были все на месте:
Код
<Compiler>
    <Add option="-mthumb" />
    <Add option="-mcpu=cortex-m4" />
    <Add option="-mfloat-abi=hard" />
    <Add option="-mfpu=fpv4-sp-d16" />

То в опциях линкера отсутствовала последняя опция. Добавьте её в секцию линкера и проект соберется:
Код
-------------- Build: Debug in yaplc_runtime (compiler: GNU GCC Compiler for ARM)---------------

Output file is bin\Debug\yaplc_runtime.elf with size 400.05 KB
Running project post-build steps
arm-none-eabi-size bin\Debug\yaplc_runtime.elf
   text       data        bss        dec        hex    filename
  22392         28       3444      25864       6508    bin\Debug\yaplc_runtime.elf
Process terminated with status 0 (0 minute(s), 10 second(s))
0 error(s), 0 warning(s) (0 minute(s), 10 second(s))


з.ы. компилятор последний: 4.9.3
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 22 2018, 12:49
Сообщение #29


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Цитата(Baser @ Feb 21 2018, 14:37) *
з.ы. компилятор последний: 4.9.3


не могу найти установочник этого компилятора

Сообщение отредактировал IgorKossak - Feb 22 2018, 18:30
Причина редактирования: бездумное цитирование
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 22 2018, 12:59
Сообщение #30


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 22 2018, 14:49) *
не могу найти установочник этого компилятора

Официальный сайт: GNU Arm Embedded Toolchain
Название у него другое: gcc-arm-none-eabi-7-2017-q4-major
а версию при компиляции выдал 4.9.3

ваш же был ненамного старее (4.8.4), разве с ним не получается?
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 22 2018, 13:23
Сообщение #31


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Да что за...ничего не собирается

Мне для тупых, ну или для очень "в танке" по шагам расскажите, как Вы смогли собрать эту штуку, может, у меня уже глаза замылились....
Что Вы конкретно делали?
smile3046.gif

и, если можно, скиньте в топик, пожалуйста, hex или bin файл, который получился


Я не могу вдуплить, ЧТО не так делаю...
Скажите, пожалуйста, те файлы, которые от меня сюда были кинуты,
как Вы их подключали, имею ввиду библиотеку libopencm3 matiec, к самому проекту,
и насчет компилятора: устанавливаем, потом в компиляторах прописываем путь к папке bin и если надо выбираем эксешники,
в настройках проекта выбираем нужный нам компилятор.

Может, я туплю опять... О_О
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 22 2018, 13:28
Сообщение #32


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Файлы могу только вечером выложить, на работе их нет.

А по процессу: по этому топику:
- последний ваш архив проекта
- последний архив libopencm3
- открываю проект, начинаю компилировать и разгребать ошибки о ненайденных файлах:
нахожу все файлы, настраиваю/правлю все пути
- докидываю пару стандартных хидеров из библ. matiec

наконец с файлами все, получаю ошибки "uses VFP register arguments"

- нотепадом правлю файл проекта CodeBlocks, и оно собирается wink.gif

з.ы. ненавижу опен-сорсе в таком виде:
"тут играть, тут не играть, тут мы рыбу заворачивали..." (с) biggrin.gif
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 22 2018, 13:30
Сообщение #33


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



название оправдывает себя YA PLACAL
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 22 2018, 13:39
Сообщение #34


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Поскольку вы получили ошибки "uses VFP register arguments" - а это ошибки линкера,
то вы в шаге от успеха, у вас все файлы найдены и откомпилированы.

Нужно только добавить опцию линкера -mfpu=fpv4-sp-d16

Но не исключено, что ваша версия компилятора о ней еще не знает...
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 22 2018, 13:53
Сообщение #35


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



как прописать путь к этой библиотеке, у меня ни в какую не находит

..\..\..\libopencm3\lib\libopencm3_stm32f4.a||No such file or directory|
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 22 2018, 14:03
Сообщение #36


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 22 2018, 15:53) *
как прописать путь к этой библиотеке, у меня ни в какую не находит

..\..\..\libopencm3\lib\libopencm3_stm32f4.a||No such file or directory|

Я правил нотепадом прямо в файле проекта yaplc-runtime.cbp
там этот путь в опциях линкера:
<Add library="../../../libopencm3/lib/libopencm3_stm32f4.a" />

Та версия CodeBlocks, что у меня, не могла корректно отобразить это все в своих ГУИшных окнах, старая очень,
поэтому только прямая правка проекта...
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 22 2018, 14:23
Сообщение #37


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Наконец-то проект собрался, но hex файл не появился
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 22 2018, 18:01
Сообщение #38


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 22 2018, 16:23) *
Наконец-то проект собрался, но hex файл не появился

Зато elf файл появился.
В пакете компилятора есть утилита для конвертации.
Можно ее запускать автоматически после линковки в Post-build steps:
arm-none-eabi-objcopy -O ihex "${TARGET_OUTPUT_FILE}.elf" "${TARGET_OUTPUT_FILE}.hex"
можно в ручную после.
Держите файлы, выглядит похоже на прошивку для АРМа sm.gif
Прикрепленный файл  yaplc_runtime.zip ( 28.24 килобайт ) Кол-во скачиваний: 14
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 22 2018, 21:32
Сообщение #39


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Baser @ Feb 22 2018, 20:01) *
Держите файлы, выглядит похоже на прошивку для АРМа sm.gif

Столько страниц мучений из-за дохлых ~15кБ кода smile3046.gif
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 22 2018, 22:05
Сообщение #40


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(jcxz @ Feb 22 2018, 23:32) *
Столько страниц мучений из-за дохлых ~15кБ кода smile3046.gif

Как я понял помогая мимоходом, это только загрузчик и типа операционки.
Потом этот прошитый Сортекс-М4 нужно подключать по УАРТу к IDE типа Beremiz и уж потом "как-бы программировать" как ПЛК
Это фирма Нуклерон удружила своим потребителям такой набор "легко-применяемого" бесплатного open-source софта разработки.
Причем собрать его нужно самим из разных концов интернета smile3046.gif

Думаю, это только начало мучений ТС sm.gif
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 23 2018, 08:52
Сообщение #41


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Да,вы правы, это только начало мучений... Мне и вправду ещё прошивать, подключать по уарту, а потом в yaplc ide программировать. НО. Уважаемый Baser, премного Вас благодарю, мне без Вашей помощи было бы ещё пилить и пилить. Большое спасибо за действенные советы и Ваше время! 1111493779.gif


Если теперь кому-то нужно будет, может просто себе hex залить) Аж завидно) две с половиной недели плясок с бубном для таких новичков как я. ЯплакалЬ. rolleyes.gif
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 23 2018, 11:01
Сообщение #42


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (Ekka @ Feb 23 2018, 10:52) *
две с половиной недели плясок с бубном для таких новичков как я. ЯплакалЬ. rolleyes.gif
Возможно, у вас недостаточный уровень базовых знаний для этой задачи? И стоит не плакать, а садиться за учебники?

Ну не придумали еще для "молодых, амбициозных, желающих творчески расти" универсальную оболочку с большой зеленой кнопкой "СДЕЛАТЬ ХОРОШО!", пока еще приходится работать самому.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 27 2018, 11:23
Сообщение #43


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Блин(
среда YAPLC-IDE
Компилятор опять не может собрать файлы? Чего ему не хватает?

Код
c:/program files/gnu tools arm embedded/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: cannot open linker script file C:\Program Files\YAPLC\IDE\yaplctargets\yaplc\..\..\..\yaplc\src\plc_runtime\bsp/nuc-227-dev/stm32f4disco-app.ld: Invalid argument
collect2.exe: error: ld returned 1 exit status
make: *** [yaplc] Ошибка 1


Это уже попытки собрать в ide

Сообщение отредактировал Ekka - Feb 27 2018, 12:02
Go to the top of the page
 
+Quote Post
mcheb
сообщение Feb 27 2018, 12:20
Сообщение #44


Местный
***

Группа: Участник
Сообщений: 326
Регистрация: 30-05-06
Пользователь №: 17 602



ld.exe: cannot open linker script file stm32f4disco-app.ld
В этом файле прописываются адреса памяти, стэка и флэша
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 27 2018, 13:29
Сообщение #45


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Цитата(mcheb @ Feb 27 2018, 12:20) *
ld.exe: cannot open linker script file stm32f4disco-app.ld
В этом файле прописываются адреса памяти, стэка и флэша


удаляю этот файл из папки, он его где-то все равно находит.
Как мне понять, по какому пути лежит файл?

Дело в том, что он не может найти путь к файлу .Id, где этот путь прописывается???

путь указан в файлах питона... не знаю питон(((
путь-то меняю, а как этот файл питонячий перекомпилить понятия не имею
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 27 2018, 18:01
Сообщение #46


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (Ekka @ Feb 27 2018, 15:29) *
Дело в том, что он не может найти путь к файлу .Id,
Файл называется "точка лд", а не "точка Ид".


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 27 2018, 18:41
Сообщение #47


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Feb 27 2018, 15:29) *
Как мне понять, по какому пути лежит файл?

Дело в том, что он не может найти путь к файлу .Id, где этот путь прописывается???

А чем не нравится путь, который вам говорит линкер?
Цитата(Ekka @ Feb 27 2018, 13:23) *
C:\Program Files\YAPLC\IDE\yaplctargets\yaplc\..\..\..\yaplc\src\plc_runtime\bsp/nuc-227-dev/stm32f4disco-app.ld

Найдите средствами Виндовс файл stm32f4disco-app.ld у себя на диске и положите его туда, где его хочет видеть линкер.

А где прописываются пути, так поищите глобальным поиском по файлам проекта из ИДЕ,
и в самом файле проекта из Виндовс. Больше фантазии sm.gif
Go to the top of the page
 
+Quote Post
Ekka
сообщение Feb 28 2018, 10:55
Сообщение #48


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



ВСЕ ЭТО было испробовано до того, как был задан вопрос( Иначе зачем его надо было задавать....


и вправду глаз замылился... пропустилась у меня одна папочка... добавляю, теперь все собралось, простите за тупые вопросы) rolleyes.gif
Go to the top of the page
 
+Quote Post
Ekka
сообщение Mar 6 2018, 14:42
Сообщение #49


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Привет всем... Этот Code Block страшная штука... Путь до отладчика указан правильно, находит, но не могу понять, какая конкретно ошибка происходит и почему отладчик не запускается???
Код
Active debugger config: GDB/CDB debugger:Default
Building to ensure sources are up-to-date
Selecting target:
Debug
Adding source dir: bin/Debug
Adding source dir: E:\rte\projects\yaplc-runtime\
Adding source dir: E:\rte\
Adding file: E:\rte\projects\yaplc-runtime\bin\Debug\yaplc_runtime.elf
Changing directory to: E:/rte/projects/yaplc-runtime/.
Set variable: PATH=.;E:\fpu;C:\Program Files\GNU Tools ARM Embedded\bin;C:\Program Files\GNU Tools ARM Embedded;C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem;C:\ProgramData\Oracle\Java\javapath;D:\Новая папка\asm;C:\Windows\System32\WindowsPowerShell\v1.0;D:\CoIDE\gcc\bin;D:\TortoiseHg;C:\Windows\System32\config\systemprofile\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm;C:\Program Files\Microsoft SQL Server\120\Tools\Binn;C:\Program Files\Windows Kits\8.1\Windows Performance Toolkit;C:\GnuWin32\bin;C:\Program Files\GNUARM\bin;C:\Python27;C:\msys\1.0\bin

[debug]Command-line: C:\Program Files\GNU Tools ARM Embedded\bin\arm-none-eabi-gdb.exe -nx -fullname -quiet  -args E:/rte/projects/yaplc-runtime/bin/Debug/yaplc_runtime.elf
[debug]Working dir : E:\rte\projects\yaplc-runtime

Starting debugger: C:\Program Files\GNU Tools ARM Embedded\bin\arm-none-eabi-gdb.exe -nx -fullname -quiet  -args E:/rte/projects/yaplc-runtime/bin/Debug/yaplc_runtime.elf
done

[debug]> set prompt >>>>>>cb_gdb:

Connecting to remote target
Setting breakpoints

[debug]Reading symbols from E:/rte/projects/yaplc-runtime/bin/Debug/yaplc_runtime.elf...done.
[debug](gdb) >>>>>>cb_gdb:
[debug]> show version
[debug]GNU gdb (GNU Tools for ARM Embedded Processors) 7.8.0.20150604-cvs
[debug]Copyright (C) 2014 Free Software Foundation, Inc.
[debug]License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
[debug]This is free software: you are free to change and redistribute it.
[debug]There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
[debug]and "show warranty" for details.
[debug]This GDB was configured as "--host=i686-w64-mingw32 --target=arm-none-eabi".
[debug]Type "show configuration" for configuration details.
[debug]For bug reporting instructions, please see:
[debug]<http://www.gnu.org/software/gdb/bugs/>.
[debug]Find the GDB manual and other documentation resources online at:
[debug]<http://www.gnu.org/software/gdb/documentation/>.
[debug]For help, type "help".
[debug]Type "apropos word" to search for commands related to "word".
[debug]>>>>>>cb_gdb:
[debug]> set confirm off

Debugger name and version: GNU gdb (GNU Tools for ARM Embedded Processors) 7.8.0.20150604-cvs

[debug]>>>>>>cb_gdb:
[debug]> set width 0
[debug]>>>>>>cb_gdb:
[debug]> set height 0
[debug]>>>>>>cb_gdb:
[debug]> set breakpoint pending on
[debug]>>>>>>cb_gdb:
[debug]> set print asm-demangle on
[debug]>>>>>>cb_gdb:
[debug]> set unwindonsignal on
[debug]>>>>>>cb_gdb:
[debug]> set print elements 200
[debug]>>>>>>cb_gdb:
[debug]> set new-console on
[debug]No symbol "new" in current context.
[debug]>>>>>>cb_gdb:
[debug]> set disassembly-flavor att
[debug]No symbol "disassembly" in current context.
[debug]>>>>>>cb_gdb:
[debug]> catch throw
[debug]Catchpoint 1 (throw)
[debug]>>>>>>cb_gdb:
[debug]> directory bin/Debug
[debug]Source directories searched: E:\rte\projects\yaplc-runtime/bin/Debug;$cdir;$cwd
[debug]>>>>>>cb_gdb:
[debug]> directory E:/rte/projects/yaplc-runtime/
[debug]Source directories searched: E:/rte/projects/yaplc-runtime;E:\rte\projects\yaplc-runtime/bin/Debug;$cdir;$cwd
[debug]>>>>>>cb_gdb:
[debug]> directory E:/rte/
[debug]Source directories searched: E:/rte;E:/rte/projects/yaplc-runtime;E:\rte\projects\yaplc-runtime/bin/Debug;$cdir;$cwd
[debug]>>>>>>cb_gdb:
[debug]> target remote tcp:127.0.0.1:4242
[debug]tcp:127.0.0.1:4242: Попытка объединить диск с папкой на объединенном диске.
[debug]>>>>>>cb_gdb:

Connected

[debug]> continue
[debug]The program is not being run.
[debug]>>>>>>cb_gdb:

The program is not being run.

[debug]> quit

Debugger finished with status 0


Что это за
Код
Попытка объединить диск с папкой на объединенном диске.


ошибка?

Как мне понять, по какому локальному порту надо подключаться?
локалхост 127.0.0.1... но порт 4242 у меня даже через telnet не открывается... Что это вообще за штука и зачем?


Сообщение отредактировал Ekka - Mar 6 2018, 13:54
Go to the top of the page
 
+Quote Post
Ekka
сообщение Mar 7 2018, 13:02
Сообщение #50


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Ребят, те у кого этот проект собрался, возникала ли проблема с отладкой?
Go to the top of the page
 
+Quote Post
Baser
сообщение Mar 7 2018, 13:29
Сообщение #51


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Ekka @ Mar 6 2018, 16:42) *
Этот Code Block страшная штука...

Зря вы так все валите на CodeBlocks, он тут совсем ни причем, ибо CodeBlocks это IDE - оболочка с продвинутым редактором и средствами запуска сторонних программ.
А работаете вы с GNU Tools for ARM Embedded Processors, куда входят компилятор GCC for ARM и отладчик GNU gdb.
А CodeBlocks просто позволяет с ними работать в графическом оконном виде.
Точно так же вы можете все это запускать под популярной Eclipse или NetBeans (на которой Microchip свою MPLAB-X поддерживает).

Так что вам нужно упоминание CodeBlocks опустить в фон, а напирать на "как работать с отладкой в GNU GDB под Windows".

Цитата(Ekka @ Mar 6 2018, 16:42) *
Как мне понять, по какому локальному порту надо подключаться?
локалхост 127.0.0.1... но порт 4242 у меня даже через telnet не открывается... Что это вообще за штука и зачем?

Вы бы написали, какое сейчас у вас "железо", через что оно подключается к ПК и т.д. А то совсем ничего не понятно, что вы сейчас делаете sm.gif
Никогда с этими вещами не работал, но быстрое гугление говорит о том, что GDB с железом при отладке работает через локальный сервер, так что что-то нужно настраивать sm.gif

Go to the top of the page
 
+Quote Post
Ekka
сообщение Mar 13 2018, 13:13
Сообщение #52


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Все норм, утилита нужна была st_util... Надо было установить


Вот тут написано как
Go to the top of the page
 
+Quote Post
Ekka
сообщение Mar 20 2018, 13:59
Сообщение #53


Частый гость
**

Группа: Участник
Сообщений: 164
Регистрация: 12-04-16
Из: Белгород
Пользователь №: 91 250



Ребята, я все сюда же:

Кто-то когда-нибудь пользовался этой инструкцией для подключения к беремизу?

Код
Using stm32f4-discovery board
Target "yaplc" can be used to build and upload aplication to the board.

If you want to run it, then folow these steps:

Build yaplc-runtime project and load it to the board (I do it with st-util on debug session start, I think OpenOCD may also be used).
Create a project with "yaplc" target,
build it,
connect to your target (see https://github.com/nucleron/RTE/blob/master/src/bsp/nuc-227-dev/plc_config.h#L27 for details)
and transfer aplication.
Now you can program your discovery board with YAPLC/IDE.
And yes, to use YAPLC/IDE with stock discovery you should connect Boot0 and VDD pins with jumper just before pressing "Transfer PLC" button in YAPLC/IDE.

When aplication has been loaded - disconnect Boot0 from VDD.


Если да, то как оно у Вас заработало???
Битую неделю сижу - ноль.
Разрабы толком объяснить не могут, что у меня не работает
Go to the top of the page
 
+Quote Post

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

 


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


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