interrup.c

来自「050117 CD 修正分 iTRON hosroot」· C语言 代码 · 共 48 行

C
48
字号
/* ------------------------------------------------------------------------- */
/*  HOS 妱傝崬傒娗棟                                                         */
/*                                                                           */
/*                                   Copyright (C) 1998-2002 by Project HOS  */
/* ------------------------------------------------------------------------- */


#include "itron.h"


/* 妱傝崬傒偲僨傿僗僷僢僠偺嬛巭 */
ER   loc_cpu(void)
{
#if __ERR_CHECK_LEVEL >= 3
	/* 僞僗僋撈棫晹偐傜偼屇傋側偄 */
	if ( sysstat & TSS_INDP )
		return E_CTX;
#endif
	
	/* 妱傝崬傒偲僨傿僗僷僢僠偺嬛巭 */
	__di();
	sysstat = TSS_LOC;
	
	return E_OK;
}


/* 妱傝崬傒偲僨傿僗僷僢僠偺嫋壜 */
ER   unl_cpu(void)
{
#if __ERR_CHECK_LEVEL >= 3
	/* 僞僗僋撈棫晹偐傜偼屇傋側偄 */
	if ( sysstat & TSS_INDP )
		return E_CTX;
#endif

	/* 擮偺偨傔 */
	__di();
	
	/* 抶墑僨傿僗僷僢僠 */
	sysstat = TSS_TSK;
	if ( dlydsp )
		__tsk_dsp();
	__ei();
	
	return E_OK;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?