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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Вышла TNKernel v.2.5, После почти полуторагодовой паузы вышла TNKernel v.2.5
yuri_t
сообщение Nov 10 2008, 19:29
Сообщение #1


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

Группа: Свой
Сообщений: 163
Регистрация: 24-08-05
Пользователь №: 7 937



Причина подобных пауз хорошо известна - недостаточно мотивации для развития
бесплатного продукта. smile.gif

Версия 2.5 включает новый порт (TNKernel LP) для Freescale ® HCS08 Ultra-Low-Power 8-bits MCU.
TNKernel LP поддерживает an automatic power-down mode management, transparent switching
OS time ticks sources etc.

Также был выложен исходный код для USB Firmware Upgrader (MFC, Visual Studio 2008)
Go to the top of the page
 
+Quote Post
zltigo
сообщение Nov 10 2008, 19:40
Сообщение #2


Гуру
******

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



Цитата(yuri_t @ Nov 10 2008, 22:29) *
...недостаточно мотивации для развития бесплатного продукта

sad.gif
Спасибо!


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Nov 10 2008, 20:24
Сообщение #3


Шаман
******

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



a14.gif Слава Кому Следует!!! Хорошо, что хоть немного мотивации нашлось на хороший продукт. Юрий, желаю Вам здравствовать!
Нет ли в планах портировать Вашу ОС на модный ныне Cortex-M3?
Go to the top of the page
 
+Quote Post
yuri_t
сообщение Nov 11 2008, 06:59
Сообщение #4


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

Группа: Свой
Сообщений: 163
Регистрация: 24-08-05
Пользователь №: 7 937



Цитата(IgorKossak @ Nov 11 2008, 00:24) *
Нет ли в планах портировать Вашу ОС на модный ныне Cortex-M3?


Такой порт (сделанный Сергеем Кошкиным) уже существует.

Я в свою очередь хочу сделать несколько расширенный (по сравнению с портом Сергея)
вариант с поддержкой повторной входимости в прерываниях.
Go to the top of the page
 
+Quote Post
VslavX
сообщение Nov 11 2008, 07:26
Сообщение #5


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Присоединяюсь к благодарностям - спасибо за качественный и идеологически выдержанный продукт a14.gif.
Go to the top of the page
 
+Quote Post
Alex B._
сообщение Nov 11 2008, 07:34
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 943
Регистрация: 6-07-04
Из: Санкт-Петербург
Пользователь №: 274



Цитата(yuri_t @ Nov 10 2008, 23:29) *
Версия 2.5

С задачей таймера и ceiling мютексом все понятно. Не понимаю, зачем обнуление wait_reason в конец функции перенесли..
Код
task->task_wait_reason = 0; //-- v2.5


Цитата(yuri_t @ Nov 11 2008, 10:59) *
Такой порт (сделанный Сергеем Кошкиным) уже существует.

Я в свою очередь хочу сделать несколько расширенный (по сравнению с портом Сергея)
вариант с поддержкой повторной входимости в прерываниях.

опа, он где-нибудь живой есть? Как раз сейчас этим занимаюсь...
И еще - вы же были против вложенных прерываний, насколько я помню =)
Go to the top of the page
 
+Quote Post
yuri_t
сообщение Nov 11 2008, 09:12
Сообщение #7


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

Группа: Свой
Сообщений: 163
Регистрация: 24-08-05
Пользователь №: 7 937



Цитата(Alex B._ @ Nov 11 2008, 11:34) *
опа, он где-нибудь живой есть? Как раз сейчас этим занимаюсь...


Я не знаю, публиковал ли Сергей где-то этот код или нет - я получил его примерно
неделю назад и еще не успел детально посмотреть. Навскидку - должно работать,
только с завершением задачи по tn_task_exit() уже вижу - темное место...
К сожалению, у меня на данный момент нет STM32 hardware чтобы попробовать.

Я Вам по e-mail подробнее напишу..

Цитата(Alex B._ @ Nov 11 2008, 11:34) *
И еще - вы же были против вложенных прерываний, насколько я помню =)

Дело в том, что архитектура Cortex-M3 позволяет делать nested interrupts,
что называется, "натуральным образом" и это отличная возможность детально
проработать и исследовать работу вложенных прерываний.
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Nov 11 2008, 09:51
Сообщение #8


Шаман
******

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



Цитата(yuri_t @ Nov 11 2008, 11:12) *
К сожалению, у меня на данный момент нет STM32 hardware чтобы попробовать.

У меня есть, могу попробовать\проверить.
Если можно, выложите порт пока здесь.
Go to the top of the page
 
+Quote Post
Alex B._
сообщение Nov 11 2008, 09:52
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 943
Регистрация: 6-07-04
Из: Санкт-Петербург
Пользователь №: 274



Цитата(yuri_t @ Nov 11 2008, 13:12) *
Я Вам по e-mail подробнее напишу..

спасибо!


Цитата(IgorKossak @ Nov 11 2008, 13:51) *
У меня есть, могу попробовать\проверить.

аналогично...
Go to the top of the page
 
+Quote Post
yuri_t
сообщение Nov 11 2008, 10:03
Сообщение #10


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

Группа: Свой
Сообщений: 163
Регистрация: 24-08-05
Пользователь №: 7 937



Цитата(IgorKossak @ Nov 11 2008, 13:51) *
Если можно, выложите порт пока здесь.


Хорошо, если автор будет не против, то выложу.
Go to the top of the page
 
+Quote Post
Sergey_K
сообщение Nov 11 2008, 13:02
Сообщение #11





Группа: Участник
Сообщений: 6
Регистрация: 11-11-08
Пользователь №: 41 537



Всем добрый день! Выкладываю порт TNKernel для Cortex-M3. У меня сейчас на отладочной плате все нормально работает, перенес свое приложение работающее с графической подсистемой MicroWindows с ARM7 на Cortex-M3. Прошу всех высказывать свое мнение по поводу найденных ошибок.
Прикрепленные файлы
Прикрепленный файл  TNKernel.zip ( 192.2 килобайт ) Кол-во скачиваний: 76
Прикрепленный файл  Example_TNKernel_Blinky.zip ( 123.22 килобайт ) Кол-во скачиваний: 68
 
Go to the top of the page
 
+Quote Post
Sergey_K
сообщение Nov 12 2008, 04:31
Сообщение #12





Группа: Участник
Сообщений: 6
Регистрация: 11-11-08
Пользователь №: 41 537



Цитата
Навскидку - должно работать, только с завершением задачи по tn_task_exit() уже вижу - темное место...


Спасибо Юрий! Действительно - при завершении задачи возникнет проблема со стеком. Необходимо переделать tn_switch_context_exit
Go to the top of the page
 
+Quote Post
Sergey_K
сообщение Nov 12 2008, 07:30
Сообщение #13





Группа: Участник
Сообщений: 6
Регистрация: 11-11-08
Пользователь №: 41 537



Выкладываю подправленный порт TNKernel, изменения касаются функции tn_switch_context_exit для корректного переключения на следующую задачу при завершении работы активной задачи (tn_task_exit). Это не окончательный вариант реализации, так что если у кого есть предложения - пишите. Вообще когда писал порт старался как можно меньше затрагивать ядро операционки. Изменился лишь файл tn_port.c и был переименован в tn_port_cm3.c, и был добавлен новый файл tn_port_asm_armcc_cortex_m3.s, этот файл написан под Keil. Любой обработчик прерывания необходимо открывать с помощью функции tn_int_enter(), а закрывать - tn_int_exit(). Данный порт основывается на TNKernel v.2.5.
Прикрепленные файлы
Прикрепленный файл  TNKernel.zip ( 96.96 килобайт ) Кол-во скачиваний: 84
 
Go to the top of the page
 
+Quote Post
yuri_t
сообщение Dec 2 2008, 07:38
Сообщение #14


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

Группа: Свой
Сообщений: 163
Регистрация: 24-08-05
Пользователь №: 7 937



Вышел "официальный" порт TNKernel для Cortex-M3.
TNKernel порт для Cortex-M3 полностью поддерживает вложенные прерывания.

Также добавил интересные (ИМХО) результаты сравнения производительности DMA (STM32) и FIFO (LPC21x) для hi-speed UART.

www.tnkernel.com
Go to the top of the page
 
+Quote Post
Alex B._
сообщение Dec 2 2008, 21:04
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 943
Регистрация: 6-07-04
Из: Санкт-Петербург
Пользователь №: 274



Цитата(yuri_t @ Dec 2 2008, 10:38) *
Вышел "официальный" порт TNKernel для Cortex-M3.

спасибо! у меня так руки и не дошли =)
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th June 2025 - 23:09
Рейтинг@Mail.ru


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