Эта тема
- Везде
-
- Эта тема
- Этот форум
-
- Расширенный поиск
Поиск
Error 40 bad instruction iar
shedon |
|
|||
Эксперт Профиль Репутация: 6
в IAR v4.02, всё нормально компилируется и работает, но я попытался перенести проект под компилятор IAR v5.40, но не тут-то было, он мне выдал непонятные сообщения об ошибках в этом файле, вот они:
в чём может быть проблемма ? |
||||
|
PILOT |
|
||
производство Профиль Репутация: 20 Уверен, что qch_exp, qch_exp1 существуют? |
|||
|
shedon |
|
||
Эксперт Профиль Репутация: 6 |
|||
|
PILOT |
|
||
производство Профиль Репутация: 20 Проставь нуменрацию строк, а то не понятно где конкретно ругань.. |
|||
|
shedon |
|
||
Эксперт Профиль Репутация: 6 |
|||
|
PILOT |
|
||
производство Профиль Репутация: 20 Вот например в Кейле есть установки компилятора и линковщика: AX51 и A51
На данный раздел помимо Правил форума распространяются текже следующие правила:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi. Источник Читайте также: Бесчиповая прошивка для epson xp 3100 Adblock
|
I’m trying to compile a project for school, which all my fellow classmates have no trouble compiling. This assignment is nothing more than dragging already written source code and compiling an, already proven to be a working, program.
I have added the file startup_stm32f30x.s from ST Microelectronics website, as per instructions in my school assignment, and i have not modified it at all. When i hit Rebuild all IAR gives errors on basically everything assembler.
For example:
AREA
, SPACE
, PROC
and ENDP
gives Error[40] Bad Instruction.
EXPORT Reset_Handler [WEAK]
gives Error[0] Invalid syntax
ALIGN
gives a rather verbose error called
Error[413]: ‘ALIGN’ is illegal. Use directive ALIGNROM or ALIGNRAM (the first parameter is raised to the power of 2, the second is a 32-bit fill value).
I am right at the start of the course, and i am not supposed to yet be able to handle, and/or find solutions beyond your ye olde «Gosh! I forgot to plug the cable in».
Does anyone have an idea of where to continue now? I will happily supply whatever more information is needed to understand my problem, but please be patient with me being a noob on these things!
Форум РадиоКот • Просмотр темы — STM32, IAR и прерывания
Сообщения без ответов | Активные темы
ПРЯМО СЕЙЧАС: |
Автор | Сообщение |
---|---|
|
Заголовок сообщения: Re: STM32, IAR и прерывания
|
Мучитель микросхем
Карма: 11 Рейтинг сообщения: 0
|
А таблица прерываний в свою очередь описана в startup файле (что нибудь типа startup_stm32f10x_ld.s). Названия в этом файле и название функции обработчика должны совпадать. |
Вернуться наверх |
Профиль
|
Реклама | |
|
|
Satyr |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 26 Рейтинг сообщения: 0
|
Galizin писал(а): Особое внимание нужно обратить на Illegal unaligned load or store. Данные должны быть выравнены на свою длину. То есть адрес перемененной длиной 2 байта должен быть кратен 2. 4 байта — 4. Эта особенность arm не всем известна. Начиная с ARMv6 не должны. |
||
Вернуться наверх | |||
Реклама | |
|
|
Satyr |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 26 Рейтинг сообщения: 0
|
Обычно хардфаюлт просто — в таблице прерываний мусор или паддинг, разрешается прерывание, по таблицы попадает мимо памяти -))) |
||
Вернуться наверх | |||
bishop-strip |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
Зарегистрирован: Чт окт 28, 2010 11:20:39 Рейтинг сообщения: 0
|
Товарищи, так почему сий код работает в атоллике, а в IAR нет?! |
Вернуться наверх | |
Реклама | |
|
Выгодные LED-драйверы для решения любых задач КОМПЭЛ представляет со склада и под заказ широкий выбор LED-драйверов производства MEAN WELL, MOSO, Snappy, Inventronics, EagleRise. Линейки LED-драйверов этих компаний, выполненные по технологии Tunable White и имеющие возможность непосредственного встраивания в систему умного дома (димминг по шине KNX), перекрывают практически полный спектр применений: от простых световых указателей и декоративной подсветки до диммируемых по различным протоколам светильников внутреннего и наружного освещения. Подобрать LED-драйвер>> |
bishop-strip |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
Зарегистрирован: Чт окт 28, 2010 11:20:39 Рейтинг сообщения: 0
|
Satyr писал(а): Обычно хардфаюлт просто — в таблице прерываний мусор или паддинг, разрешается прерывание, по таблицы попадает мимо памяти -))) Тогда как мне очистить этот мусор? |
Вернуться наверх | |
Реклама | |
|
|
Реклама | |
|
LIMF – источники питания High-End от MORNSUN со стандартным функционалом на DIN-рейку На склад Компэл поступили ИП MORNSUN (крепление на DIN-рейку) с выходной мощностью 240 и 480 Вт. Данные источники питания обладают 150% перегрузочной способностью, активной схемой коррекции коэффициента мощности (ККМ; PFC), наличием сухого контакта реле для контроля работоспособности (DC OK) и возможностью подстройки выходного напряжения. Источники питания выполнены в металлическом корпусе, ПП с компонентами покрыта лаком с двух сторон, что делает ее устойчивой к соляному туману и пыли. Изделия соответствуют требованиям ANSI/ISA 71.04-2013 G3 на устойчивость к коррозии, а также нормам ATEX для взрывоопасных зон. Подробнее>> |
Satyr |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 26 Рейтинг сообщения: 0
|
Посмотри, что там в самом начале памяти при дебаге ? |
||
Вернуться наверх | |||
Satyr |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 26 Рейтинг сообщения: 0
|
bishop-strip писал(а): Товарищи, так почему сий код работает в атоллике, а в IAR нет?! Не код, а обрывок кода Хоче, клади тут ИАРный проект, ща заценим |
||
Вернуться наверх | |||
bishop-strip |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
Зарегистрирован: Чт окт 28, 2010 11:20:39 Рейтинг сообщения: 0
|
Satyr писал(а): bishop-strip писал(а): Товарищи, так почему сий код работает в атоллике, а в IAR нет?! Не код, а обрывок кода Хоче, клади тут ИАРный проект, ща заценим Да дело в том, что пустой проект, есть только маин и эти функции))) |
Вернуться наверх | |
Satyr |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 26 Рейтинг сообщения: 0
|
добавь в проект. |
||
Вернуться наверх | |||
bishop-strip |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
Зарегистрирован: Чт окт 28, 2010 11:20:39 Рейтинг сообщения: 0
|
Satyr писал(а): добавь в проект. Добавлял уже, ругается на все строчки, видимо компилятор не понимает АСМ, может есть настройки проекта для асма? |
Вернуться наверх | |
Satyr |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 26 Рейтинг сообщения: 0
|
bishop-strip писал(а): Satyr писал(а): добавь в проект. Добавлял уже, ругается на все строчки, видимо компилятор не понимает АСМ, может есть настройки проекта для асма? Конечно. глянул начало тему — у тебя ж STM32F101V8 |
||
Вернуться наверх | |||
bishop-strip |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
Зарегистрирован: Чт окт 28, 2010 11:20:39 Рейтинг сообщения: 0
|
Всем еще раз огромное спасибо! |
Вернуться наверх | |
Satyr |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 26 Рейтинг сообщения: 0
|
bishop-strip писал(а): Мораль сей басни такова, что ATOLLIC’у хорошо, IAR’у — смерть! Не скажу за атоллик, хотя сильно подозреваю -)) |
||
Вернуться наверх | |||
dosikus |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 30 Рейтинг сообщения: 0
|
bishop-strip писал(а): Мораль сей басни такова, что ATOLLIC’у хорошо, IAR’у — смерть! Если Вы и далее будете совершать ритуальные танцы вместо планомерного изучения , Вас ожидает еще масса удивительных «открытий». |
||
Вернуться наверх | |||
Satyr |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 26 Рейтинг сообщения: 0
|
Дело не в компиляторах. Еще и открытый насквозь — сам можешь описания, лодеры к любым новым чипам писать. К отладчику плагины и т.д. и т.п. Можно ВСЁ |
||
Вернуться наверх | |||
dosikus |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 30 Рейтинг сообщения: 0
|
Satyr писал(а): Дело не в компиляторах. А толку от этих визардов ? |
||
Вернуться наверх | |||
dm#2 |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
Зарегистрирован: Ср авг 21, 2013 19:57:51 Рейтинг сообщения: 1
|
Недавно столкнулся с подобной проблемой: прерывание генерируется (флаг прерывания установлен), однако в функцию-обработчик прерывания программа не попадает, застревает в стартап фаиле в строчке с названием этои функции-обработчика (в моем случае «B EXTI0_IRQHandler»). Проблема решилась переключением языка компилятора с «C++» на «C» в настройках проекта (Project -> Options… -> C/C++ compiler -> Language 1 -> галочку на «С»). |
Вернуться наверх | |
Chip115 |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 4 Рейтинг сообщения: 0
|
dm#2 писал(а): Проблема решилась переключением языка компилятора с «C++» на «C» в настройках проекта (Project -> Options… -> C/C++ compiler -> Language 1 -> галочку на «С»). Ай, спасибо тебе за это сообщение! Я вторые сутки голову ломал, почему же ничего не работает! Как вообще это могло повлиять на работу программы? |
||
Вернуться наверх | |||
Myp3ik |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 6 Рейтинг сообщения: 0
|
Потому что забыли сказать компилятору, что это Си функция Код: extern «C» { |
||
Вернуться наверх | |||
Chip115 |
Заголовок сообщения: Re: STM32, IAR и прерывания
|
||
Карма: 4 Рейтинг сообщения: 0
|
Myp3ik писал(а): Потому что забыли сказать компилятору, что это Си функция Код: extern «C» { Спасибо за разъяснение )) |
||
Вернуться наверх | |||
Кто сейчас на форуме |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7 |
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения |
Какой используете IDE? Например для IAR`а есть такое описание проблемы:
Error[40]: Bad instruction (EWARM 5.x & 6.x)EW targets: ARM
EW component: Assembler
Keywords: Migration
Last update: November 18, 2010
Background
There are major changes in the EWARM between version 4.x and version 5.x. The link to the right give some more information.
The diagnostic
Error[40]: Bad instruction
will be generated for all assembler directives that has been removed from version 5 of the IAR ARM assembler.
Solution
Double click on the error message to see which directive that generated your error. When the directive is found you can have a look in the «ARM IAR Embedded Workbench Migration Guide» to see how to replace this directive.
Migration
It is also highly recommended that you have a look at the «The migration process» in the above guide. This will give you a good picture of what has to be done to migrate from version 4 to version 5 of the ARM IAR Embedded Workbench
то есть вы, насколько я понимаю, вы пытаетесь запустить «старый» проект в новой версии IDE
I ran configure with the following option:
./configure --target=armv5tel CC=arm-linux-gnueabi-gcc --host=i686-linux
then ran make
I encountered the following error:
m_cpuid.S: Assembler messages:
m_cpuid.S:40: Error: bad instruction `pushl %ebp'
m_cpuid.S:41: Error: bad instruction `movl %esp,%ebp'
m_cpuid.S:42: Error: bad instruction `pushl %ecx'
m_cpuid.S:43: Error: bad instruction `pushfl'
m_cpuid.S:44: Error: bad instruction `pushfl'
m_cpuid.S:45: Error: bad instruction `popl %eax'
m_cpuid.S:46: Error: bad instruction `movl %eax,%ecx'
m_cpuid.S:47: Error: bad instruction `xorl $0x200000,%eax'
m_cpuid.S:48: Error: bad instruction `pushl %eax'
m_cpuid.S:49: Error: bad instruction `popfl'
m_cpuid.S:50: Error: bad instruction `pushfl'
m_cpuid.S:51: Error: bad instruction `popl %eax'
m_cpuid.S:52: Error: bad instruction `popfl'
m_cpuid.S:53: Error: bad instruction `xorl %ecx,%eax'
m_cpuid.S:54: Error: bad instruction `andl $0x200000,%eax'
m_cpuid.S:55: Error: bad instruction `shrl $21,%eax'
m_cpuid.S:56: Error: bad instruction `popl %ecx'
m_cpuid.S:57: Error: bad instruction `movl %ebp,%esp'
m_cpuid.S:58: Error: bad instruction `popl %ebp'
m_cpuid.S:59: Error: bad instruction `ret'
m_cpuid.S:76: Error: bad instruction `pushl %ebp'
m_cpuid.S:77: Error: bad instruction `movl %esp,%ebp'
m_cpuid.S:78: Error: bad instruction `pushl %eax'
m_cpuid.S:79: Error: bad instruction `pushl %ebx'
m_cpuid.S:80: Error: bad instruction `pushl %ecx'
m_cpuid.S:81: Error: bad instruction `pushl %edx'
m_cpuid.S:82: Error: bad instruction `pushl %esi'
m_cpuid.S:83: Error: bad instruction `movl 8(%ebp),%eax'
m_cpuid.S:84: Error: bad instruction `cpuid'
m_cpuid.S:85: Error: bad instruction `movl 12(%ebp),%esi'
m_cpuid.S:86: Error: bad instruction `testl %esi,%esi'
m_cpuid.S:87: Error: bad instruction `jz 1f'
m_cpuid.S:88: Error: bad instruction `movl %eax,(%esi)'
m_cpuid.S:90: Error: bad instruction `movl 16(%ebp),%esi'
m_cpuid.S:91: Error: bad instruction `testl %esi,%esi'
m_cpuid.S:92: Error: bad instruction `jz 2f'
m_cpuid.S:93: Error: bad instruction `movl %ebx,(%esi)'
m_cpuid.S:95: Error: bad instruction `movl 20(%ebp),%esi'
m_cpuid.S:96: Error: bad instruction `testl %esi,%esi'
m_cpuid.S:97: Error: bad instruction `jz 3f'
m_cpuid.S:98: Error: bad instruction `movl %ecx,(%esi)'
m_cpuid.S:100: Error: bad instruction `movl 24(%ebp),%esi'
m_cpuid.S:101: Error: bad instruction `testl %esi,%esi'
m_cpuid.S:102: Error: bad instruction `jz 4f'
m_cpuid.S:103: Error: bad instruction `movl %edx,(%esi)'
m_cpuid.S:105: Error: bad instruction `popl %esi'
m_cpuid.S:106: Error: bad instruction `popl %edx'
m_cpuid.S:107: Error: bad instruction `popl %ecx'
m_cpuid.S:108: Error: bad instruction `popl %ebx'
m_cpuid.S:109: Error: bad instruction `popl %eax'
m_cpuid.S:110: Error: bad instruction `movl %ebp,%esp'
m_cpuid.S:111: Error: bad instruction `popl %ebp'
m_cpuid.S:112: Error: bad instruction `ret'
m_cpuid.S:154: Error: junk at end of line, first unrecognized character is `,'
make[3]: *** [libcoregrind_x86_linux_a-m_cpuid.o] Error 1
make[3]: Leaving directory `/home/swathi/Desktop/valgrind-3.6.0/coregrind'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/swathi/Desktop/valgrind-3.6.0/coregrind'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/swathi/Desktop/valgrind-3.6.0'
make: *** [all] Error 2
Am I missing something?
swathi
Форум программистов Vingrad
Модераторы: PILOT, ManiaK, Mazzi |
Поиск: |
|
Опции темы |
shedon |
|
||
Эксперт Профиль
Репутация: 6
|
есть программа написанная для компилятора IAR v4.02, сама программа написана на си, но есть один файл с кодом на асм, вот он:
в чём может быть проблемма ? ——————— Programming is like sex: One mistake and you have to support it your lifetime |
||
|
|||
PILOT |
|
||
производство Профиль
Репутация: 20
|
Уверен, что qch_exp, qch_exp1 существуют? СУВ. ——————— тут могла быть Ваша реклама… |
||
|
|||
shedon |
|
||
Эксперт Профиль
Репутация: 6
|
Существуют, ведь в IAR v4.02, эта программа работала, а еслиб не существовали, то этоб уже линкер ругался, а не компилятор. ——————— Programming is like sex: One mistake and you have to support it your lifetime |
||
|
|||
PILOT |
|
||
производство Профиль
Репутация: 20
|
Проставь нуменрацию строк, а то не понятно где конкретно ругань.. СУВ. ——————— тут могла быть Ваша реклама… |
||
|
|||
shedon |
|
||
Эксперт Профиль
Репутация: 6
|
поставил ——————— Programming is like sex: One mistake and you have to support it your lifetime |
||
|
|||
PILOT |
|
||
производство Профиль
Репутация: 20
|
Вот например в Кейле есть установки компилятора и линковщика: AX51 и A51 СУВ. ——————— тут могла быть Ваша реклама… |
||
|
|||
|
Правила форума «Микроконтроллеры (MCU) и микропроцессоры (MPU)» | |
|
На данный раздел помимо Правил форума распространяются текже следующие правила:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) |
0 Пользователей: |
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема » |