|
Вопросы по scmRTOS |
|
|
|
 |
Ответов
|
Apr 9 2010, 17:34
|
Местный
  
Группа: Участник
Сообщений: 312
Регистрация: 9-04-10
Пользователь №: 56 532

|
atmega8 scmRTOS_SYSTIMER_NEST_INTS_ENABLE 1 scmRTOS_PROCESS_COUNT 2 Начал изучать эту ОС. Документацию прочитал. Но не пойму. Почему в моем коде никогда не выполняется TProc2? TProc1 ждет байт. Если пришел то отправить. TProc2 постоянно шлет 'b'. SystemTimerUserHook. постоянно отсылает 'v'. На выводе постоянно фижу 'v' но никогда 'b'. Если отсылаю байт то он тут же возвращается. Вывод TProc2 никогда не передается управление. Код int main() { MyUart.init(); // Start System Timer TCCR0 = (1 << CS01) | (1 << CS00); // clk/64 TIMSK |= (1 << TOIE0);
//Запускаем ОС OS::Run();
return 0; }
//--------------------------------------------------------------------------- namespace OS {
template<> OS_PROCESS void TProc1::Exec() { unsigned char c;
for(;;) { c=MyUart.receiveByte(); MyUart.sendByte(c); } } // TProc1::Exec()
template<> OS_PROCESS void TProc2::Exec() { for(;;) { MyUart.sendByte('b'); Sleep(50); } } // TProc2::Exec()
} // namespace OS
void OS::SystemTimerUserHook() { #if scmRTOS_SYSTIMER_NEST_INTS_ENABLE && !PORT_TOGGLE_BY_PIN_WRITE TCritSect cs; #endif MyUart.sendByte('v'); }
|
|
|
|
|
Apr 9 2010, 18:26
|

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

|
А всё потому, что TProc1 имеет наивысший приоритет, и не отдаёт никому управление. Вставьте в TProc1 Код MyUart.sendByte('b'); Sleep(10); и всё заработает. А если всё делать по уму, то надо чтобы функция MyUart.receiveByte(); сама вгоняла вызвавший её процесс в спячку до прихода символа.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
Сообщений в этой теме
n_bogoyavlensky Вопросы по scmRTOS May 15 2009, 12:59 dxp Цитата(n_bogoyavlensky @ May 15 2009, 19... May 15 2009, 13:42 n_bogoyavlensky По вопросам 1 и 2 понятно.
Т. е., для того, чтобы ... May 15 2009, 14:23 ReAl Там есть makefile с ключами компилятора.
Если Cod... May 15 2009, 14:47 sergeeff У нас на форуме уже рассказывалось, как можно ввес... May 15 2009, 18:29 n_bogoyavlensky Вот и ещё вопросы подоспели
8. Для чего функция ... May 15 2009, 18:37 ReAl Цитата(n_bogoyavlensky @ May 15 2009, 21... May 15 2009, 21:00 dxp Цитата(n_bogoyavlensky @ May 16 2009, 01... May 16 2009, 05:54  n_bogoyavlensky Цитата(dxp @ May 16 2009, 09:54) А как ин... May 16 2009, 09:35   dxp Цитата(n_bogoyavlensky @ May 16 2009, 16... May 16 2009, 10:57    ReAl Цитата(dxp @ May 16 2009, 13:57) Как бы в... May 16 2009, 12:17     sergeeff Цитата(ReAl @ May 16 2009, 15:17) Если по... May 16 2009, 18:06      ReAl Цитата(sergeeff @ May 16 2009, 21:06) Вы ... May 17 2009, 10:04       sergeeff Цитата(ReAl @ May 17 2009, 14:04) На мест... May 17 2009, 10:58     dxp Цитата(ReAl @ May 16 2009, 19:17) Если по... May 18 2009, 05:54 sergeeff Раз пошел процесс обсуждения scmRTOS, хочу восполь... May 16 2009, 11:39 dxp Цитата(sergeeff @ May 16 2009, 18:39) Оче... May 18 2009, 05:44 n_bogoyavlensky Вопросы далее
11. Как лучше поступить с исходник... May 16 2009, 12:30 ReAl Цитата(n_bogoyavlensky @ May 16 2009, 15... May 16 2009, 13:31 n_bogoyavlensky Вообще непонятны следующие конструкции в примерах,... May 16 2009, 13:40 n_bogoyavlensky Помогите, пожалуйста, побороть ошибки (на первой с... May 17 2009, 10:31 ReAl Цитата(n_bogoyavlensky @ May 17 2009, 13... May 17 2009, 11:13  n_bogoyavlensky Цитата(ReAl @ May 17 2009, 15:13) Что-то ... May 17 2009, 11:17   sergeeff Цитата(n_bogoyavlensky @ May 17 2009, 15... May 17 2009, 11:21 n_bogoyavlensky Вот по поводу этого объясните, ещё пожалуйста:
Ко... May 17 2009, 11:42 sergeeff На 21 стр. - "скелет" функции. Собственн... May 17 2009, 11:53 n_bogoyavlensky Цитата(sergeeff @ May 17 2009, 15:53) На ... May 17 2009, 12:10  ReAl Цитата(n_bogoyavlensky @ May 17 2009, 15... May 17 2009, 13:56 sergeeff Текущая верия scmRTOS? - 3.05
А документация писа... May 17 2009, 12:17 n_bogoyavlensky ReAl
Понятно.
Вот спасибо
И за avreal32.exe спас... May 17 2009, 15:14 Сергей Борщ Цитата(n_bogoyavlensky @ May 17 2009, 18... May 17 2009, 15:25 sergeeff Ну и лады. May 18 2009, 05:49 n_bogoyavlensky 13. Что такое системный процесс Idle и для чего он... May 18 2009, 09:31 Сергей Борщ Цитата(n_bogoyavlensky @ May 18 2009, 12... May 18 2009, 11:37 n_bogoyavlensky Ну вот, запустил
Только вот код много места заним... May 18 2009, 12:24 ReAl Цитата(n_bogoyavlensky @ May 18 2009, 15... May 18 2009, 12:27 n_bogoyavlensky Нашёл:
В OS_Target_cpp.cpp определена функция:
К... May 18 2009, 12:59 ReAl Цитата(n_bogoyavlensky @ May 18 2009, 15... May 18 2009, 13:46 n_bogoyavlensky Не могу понять... почему у меня тогда код почти в ... May 18 2009, 14:58 ReAl Цитата(n_bogoyavlensky @ May 18 2009, 17... May 18 2009, 16:42  n_bogoyavlensky Цитата(ReAl @ May 18 2009, 20:42) Попробу... May 18 2009, 17:14   ReAl Цитата(n_bogoyavlensky @ May 18 2009, 20... May 18 2009, 17:25 sergeeff Уважаемый коллега!
Неужели вам в google трудн... May 18 2009, 17:28 n_bogoyavlensky Спасибо Вам всем большое
Обязательно посмотрю под... May 18 2009, 18:05 sergeeff Цитата(n_bogoyavlensky @ May 18 2009, 22... May 18 2009, 18:08  n_bogoyavlensky Цитата(sergeeff @ May 18 2009, 22:08) Мож... May 18 2009, 18:39 n_bogoyavlensky Здравствуйте!
Ещё один вопрос
Корректным ли... May 25 2009, 06:06 Сергей Борщ Цитата(n_bogoyavlensky @ May 25 2009, 09... May 25 2009, 07:50  n_bogoyavlensky Цитата(Сергей Борщ @ May 25 2009, 11:50) ... May 25 2009, 08:28   Сергей Борщ Цитата(n_bogoyavlensky @ May 25 2009, 11... May 25 2009, 08:41    n_bogoyavlensky Цитата(Сергей Борщ @ May 25 2009, 12:41) ... May 25 2009, 10:31 n_bogoyavlensky Здравствуйте!
Смотрю в даташит и понять не м... Jun 10 2009, 10:20 Сергей Борщ Цитата(n_bogoyavlensky @ Jun 10 2009, 13... Jun 10 2009, 10:41  n_bogoyavlensky Цитата(Сергей Борщ @ Jun 10 2009, 14:41) ... Jun 22 2009, 11:56 ReAl Цитата(n_bogoyavlensky @ Jun 10 2009, 13... Jun 10 2009, 10:45  n_bogoyavlensky Цитата(ReAl @ Jun 10 2009, 13:45) Вход ко... Jun 10 2009, 11:25 n_bogoyavlensky Не работает!
Прямая передача управления работ... Jun 22 2009, 18:12 ReAl Цитата(n_bogoyavlensky @ Jun 22 2009, 21... Jun 22 2009, 19:38  n_bogoyavlensky Цитата(ReAl @ Jun 22 2009, 23:38) Странно... Jun 23 2009, 03:36   ReAl Цитата(n_bogoyavlensky @ Jun 23 2009, 06... Jun 23 2009, 08:42    n_bogoyavlensky Цитата(ReAl @ Jun 23 2009, 12:42) Хм. В к... Jun 23 2009, 10:19     ReAl Цитата(n_bogoyavlensky @ Jun 23 2009, 13... Jun 23 2009, 10:44      n_bogoyavlensky Цитата(ReAl @ Jun 23 2009, 14:44) Самая п... Jun 23 2009, 12:03 n_bogoyavlensky Откомпилировал в WinAVR 2007 - не работает.
Откомп... Jun 23 2009, 19:16 ReAl Цитата(n_bogoyavlensky @ Jun 23 2009, 22... Jun 24 2009, 16:43  n_bogoyavlensky Цитата(ReAl @ Jun 24 2009, 20:43) Ой, а э... Jun 24 2009, 16:54 n_bogoyavlensky Огромная просьба, если Вас не затруднит, то провер... Jun 23 2009, 20:21 n_bogoyavlensky Проверил в железе.
ATmega48P, 20 МГц, оба способа ... Jun 25 2009, 07:06 Сергей Борщ Цитата(n_bogoyavlensky @ Jun 25 2009, 10... Jun 25 2009, 07:22 n_bogoyavlensky По поводу нашего давнего разговора в этой ветке о ... Jun 25 2009, 07:25 ReAl Цитата(n_bogoyavlensky @ Jun 25 2009, 10... Oct 4 2009, 09:40 sevstels Хотел попробовать запустить примеры для BF533.
К с... Oct 4 2009, 07:40 sevstels уже решил заменой файлов из snapshot
мне только од... Oct 4 2009, 13:19 dxp Цитата(sevstels @ Oct 4 2009, 20:19) уже ... Oct 5 2009, 08:16 sevstels Это конечно удивительно, автор работает ещё 4.0 ве... Oct 5 2009, 13:41 dxp Цитата(sevstels @ Oct 5 2009, 20:41) Это ... Oct 6 2009, 02:56 sevstels Уважаемый dxp, подскажите плиз, где "подкрути... Oct 6 2009, 03:45 dxp Цитата(sevstels @ Oct 6 2009, 10:45) ----... Oct 6 2009, 07:27 sevstels Расширение давно поменял, файл OS_Target_asm.asm
П... Oct 6 2009, 07:43 dxp Цитата(sevstels @ Oct 6 2009, 14:43) Расш... Oct 6 2009, 09:18 sevstels Да, asm есть для MPEG-4 енкодера.
Они тоже выдают ... Oct 6 2009, 10:39 sevstels Накопал...
Не обратил внимание на warning по повод... Oct 7 2009, 02:19 meister Безопасно ли использовать setjmp и longjump в scmR... Nov 7 2009, 11:24 vzuravlo Добрый день.
Я новичок в программировании, не суди... Jan 23 2010, 21:31 dxp Цитата(vzuravlo @ Jan 24 2010, 03:31) у м... Jan 24 2010, 10:48  ReAl Цитата(dxp @ Jan 24 2010, 12:48) Вы может... Jan 24 2010, 11:11 kurtis Возник небольшой вопрос при использовании scmRTOS.... Feb 26 2010, 15:57 Сергей Борщ перенесите определение #define TOTAL_PROCESS_NUMBE... Feb 26 2010, 16:50 kurtis не помогло, те самые ошибки Feb 26 2010, 18:43 Сергей Борщ Цитата(kurtis @ Feb 26 2010, 20:43) не по... Feb 26 2010, 19:00 kurtis Спасибо!))
Теперь получилось. Feb 26 2010, 19:20 Embedder74 Начал разбираться с scmRTOS.3.10. Ответьте, плз. н... Mar 24 2010, 10:18 jorikdima Цитата(Embedder74 @ Mar 24 2010, 13:18) 2... Mar 24 2010, 11:14  Embedder74 Цитата(jorikdima @ Mar 24 2010, 14:14) из... Mar 25 2010, 08:37   Сергей Борщ Цитата(Embedder74 @ Mar 25 2010, 10:37) Н... Mar 25 2010, 09:01   jorikdima Цитата(Embedder74 @ Mar 25 2010, 11:37) А... Mar 25 2010, 10:02 AHTOXA Цитата(Embedder74 @ Mar 24 2010, 15:18) 1... Mar 24 2010, 11:42 a9d Т.е. я должен должен явно указывать какой процесс ... Apr 9 2010, 18:51
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|