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

 
 
 
Reply to this topicStart new topic
> scmRTOS для EWARM 5.11, есть ли у кого адаптированный OS_Target_asm.s?
Ykidia
сообщение Mar 26 2008, 11:37
Сообщение #1


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

Группа: Свой
Сообщений: 80
Регистрация: 3-08-06
Пользователь №: 19 287



Здравствуйте! Есть небольшой проектик под scmRTOS, ранее созданный для IAR EWARM 4.41, микроконтроллер LPC2148. Поставил EWARM 5.11 для пробы, но как-то не удается сделать так, чтобы, как и раньше, в векторах по адресам #00-#3F мирно сосуществовали как части из стандартного cstartup, так и части из OS_Target_asm. Поменял сегменты на секции, ORG на LTORG и т.д., но при компиляции в векторах присутствует либо только код из cstartup (т.е. нет частей ОС для программного и аппаратных IRQ/FIQ прерываний), либо только из OS_Target_asm (т.е. по 0-му вектору например находится какой-то мусор). Пытался менять :ROOT(x) в строках объявлений секций, что и приводило к вытеснению либо содержимого cstartup.s, либо OS_Target_asm.s.
Что нужно сделать либо есть может у кого уже адаптированный OS_Target_asm.s для EWARM 5.11 ? Спасибо.
Go to the top of the page
 
+Quote Post
gladov
сообщение Feb 19 2009, 12:35
Сообщение #2


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

Группа: Свой
Сообщений: 169
Регистрация: 10-11-05
Из: Воронеж
Пользователь №: 10 687



Поднимем темку. Сегодня поставил себе ИАР 5.30 для АРМа, а в нем оказывается сильно поменяли асм. У кого-нть есть порт OS_Target_asm под новый асм?
Причина редактирования: Бездумное цитирование
Go to the top of the page
 
+Quote Post
buddazvon
сообщение Aug 24 2009, 06:36
Сообщение #3





Группа: Участник
Сообщений: 9
Регистрация: 30-09-08
Пользователь №: 40 575



Из данной же области.
Для ARM смотрю, есть порт для версии IAR 4.30
Имею 5.10, ругань на асм.
Вопрос: где скачать 4.30? Или таргетовские файлоики для более поздней версии IAR.


зы
офтоп: умеет ли freertos работать с классами, или не далее чем С?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 24 2009, 07:07
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(buddazvon @ Aug 24 2009, 08:36) *
Имею 5.10, ругань на асм.

Берете документ по миграции на V5 и правите.
Цитата
умеет ли freertos работать с классами, или не далее чем С?

Вы хоть сами поняли, что написали?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
buddazvon
сообщение Aug 24 2009, 08:50
Сообщение #5





Группа: Участник
Сообщений: 9
Регистрация: 30-09-08
Пользователь №: 40 575



Цитата(zltigo @ Aug 24 2009, 10:07) *
Берете документ по миграции на V5 и правите.

Хорошо.
Но не понятно, по идее, поблема должна быть актуальной.
Значит, она или архитривиальная, или неимоверно сложная.

Цитата(zltigo @ Aug 24 2009, 10:07) *
Вы хоть сами поняли, что написали?

Видимо, у меня довольно низкая квалификация, и я не могу понять, что непоянтного сказал?

Хочу ООП для работы с ОС и ARM. Нигде не видел, чтоб писали, что под IAR ARM FReeRTOS можно былоб скомпилировать под С++
Go to the top of the page
 
+Quote Post
dxp
сообщение Aug 24 2009, 09:15
Сообщение #6


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(buddazvon @ Aug 24 2009, 15:50) *
Видимо, у меня довольно низкая квалификация, и я не могу понять, что непоянтного сказал?

Хочу ООП для работы с ОС и ARM. Нигде не видел, чтоб писали, что под IAR ARM FReeRTOS можно былоб скомпилировать под С++

FreeRTOS - это точно такая же программа, как и любая другая. Написана она на С, и это никак не ограничивает кого бы то ни было в использовании других языковых средств. Если используемый компилятор позволяет писать на С++, то пишите, а связь с компонентами FreeRTOS будет как с обычным С-кодом, т.е. никаких проблем быть не должно, ведь С за редким исключением является подмножеством С++. Вот это вам и хотели сказать.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
buddazvon
сообщение Aug 24 2009, 10:28
Сообщение #7





Группа: Участник
Сообщений: 9
Регистрация: 30-09-08
Пользователь №: 40 575



Спасибо за подсказку!

В смущение ввело то, что когда-то портировал проект с С на С++ для Атмеги.
И уповал на то, что С - подмоножество С++ и портирование будет элементарным.
Ошибался....
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Aug 24 2009, 11:13
Сообщение #8


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Цитата(buddazvon @ Aug 24 2009, 14:28) *
Спасибо за подсказку!

В смущение ввело то, что когда-то портировал проект с С на С++ для Атмеги.
И уповал на то, что С - подмоножество С++ и портирование будет элементарным.
Ошибался....

Ну и где же были ошибки???
Go to the top of the page
 
+Quote Post
buddazvon
сообщение Aug 24 2009, 13:31
Сообщение #9





Группа: Участник
Сообщений: 9
Регистрация: 30-09-08
Пользователь №: 40 575



Цитата(jorikdima @ Aug 24 2009, 14:13) *
Ну и где же были ошибки???

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

Аналогично сейчас.
Есть безосьный элементраный мигатель светодиодами на SAM7S64. Писаный на С. Работающий.
Подключаю С++, и линкер вдруг перестает обнаруживать lowlevel_init. Чес гря, я и не полнимал, кто его раньше вызывал, и каким образом соотвтествует С стандарту.
И таких условиях корректно сформулировать вопрос не всегда получается. И сам ведь не понимаешь, а чем некорректность - база знаний маловата.

ЗЫ
"Берете документ по миграции на V5 и правите." Взял, посмотрел, и, вот как-то усомнился, что, руководствуясь, одним этим документом можно вообще что-то сделать.

нечто по теме:
http://electronix.ru/forum/index.php?showt...t=0#entry557862
Go to the top of the page
 
+Quote Post
dxp
сообщение Aug 24 2009, 14:15
Сообщение #10


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(buddazvon @ Aug 24 2009, 20:31) *
Аналогично сейчас.
Есть безосьный элементраный мигатель светодиодами на SAM7S64. Писаный на С. Работающий.
Подключаю С++, и линкер вдруг перестает обнаруживать lowlevel_init. Чес гря, я и не полнимал, кто его раньше вызывал, и каким образом соотвтествует С стандарту.
И таких условиях корректно сформулировать вопрос не всегда получается. И сам ведь не понимаешь, а чем некорректность - база знаний маловата.

Объявите эту функцию как extern "C". Поизучайте тему Name Mangling в С++.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post

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

 


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


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