(toppers-users 3584) Re: タスクを生成するだけでE_CTX

霧島遼二 kirishima9315 @ gmail.com
2011年 10月 13日 (木) 13:54:12 JST


斉藤様
桐島です。
エラーが出た周辺のコードですが、初級実装セミナーのOAKS-MINIボード用教材
BeginnerTrainingSeminar0010103/jsp14-m16c-edc-041008/OBJ/TIMER3
にある timer3m.cfg, timer3.c, timer3.h に以下の部分を追加しました。
シリアル通信を行った瞬間にE_CTXが繰り返し発生するので、TEST_TASKを生成するところでおかしなことになっているのではないかと思うのですが。

-------timer3m.cfg-------
INCLUDE("\"timer3.h\"");
CRE_TSK(ENTRY_TASK, { TA_HLNG, 0, entry_task,
DEFAULT_MAIN_PRIORITY,STACK_SIZE, NULL});
CRE_TSK(TIMER_TASK, { TA_HLNG, (VP_INT) 0, timer_task, TIMER_PRIORITY,
STACK_SIZE, NULL });
CRE_TSK(TEST_TASK,{ TA_HLNG, (VP_INT) 0,
test_task,TEST_PRIORITY,STACK_SIZE,NULL}); // 追加
-------------------------

-------timer3.c-------
/* 一番後ろに追加 */
void
test_task(VP_INT exinf)
{
}
----------------------

-------timer3.h-------
/*
 *  タスク優先度の設定
 */
#define DEFAULT_MAIN_PRIORITY  8
#define TIMER_PRIORITY         9
#define TEST_PRIORITY          9 // 追加


/*
 *  関数のプロトタイプ宣言
 */
#ifndef _MACRO_ONLY

extern void entry_task(VP_INT exinf);
extern void  timer_task(VP_INT exinf);
extern void  test_task(VP_INT exinf); // 追加
#endif /* _MACRO_ONLY */
----------------------

2011年10月13日12:47 Saito Naoki <saito.naoki @ nmiri.city.nagoya.jp>:

> 桐島さん
>
> 斉藤と申します.
>
> エラーが出た周辺のコードなどは見せていただくことは可能でしょうか.
>
>
> (11/10/13 10:42), 霧島遼二 wrote:
> > お世話になります。
> > 桐島と申します。
> > 最近μitronの勉強を始めました。
> > 初級実装セミナーのOAKS-MINIボード用教材でサンプルをボード(OAKS16-MINI
> > FullKit)に実装して動作確認をしていたのですが、試しにTIMER3にCRE_TSKで新
> > しくタスク(中身は空)を追加してみたところ、E_CTX reported by `isig_tim()'
> > in line 63 of `timer.c' というコンテキストエラーが発生します。
> > タスクを追加するだけでこのようなエラーが出るものなのでしょうか。
> > 組み込みは全くの初心者なのでよろしくお願いします。
>
>
>
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://www.toppers.jp/pipermail/users/attachments/20111013/29b454e4/attachment.html>