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

 
 
> scmRTOS (v3) blackfin, переключение контекста + IMASK
yes
сообщение Feb 26 2008, 21:55
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



вообще, кто-нибудь пользует этот порт?

в переключалке задач

.....
[--sp] = lb1;

//--------------------------------------------------------------------------
//
// Switch stack pointers and manage interrupt enable status
//
p5.l = lo(IMASK); // save IMASK value
p5.h = hi(IMASK); // (global interrupts enable state)
r7 = [p5]; //
[--sp] = r7; //
r0 = sp;

call _OS_ContextSwitchHook;

......

на верхушку стека кладется содержимое IMASK и вызывается С-шная функция

TStackItem* OS_ContextSwitchHook(TStackItem* sp) { return OS::Kernel.ContextSwitchHook(sp); }

// "..\..\scmRTOS\Common\OS_Kernel.cpp" line 87 col 50
link 12;

._P2L2147483646:
[FP+ 8] = R0;
.LN12:
// "..\..\scmRTOS\Common\OS_Kernel.cpp" line 87 col 87
R1 = R0 ;
R0.L = _Kernel__2OS; R0.H = _Kernel__2OS;
CALL.X _ContextSwitchHook__Q2_2OS7TKernelFPUl;

.........

при этом link 12 и [FP+8] затирают значение IMASK на стеке

стек в блэкфине предекрементный, ну и вообще вроде бы соответствует соглашениям о вызовах (стр 1-255 40_ccblkfin_man.pdf) - там должно быть место для сохранения аргументов

--------------------------------

я вставил декремент стека

[--sp] = sp; //dummy stack decrement to prevent IMASK overwrite
call _OS_ContextSwitchHook;

после чего мои примерчики заработали

==============================

но не совсем понятно использование разных масок (то есть может эта сохранненная маска потом не нужна и я просто глючу) ?
но без этого исправления вообще нифига не работало...

------------------------------------------------------

собственно, кто-нибудь пользуется scmRTOS для blackfin-а?

==============================

у меня был некий проектик (BF532 без внешней памяти), на котором использовалась scmRTOS v2
в результате разгильдяйства были частично утеряны исходники - при переделывании взял версию 3, но не выходит каменный цветок...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- yes   scmRTOS (v3) blackfin   Feb 26 2008, 21:55
- - dxp   Цитата(yes @ Feb 27 2008, 03:55) вообще, ...   Feb 27 2008, 19:42
|- - yes   Спасибо. при включенной оптимизации (скорее всего...   Mar 3 2008, 19:37
|- - dxp   Цитата(yes @ Mar 4 2008, 01:37) а с испол...   Mar 4 2008, 06:33
|- - bmf   Цитата(yes @ Mar 3 2008, 22:37) .. а с ис...   Mar 4 2008, 08:40
|- - yes   Цитата(bmf @ Mar 4 2008, 11:40) Используе...   Mar 4 2008, 16:14
|- - Сергей Борщ   Цитата(yes @ Mar 4 2008, 18:14) как прави...   Mar 4 2008, 17:46
|- - dxp   Цитата(yes @ Mar 4 2008, 22:14) есть вопр...   Mar 5 2008, 06:18
|- - yes   спасибо еще раз за детальный ответ : по поводу пр...   Mar 5 2008, 14:35
|- - dxp   Цитата(yes @ Mar 5 2008, 20:35) теоретиче...   Mar 6 2008, 15:36
|- - yes   Цитата(dxp @ Mar 6 2008, 18:36) Каналы жи...   Mar 6 2008, 17:33
|- - yes   Обнаружил конкретную проблему: для передачи управ...   Mar 7 2008, 11:51
|- - dxp   Цитата(yes @ Mar 7 2008, 17:51) EX_INTERR...   Mar 7 2008, 12:22
|- - yes   Цитата(dxp @ Mar 7 2008, 15:22) Я понял, ...   Mar 7 2008, 13:20
|- - Сергей Борщ   Цитата(yes @ Mar 7 2008, 15:20) сяду сейч...   Mar 7 2008, 13:28
|- - dxp   Цитата(Сергей Борщ @ Mar 7 2008, 19:28) А...   Mar 7 2008, 13:50
|- - yes   Цитата(Сергей Борщ @ Mar 7 2008, 16:28) А...   Mar 7 2008, 13:57
||- - Сергей Борщ   Цитата(yes @ Mar 7 2008, 15:57) А обсужде...   Mar 7 2008, 14:03
||- - dxp   Цитата(Сергей Борщ @ Mar 7 2008, 20:03) Е...   Mar 7 2008, 14:28
|- - yes   Цитата(Сергей Борщ @ Mar 7 2008, 16:28) А...   Mar 7 2008, 14:34
|- - dxp   Цитата(yes @ Mar 7 2008, 20:34) если есть...   Mar 9 2008, 06:44
- - dxp   Проблема, с которой началась ветка, пофиксена. Взя...   Mar 9 2008, 13:50
- - yes   Цитата(dxp @ Mar 9 2008, 16:50) Проблема,...   Mar 9 2008, 20:44
- - dxp   Цитата(yes @ Mar 10 2008, 02:44) если ест...   Mar 10 2008, 13:08


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

 


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


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