|
v5, Новый релиз |
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 22)
|
Nov 27 2015, 06:42
|

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

|
QUOTE (uriy @ Nov 27 2015, 11:12)  Нет ли планов по портированию на ADSP-BF7xx ? Все представленные порты - это то, с чем реально работают (или работали ранее) члены команды. То, с чем работа не ведётся, по объективным причинам не может быть представлено. Проект свободный и открытый, любой желающий может принять участие. Порт BF6xx появился так: человек портировал для себя и поделился. Теперь, при хостинге на github, этот процесс вообще упрощается через механизм fork/pull request. Что касается непосредственно вашего вопроса, то тут основная трудность в том, что нужно, во-первых, хорошо знать хорошо знать целевую платформу (и процессор, и тулчейн - как понимаю, там это не VDSP++, а CCES), и, во-вторых, иметь рабочую железку. Если у меня нет ни того, и другого, я не смогу сделать порт быстро и с должным уровнем качества. Но человек, который это имеет, сможет сделать порт очень быстро - там реально работы очень немного (оно же делается не с нуля, а на основе уже имеющегося). Т.ч. всё в наших руках.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Nov 30 2015, 12:09
|
Знающий
   
Группа: Свой
Сообщений: 583
Регистрация: 7-06-06
Из: Таганрог
Пользователь №: 17 840

|
Цитата(dxp @ Nov 26 2015, 10:19)  Всем привет! Проект сменил систему управления версиями (svn -> git) и переехал с sourceforge.net на github.com. Страница релизаРепозиторий осиРепозиторий примеровНа странице релиза основной архив содержит рабочие проекты примеров, исходный код оси и документацию в pdf формате. #ifndef scmRTOS_H #define scmRTOS_H #define scmRTOS_VERSION 400 //----------------------------------------------------------------------------- // // !!! The order of includes is important !!! // #include <stddef.h> #include <stdint.h> #include <usrlib.h> #include <os_target.h> //------------------------------------------------------------------------------ #endif // scmRTOS_H scmRTOS_VERSION 400 специально не изменено?
|
|
|
|
|
Nov 30 2015, 14:23
|

Знающий
   
Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768

|
очень много варнингов в в иаровском порте под avr и arm, причем они тянутся еще с версий 3.5x. Это вызвано тем,что на закладке С/C++ compiler->Diagnostics в примере не стоит галка "Enable remarks". Например,на такое украшательство //****************************************************************************** дает Warning[Pa050]: non-native end of line sequence detected исправляется достаточно просто,например черточкой в конце. OS_PROCESS static void exec(); //Remark[Pe082]: storage class is not first исправляется static OS_PROCESS void exec(); многочисленные варнинги Remark[Pa137]: use of C-style cast на типа return (TPriority)pr; лечится return static_cast <TPriority> (pr); многочисленные варнинги Remark[Pa109]: the unary minus operator is applied to an unsigned expression (with possibly unexpected results) на выражения типа return map & -map; Это конечно мелочи. Но они тянутся уже давно и может в связи с выходом новой версии это можно один раз поправить?! А в общем все равно большое спасибо за отличную бесплатную ось.
--------------------
"Hello, word!" - 17 errors 56 warnings
|
|
|
|
|
Dec 1 2015, 08:53
|

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

|
QUOTE (DmitryM @ Nov 30 2015, 18:09)  scmRTOS_VERSION 400 специально не изменено? Нет, просмотрели (этот файл вообще не менялся, в него и не заглядывали, макрос не мешает, но он не нужен), уберём. QUOTE (WHALE @ Nov 30 2015, 20:23)  очень много варнингов в в иаровском порте под avr и arm, причем они тянутся еще с версий 3.5x. Версий чего? ОС была 3.10 (3.11), потом сразу 4.00. QUOTE (WHALE @ Nov 30 2015, 20:23)  Это вызвано тем,что на закладке С/C++ compiler->Diagnostics в примере не стоит галка "Enable remarks". Все примеры собирались и предупреждения были только в паре примеров от линкера иаровского - ругань была на несоответствие атрибутов библиотечных модулей, но это, как я понял, устраняется пересборкой либ с правильными опциями. Ремарки не включались. Имхо, ремарки может где-то и полезны, но по большей части не по делу. Попробовал собрать с ремарками. QUOTE (WHALE @ Nov 30 2015, 20:23)  Например,на такое украшательство //****************************************************************************** дает Warning[Pa050]: non-native end of line sequence detected исправляется достаточно просто,например черточкой в конце. Не смог воспроизвести. На каком примере это возникает? Какой код (ASCII) завершения этой строки у вас? В каком файле? QUOTE (WHALE @ Nov 30 2015, 20:23)  OS_PROCESS static void exec(); //Remark[Pe082]: storage class is not first исправляется static OS_PROCESS void exec(); Тут расширение используется, и не вполне понятно, как будет правильно: __task static void или static __task void. Всегда, сколько помню, (у IAR) была нотация <lang-extension> <qualifier> <type> <id> Ругань эту даёт только IAR/AVR. Не уверен, что если поменять местами, не будет ругани на других платформах. Надо пробовать. QUOTE (WHALE @ Nov 30 2015, 20:23)  многочисленные варнинги Remark[Pa137]: use of C-style cast на типа return (TPriority)pr; лечится return static_cast <TPriority> (pr); Да, тут пора привести к каноническому виду.  QUOTE (WHALE @ Nov 30 2015, 20:23)  многочисленные варнинги Remark[Pa109]: the unary minus operator is applied to an unsigned expression (with possibly unexpected results) на выражения типа return map & -map; Тут тоже IAR/AVR выделяется, тот же IAR/ARM ругнулся всего раз на операцию с битовой маской. Remark[Pe068]: integer conversion resulted in a change of sign D:\slon\scmRTOS\v5\scmrtos-release-v5.0.0\scmRTOS\core\os_kernel.h 458 Остальное его не взволновало. Что интересно - IAR/AVR на это молчит. По ходу, внутри IAR нет согласия по поводу, на что ругаться, а что пропускать. Я так не вижу во всех этих случаях никакого криминала, т.е. расцениваю эти крики ремарки компилятора не по делу. Возможно, не прав, тогда прошу обосновать. Если хочется ремарок, но вот такие раздражают, можно настроить их адресное подавление. Всем спасибо за замечания.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Dec 1 2015, 13:37
|

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

|
Начал править С-style cast'ы, проверяю, опять ругань, но уже на другие места: Remark[Pa137]: use of C-style cast D:\pro\scmRTOS\scmrtos-sample-projects\scmRTOS\port\avr\iar\os_target.h 228 А код, на который ругается, такой: CODE INLINE stack_item_t* get_data_sp() { return reinterpret_cast<stack_item_t*>(ABS_WORD(28)); } В общем, этот линтер иаровский не выглядит инструментом, который хочется использовать.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Dec 4 2015, 09:25
|
Группа: Новичок
Сообщений: 3
Регистрация: 12-07-05
Пользователь №: 6 720

|
Добрый день! Давно использую scmRTOS на разных arm. Спасибо, очень удобная система! Сейчас пришлось запускать на M0-части lpc4337 В нем не реализован SysTick для M0, так что переносил на другой таймер. В процессе нашлась маленькая описка. Вот тут, вроде, забыта тильда https://github.com/scmrtos/scmrtos/blob/mas...c/os_target.cpp строка 314
Сообщение отредактировал darkling07 - Dec 4 2015, 09:28
|
|
|
|
|
Dec 4 2015, 13:26
|
Частый гость
 
Группа: Участник
Сообщений: 139
Регистрация: 9-11-12
Из: Санкт-Петербург
Пользователь №: 74 315

|
Цитата(dxp @ Dec 1 2015, 16:37)  Начал править С-style cast'ы, проверяю, опять ругань, но уже на другие места: Remark[Pa137]: use of C-style cast D:\pro\scmRTOS\scmrtos-sample-projects\scmRTOS\port\avr\iar\os_target.h 228 А код, на который ругается, такой: Код INLINE stack_item_t* get_data_sp() { return reinterpret_cast<stack_item_t*>(ABS_WORD(28)); } В общем, этот линтер иаровский не выглядит инструментом, который хочется использовать. #define ABS_WORD(x) (*((volatile uint16_t*)x))
|
|
|
|
|
Dec 5 2015, 20:31
|

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

|
После клонирования репозитория надо дать две команды: Код git submodule init git submodule update Либо можно клонировать сразу с субмодулями, при помощи команды Код git clone --recursive Как это делается в tortosegit - к сожалению не знаю.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Dec 10 2015, 10:41
|

Знающий
   
Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768

|
Похоже, остался старый баг в порте для IAR AVR - сообщение N227При выборе режима передаче управления через системное прерывание (#define scmRTOS_CONTEXT_SWITCH_SCHEME 1) и отключении пользовательского хука при переключении контекста (#define scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE 0) постоянно висит и не сбрасывается системное прерывание SPM_READY, программа тормозит, а прерывания, имеющеи вектор ниже SPM_READY_vect не вызываются никогда. При выборе прямой передаче управления (#define scmRTOS_CONTEXT_SWITCH_SCHEME 1) или при передаче управления через прерывание SPM_READY (#define scmRTOS_CONTEXT_SWITCH_SCHEME 1) , но включении (#define scmRTOS_CONTEXT_SWITCH_USER_HOOK_ENABLE 1) все работает правильно. Причем Real вроде-бы это дело фиксил, но точно не помню. Прикладываю тестовый проект.
Прикрепленные файлы
Test.zip ( 801.22 килобайт )
Кол-во скачиваний: 19
--------------------
"Hello, word!" - 17 errors 56 warnings
|
|
|
|
|
Dec 15 2015, 14:59
|
Профессионал
    
Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848

|
начал посмотреть  респект за док ---- scmRTOS.en.Blackfin.VDSP.pdf scmRTOS.en.MSP430.IAR.pdf scmRTOS.ru.AVR.GCC.pdf scmRTOS.ru.AVR.IAR.pdf scmRTOS.ru.Blackfin.VDSP.pdf scmRTOS.ru.CortexM3.GCC.pdf scmRTOS.ru.CortexM3.IAR.pdf scmRTOS.ru.MSP430.GCC.pdf scmRTOS.ru.MSP430.IAR.pdf ----
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|