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

 
 
11 страниц V  « < 2 3 4 5 6 > »   
Reply to this topicStart new topic
> Вышла FreeRTOS V4.0.5 ... 8.2.3, проект прогрессирует!
zltigo
сообщение Feb 23 2008, 22:29
Сообщение #46


Гуру
******

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



Цитата(Chudik @ Feb 23 2008, 19:34) *
А куда именно.

Да там уже достаточно старый документ, даже не 4.5 и сделан не слишком аккуратно. Пора заново сдирать.

Добавилось для 4.7.2:
+ Added Fujitsu MB91460 port and demo.
+ Added Fujitsu MB96340 port and demo.
+ Tidied up the capitalisation of include files to facilitate builds on
Linux hosts.
+ Removed some redundant casting that was generating warnings - but was
included to remove warnings on other compilers.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Chudik
сообщение Feb 24 2008, 07:30
Сообщение #47


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

Группа: Свой
Сообщений: 197
Регистрация: 31-03-06
Пользователь №: 15 676



Цитата(zltigo @ Feb 23 2008, 14:29) *
Да там уже достаточно старый документ, даже не 4.5 и сделан не слишком аккуратно. Пора заново сдирать.

Ну... может кто-нибудь сможет сделать. blush.gif
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 24 2008, 08:18
Сообщение #48


Гуру
******

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



Цитата(Chudik @ Feb 24 2008, 10:30) *
Ну... может кто-нибудь сможет сделать. blush.gif

Ну так, если Вам нужно, то и скачайте сайт, отредактируйте, индексируйте и распечатайте на PDF принтер smile.gif. Работа дурная, но не сложная можно сделать в качестве отдыха. Когда-то делал, когда нужно было совсем инертный народ направить на путь истинный smile.gif. А а общем-то там достаточно самодокументированные *.h файлы, а все остальное разок в интернете прочитать хватит.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Alechek
сообщение Feb 26 2008, 07:56
Сообщение #49


Профессионал
*****

Группа: Свой
Сообщений: 1 241
Регистрация: 15-11-05
Из: Челябинск
Пользователь №: 10 882



Цитата(zltigo @ Feb 24 2008, 03:29) *
Да там уже достаточно старый документ, даже не 4.5 и сделан не слишком аккуратно. Пора заново сдирать.

Надо? Сделаем! smile.gif
upload/OS/FreeRTOS/FreeRTOS_API(site)_4.7.2.chm

А насчет аккуратности это по большему счеты не ко мне..
За 35$ как я понимаю, можно получить то же самое smile.gif
Цитата
FreeRTOS Documentation
You can purchase an exact copy of this entire WEB site as a single Windows help file (.chm file) - a convenient way of viewing all the documentation on your local computer.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 26 2008, 08:22
Сообщение #50


Гуру
******

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



Цитата(Alechek @ Feb 26 2008, 10:56) *
А насчет аккуратности это по большему счеты не ко мне..

Извините, это я не в смысле того, что делать было не надо! Спасибо, может пригодиться!
Что там у Автора - не знаю, но просто копия сайта на нормальный документ не особо тянет sad.gif - много лишнего, но ни оглавления нормального, ни поиска, ...... Когда делал PDF пришлось довольно много муторной работы делать.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Alechek
сообщение Feb 26 2008, 09:21
Сообщение #51


Профессионал
*****

Группа: Свой
Сообщений: 1 241
Регистрация: 15-11-05
Из: Челябинск
Пользователь №: 10 882



Согласен, на нормальный документ не тянет. Но лучше что-то чем ничего - инет не всегда бывает под рукой и не всегда с отличной скоростью. К тому же, как правильно было замечено, иногда достаточно прочитать лишь один раз...
Go to the top of the page
 
+Quote Post
Chudik
сообщение Feb 27 2008, 06:49
Сообщение #52


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

Группа: Свой
Сообщений: 197
Регистрация: 31-03-06
Пользователь №: 15 676



Цитата(Alechek @ Feb 25 2008, 23:56) *
Надо? Сделаем! smile.gif
upload/OS/FreeRTOS/FreeRTOS_API(site)_4.7.2.chm

Спасибо большое.
Хотя уже не надо crying.gif Автор eval board, которую мы будем использовать, утверждает, что с их web сервером и поддержкой FAT влезет ещё буквально пара задач с минимальным стеком и всё. А при обычном программировании всё влезает с запасом, а посему рекомендует freeRTOS не использовать. А хочется использовать обе эти фичи.
Eval board на базе LPC2138 с 32к ОЗУ.

Цитата
А насчет аккуратности это по большему счеты не ко мне..
За 35$ как я понимаю, можно получить то же самое smile.gif

Не исключено wacko.gif
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 29 2008, 16:11
Сообщение #53


Гуру
******

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



Цитата(Chudik @ Feb 27 2008, 09:49) *
А при обычном программировании всё влезает с запасом, а посему рекомендует freeRTOS не использовать.

Дивная рекомендация smile.gif прямые неизбежные затраты памяти на задачу в моей реализации FreeRTOS можно свести к TCB 56(пятьдесят шесть байт) + контекст. Стек, он по любому стек. В родной реализации TCB на 8-16 байтов поболее. Это конечно, ставит жирный крест smile.gif на использовании операционных систем smile.gif smile.gif smile.gif
Попытки хоть как-то приемлимо заставить работать TCP/IP стек при "обычном программировании" тоже требуют реурсов памяти. Файловая система вообще к количеству задач в общем случае никакого отношения не имеет...
Цитата
Автор eval board..

Не этой платы?:
http://forum.ixbt.com/topic.cgi?id=48:6017
И не этот разработчик?
http://electronix.ru/forum/index.php?showt...905&hl=heap

P.S.
Я, лично, использую операционные системы для экономии памяти, а не наоборот.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
meister
сообщение Mar 4 2008, 09:59
Сообщение #54


Местный
***

Группа: Участник
Сообщений: 219
Регистрация: 20-11-07
Пользователь №: 32 484



Точу FreeRTOS smile.gif

Было
Код
#define portDISABLE_INTERRUPTS()    __disable_interrupt()
#define portENABLE_INTERRUPTS()        __enable_interrupt()
#define portENTER_CRITICAL()        vPortEnterCritical()
#define portEXIT_CRITICAL()            vPortExitCritical()

void vPortEnterCritical( void )
{
    __disable_interrupt();
    ....
}
/*-----------------------------------------------------------*/

void vPortExitCritical( void )
{
    ...
            __enable_interrupt();
}


Стало
Код
#include "irq.h"

#define portDISABLE_INTERRUPTS()    my_disable_IRQ()
#define portENABLE_INTERRUPTS()        my_enable_IRQ()
#define portENTER_CRITICAL()        vPortEnterCritical()
#define portEXIT_CRITICAL()            vPortExitCritical()

void vPortEnterCritical( void )
{
    portDISABLE_INTERRUPTS();
   ....
}
/*-----------------------------------------------------------*/

void vPortExitCritical( void )
{
            ....
            portENABLE_INTERRUPTS();
}


my_disable_IRQ() и my_enable_IRQ() взял из scmRTOS smile.gif Если это правильно, может, об этом надо сказать Автору?
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Mar 4 2008, 10:40
Сообщение #55


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Ну и в чём суть двойного переопределения?
На мой взгляд было лучше.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 4 2008, 11:44
Сообщение #56


Гуру
******

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



Цитата(meister @ Mar 4 2008, 12:59) *
Стало

Ну и какого, абсолютно нормальные intrinsic functions были заменены некими самоделками? У меня есть, например свои варианты критических секций - без запрещения FIQ, или без глобального счетчика вложенности критических секций. А Ваша цель-то какая?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
meister
сообщение Mar 4 2008, 12:00
Сообщение #57


Местный
***

Группа: Участник
Сообщений: 219
Регистрация: 20-11-07
Пользователь №: 32 484



Цитата(zltigo @ Mar 4 2008, 14:44) *
А Ваша цель-то какая?


Раньше сбивалось, а теперь не сбивается - тот вариант что был запрещает FIQ.

Цитата(zltigo @ Mar 4 2008, 14:44) *
без запрещения FIQ


Теперь у меня тоже не запрещает FIQ.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Mar 28 2008, 22:58
Сообщение #58


Гуру
******

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



4.8.0 Полуофициальная нарисовалась.
http://mesh.dl.sourceforge.net/sourceforge...eRTOSV4.8.0.zip
Документации нет. Изменения внутри существенные, снаружи мелочи. Надо исходники вычитывать...


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
klen
сообщение Mar 29 2008, 07:20
Сообщение #59


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(zltigo @ Mar 29 2008, 01:58) *
Изменения внутри существенные, снаружи мелочи. Надо исходники вычитывать...

Интересненько... будем лопатить..
Go to the top of the page
 
+Quote Post
sla000
сообщение Mar 31 2008, 02:47
Сообщение #60


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 25-06-07
Из: Томск
Пользователь №: 28 670



Оцените плиз мой код для оценки использования кучи FreeRTOS, родных функций для этого я не нашел. Этот код я вставил в heap_2.c:

Код
/// Свободная куча
static uint32 FreeHeap;

/// Минимальное свободное место в куче
static uint32 FreeHeapMin = 0xFFFFFFFF;

/// Узнать минимальный размер свободного места в куче
uint32 GetFreeHeapMin( void )
{
    return FreeHeapMin;
}

/// Обновить размер текущей кучи
uint32 GetFreeHeap( void )
{
    xBlockLink * pblock;

    // указывает на стартовый блок
    pblock = &xStart;

    FreeHeap = 0;

    while( pblock != &xEnd )
    { // пока не наткнулись на xEnd
        FreeHeap += pblock->xBlockSize;
        pblock = pblock->pxNextFreeBlock;
    }

    if( FreeHeap < FreeHeapMin )
    { // Нашли минимум свободного места в куче
        FreeHeapMin = FreeHeap;
    }

    return FreeHeap;
}


GetFreeHeap() вставил в конце функций prvHeapInit(), pvPortMalloc() и vPortFree(). После этого просто периодически вызываю GetFreeHeapMin() каждые секунд 5 и вывожу в DBGU (Юзаю порт FreeRTOS для ARM).
Go to the top of the page
 
+Quote Post

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

 


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


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