Перейти к содержанию
    

FreeRTOS LPC2368 Rowley/uIP перенести на IAR

А я тогода куда смотрю :)

У меня FreeRTOS\Demo\Common\ethernet\uIP\uip-1.0\uip\uip.h 46069 03.04.2007 15.35

 

На весь замного будет - только на пакованные структуры правильнее.

Тогда снова не понял в каком месте надо поключить эти инклуды. Тексты где этиструктуры втсречаются я так понимаю договорились не править?

 

А чего с ними разбираться - берете готовые из IAR порта и все.

Да вот смотрю порт на 2129, нету там таких вообще :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня FreeRTOS\Demo\Common\ethernet\uIP\uip-1.0\uip\uip.h 46069 03.04.2007 15.35

Это уже кто-то порезвился :). Оригинальный файл 2006 года и меньшего размера. В чем не трудно убедиться скачав дистрибутив.

19.11.2006 23:16 46 005 uip.h

Тогда снова не понял в каком месте надо поключить эти инклуды. Тексты где этиструктуры втсречаются я так понимаю договорились не править?

Как для начала выяснилось ОНИ ТАМ НЕ ВСТРЕЧАЮСЯ. А там где в авторском (а не ведомо кем правленном ) варианте ВСТРЕЧАЮТСЯ, там и смотрите как правильно использовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как для начала выяснилось ОНИ ТАМ НЕ ВСТРЕЧАЮСЯ. А там где в авторском (а не ведомо кем правленном ) варианте ВСТРЕЧАЮТСЯ, там и смотрите как правильно использовать.

Встречаются в UIPе скачанном в составе фриртоса. Перерыл сопроводиловку - зачем правили не нашел. Правили uip и uip_arp сам код и хидера. Махнул папку UIP фриртосную на скачанную родную. Компилится без проблем. Как будет работать пока незнаю.

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

 

Объясните - смотрю на порт IAR 2129 не могу найти аналоги вот этих макро

portSAVE_CONTEXT()

portRESTORE_CONTEXT()

В 2368 порту они используются в PortISR.c

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Встречаются в UIPе скачанном в составе фриртоса.

_Н_Е_Т_ Не встречаются. Точка.

Объясните - смотрю на порт IAR 2129 не могу найти аналоги вот этих макро

portSAVE_CONTEXT()

portRESTORE_CONTEXT()

А они к порту 2129 отношения не имеют и одинаковы для всех. Соответственно лежат

source->portable->iar->lpc2000

 

Повторяю, структуру исходников смотрим http://www.freertos.org/ -> Informations->Fundamentals->Source Organisation

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

_Н_Е_Т_ Не встречаются. Точка.

:) ну тока так точка, зачем же так категорично. В апреле появился порт на 2368 и на фриртосе предлагают его скачать и установить FreeRTOS_LPC2368_files_only.zip, там несколько каталогов в том числе и правленные исходники UIPа :)

 

А они к порту 2129 отношения не имеют и одинаковы для всех. Соответственно лежат

source->portable->iar->lpc2000

Там они лежат в каком то хитром файле ISR_Support.h, в котором судя по всему ассемблерные макроопределения. Как его воткнуть в проект я не сообразил. Если я его подключаю как обычный хидер - компилятор ругается на каждую строчку. Посмотрел соурсвьювером порт 2129 как там сделано, и подключения макросов не нашел.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Задумал, конвертить этот проект в Кейл.

Странно, такое чувство, что хидер с MAC объявлениями похерен (вернее сам MAC хидер на месте, нет объявления этих переменных), упорно ругается на неопределеные RxDescriptor ..., причем, в частности эта переменная, в других проектах объявляется в самом MAC модуле.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Там они лежат в каком то хитром файле ISR_Support.h, в котором судя по всему ассемблерные макроопределения. Как его воткнуть в проект я не сообразил. Если я его подключаю как обычный хидер - компилятор ругается на каждую строчку.

Это обычный header для ACCEMБЛЕРНЫХ ФАЙЛОВ. Неудивительно, что компилятор ничего не знающий об ASM ругается. В проект его "втыкать" не надо, как и прочие header. Что Вы там творите, мне не ведомо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это обычный header для ACCEMБЛЕРНЫХ ФАЙЛОВ. Неудивительно, что компилятор ничего не знающий об ASM ругается. В проект его "втыкать" не надо, как и прочие header. Что Вы там творите, мне не ведомо.

Правильно - хидер для ассемблерных, а дефайн то требуется в Сишном. И как им воспользоваться?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ничего не понимаю, поставил CW, скопировал проектные файлы, пробую собрать, валятся те же ошибки, начиная с отсутствия заголовочника на lpc2368.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ничего не понимаю, поставил CW, скопировал проектные файлы, пробую собрать, валятся те же ошибки, начиная с отсутствия заголовочника на lpc2368.

в CW все прекрасно компилится. А вот заголовочник и вообще все на 2368 надо скачать дополнительно. Заголовочник и все почти из папки систем лежит в каталоге CW targets

там пусто.

NXP_LPC2000.hzq скачать и подключить :)

http://www.rowleydownload.co.uk/arm/packag...NXP_LPC2000.htm

 

А вот залить J-link'ом из CW у меня не получилось. Подключил сеггеровкую ДЛЛ, но все равно дж-линк не находит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... как в ИАРе быть с атрибутами naked ...
Как быть с этой проблемой? Погуглил - нарыл волшебное слово __raw но видимо его знает только EWAVR. В реализации uIP для ИАР проблема решена реализацией прерывания на асме в отдельном файле. Этого хотелось бы избежать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как быть с этой проблемой? Погуглил - нарыл волшебное слово __raw но видимо его знает только EWAVR.

Но есть волшебное слово __noreturn

 

В реализации uIP для ИАР проблема решена реализацией прерывания на асме в отдельном файле. Этого хотелось бы избежать.

Видимо только так и можно. См. serial.c & serialISR.s79 и описание к этому порту (ARM7_LPC2129_IAR)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...