⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 modes.h

📁 开放源码的嵌入式开发环境
💻 H
字号:
/** * @file rtems/rtems/modes.h *//* *  This include file contains all constants and structures associated *  with the RTEMS thread and RTEMS_ASR modes. * *  COPYRIGHT (c) 1989-1999. *  On-Line Applications Research Corporation (OAR). * *  The license and distribution terms for this file may be *  found in the file LICENSE in this distribution or at *  http://www.rtems.com/license/LICENSE. * *  $Id: modes.h,v 1.15 2005/01/28 05:00:20 ralf Exp $ */#ifndef _RTEMS_RTEMS_MODES_H#define _RTEMS_RTEMS_MODES_H#ifdef __cplusplusextern "C" {#endif#include <rtems/score/isr.h>/* *  The following type defines the control block used to manage *  each a mode set. */typedef uint32_t   Modes_Control;/* *  The following constants define the individual modes and masks *  which may be used to compose a mode set and to alter modes. */#define RTEMS_ALL_MODE_MASKS     0x0000ffff#define RTEMS_DEFAULT_MODES     0x00000000#define RTEMS_CURRENT_MODE      0#define RTEMS_PREEMPT_MASK    0x00000100  /* preemption bit           */#define RTEMS_TIMESLICE_MASK  0x00000200  /* timeslice bit            */#define RTEMS_ASR_MASK        0x00000400  /* RTEMS_ASR enable bit           */#define RTEMS_INTERRUPT_MASK  CPU_MODES_INTERRUPT_MASK#define RTEMS_PREEMPT      0x00000000     /* enable preemption        */#define RTEMS_NO_PREEMPT   0x00000100     /* disable preemption       */#define RTEMS_NO_TIMESLICE 0x00000000     /* disable timeslicing      */#define RTEMS_TIMESLICE    0x00000200     /* enable timeslicing       */#define RTEMS_ASR          0x00000000     /* enable RTEMS_ASR               */#define RTEMS_NO_ASR       0x00000400     /* disable RTEMS_ASR              *//* *  The number of bits for interrupt levels is CPU dependent. *  RTEMS supports 0 to 256 levels in bits 0-7 of the mode. *//*PAGE * *  RTEMS_INTERRUPT_LEVEL * *  DESCRIPTION: * *  This function returns the processor dependent interrupt *  level which corresponds to the requested interrupt level. * * NOTE: RTEMS supports 256 interrupt levels using the least *       significant eight bits of MODES.CONTROL.  On any *       particular CPU, fewer than 256 levels may be supported. */#define RTEMS_INTERRUPT_LEVEL( _mode_set ) \  ( (_mode_set) & RTEMS_INTERRUPT_MASK )#ifndef __RTEMS_APPLICATION__#include <rtems/rtems/modes.inl>#endif#ifdef __cplusplus}#endif#endif/* end of include file */

⌨️ 快捷键说明

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