コード例 #1
0
//周期ハンドラ0用の関数
void cyc0(int exinf) { // replace from VP_INT to int

	//タスクを起動する
	//具体的には,対象タスクを休止状態から,実行状態に移行させ,
	//タスクの起動時に行うべき処理を行う
	iact_tsk(TSK0);
}
コード例 #2
0
ファイル: sample1.c プロジェクト: inouema/toppers
void alarm_handler(intptr_t exinf)
{
    ID tskid = (ID)exinf;

    syslog(LOG_INFO , "Alarm handler is raised.");
    SVC(iact_tsk(tskid));
}
コード例 #3
0
void
alarm1_handler(intptr_t exinf)
{
	ER		ercd;

	check_point(14);
	ercd = iwup_tsk(TASK3);
	check_ercd(ercd, E_NOSPT);

	check_point(15);
	ercd = irel_wai(TASK3);
	check_ercd(ercd, E_NOSPT);

	check_point(16);
	ercd = iwup_tsk(TASK1);
	check_ercd(ercd, E_OK);

	check_point(17);
	ercd = iact_tsk(TASK3);
	check_ercd(ercd, E_OK);

	check_point(18);
	ercd = iact_tsk(TASK4);
	check_ercd(ercd, E_OK);

	check_point(19);
	ercd = irot_rdq(MID_PRIORITY);
	check_ercd(ercd, E_OK);

	check_point(20);
	ercd = irot_rdq(MID_PRIORITY);
	check_ercd(ercd, E_NOSPT);

	check_point(21);
	return;

	check_point(0);
}
コード例 #4
0
static mrb_value
mrb_ssp_thread_iact(mrb_state *mrb, mrb_value self)
{
	ER retval;
	mrb_value id   = mrb_iv_get(mrb, self, mrb_intern_lit(mrb, "@task_id"));
	mrb_int id_num = mrb_fixnum(id);
	retval = iact_tsk(id_num);

	if (retval != E_OK)
	{
		return(mrb_false_value());
	}
	return(mrb_true_value());
}
コード例 #5
0
void
cpuexc_handler(void *p_excinf)
{
	ER		ercd;

	switch (++cpuexc_count) {
	case 1:
		check_point(3);
		check_state_i(true, false, false, true, false);
		check_assert(xsns_xpn(p_excinf) == false);
		check_assert(xsns_dpn(p_excinf) == false);

		check_point(4);
		ercd = iact_tsk(TASK2);
		check_ercd(ercd, E_OK);
		ercd = iloc_cpu();
		check_ercd(ercd, E_OK);
		break;

	case 2:
		check_point(11);
		check_state_i(true, false, false, true, false);
		check_assert(xsns_xpn(p_excinf) == false);
		check_assert(xsns_dpn(p_excinf) == false);

		check_point(12);
		ercd = iras_tex(TASK1, 1U);
		check_ercd(ercd, E_OK);
		ercd = iloc_cpu();
		check_ercd(ercd, E_OK);
		break;

	default:
		check_point(0);
		break;
	}
}
コード例 #6
0
ファイル: sample1.c プロジェクト: inouema/toppers
void main_task_cychdr(intptr_t exinf)
{
    ID tskid = (ID)exinf;

    (void)iact_tsk(tskid);
}
コード例 #7
0
ファイル: perf4.c プロジェクト: RazeLiberty/FINE-PLAY-BOX
/*
 *  周期ハンドラ
 */
void cyclic_handler(intptr_t exinf)
{
	syslog_0(LOG_NOTICE, "begin_measure(3)");
	begin_measure(3);
	iact_tsk(TASK2);
}
コード例 #8
0
ファイル: nxtway_gs.c プロジェクト: martin-au/NXtpandedLib
//*****************************************************************************
// TASK			: cyc1
// DESCRIPTION 	: 40msec periodical Task handler
//*****************************************************************************
void cyc1(VP_INT exinf)
{
	iact_tsk(TSK1);
}
コード例 #9
0
ファイル: nxtway_gs.c プロジェクト: martin-au/NXtpandedLib
//*****************************************************************************
// TASK			: cyc0
// DESCRIPTION 	: 4msec periodical Task handler
//*****************************************************************************
void cyc0(VP_INT exinf)
{
	iact_tsk(TSK0);
}