cslr_ostimer.h

来自「dsp在音频处理中的运用」· C头文件 代码 · 共 152 行

H
152
字号
/** =========================================================
 *   @file  cslr_ostimer.h
 *
 *   @path  $(CSLPATH)\arm\ostimer\src
 *
 *   @desc  Register layer header file for ostimer CSL
 */

/*  ============================================================================
 *   Copyright (c) Texas Instruments Inc 2002, 2003, 2004
 *
 *   Use of this software is controlled by the terms and conditions found in the
 *   license agreement under which this software has been supplied.
 *   ===========================================================================
 */

/*  @(#) PSP/CSL 3.00.01.00[5912] (2004-06-01) */

/* =============================================================================
 *  Revision History
 *  ===============
 *  07-Jun-2004 PR File Created.
 *
 * =============================================================================
 */

#ifndef _CSLR_OSTIMER_H_
#define _CSLR_OSTIMER_H_

#ifdef __cplusplus
extern "C" {
#endif

#include <cslr.h>
#include <tistdtypes.h>

/******************************************************************************
 * Register Overlay Structure
 *****************************************************************************/
typedef struct  {
   /** Load register */
    volatile Uint32 TICK_VALUE_REG;
   /** Read register */
    volatile Uint32 TICK_COUNTER_REG;
   /** Control register */
    volatile Uint32 TIMER_CTRL_REG;
} CSL_OstimerRegs;

/******************************************************************************
 * Register Id's
 *****************************************************************************/
typedef enum  {
	/** Load register intial value */
   CSL_OSTIMER_TICK_VALUE_REG   = 0x0000u,
   /** Read register intial value */
   CSL_OSTIMER_TICK_COUNTER_REG = 0x0004u,
   /** Control register intial value */
   CSL_OSTIMER_TIMER_CTRL_REG   = 0x0008u
} CSL_OstimerRegIds;

/******************************************************************************
 * Field Definition Macros
 *****************************************************************************/

/*******************************************************************************
 * Tick Value Register (LOAD)
 ******************************************************************************/

/** LOAD - field mask */
#define CSL_OSTIMER_TICK_VALUE_REG_TICK_VALUE_REG_MASK (0x00FFFFFFu)
/** LOAD - field shift */
#define CSL_OSTIMER_TICK_VALUE_REG_TICK_VALUE_REG_SHIFT (0x00000000u)
/** LOAD - field resetval */
#define CSL_OSTIMER_TICK_VALUE_REG_TICK_VALUE_REG_RESETVAL (0x00FFFFFFu)
/** LOAD - field resetval */
#define CSL_OSTIMER_TICK_VALUE_REG_RESETVAL (0x00FFFFFFu)

/******************************************************************************
 * Tick Counter Register (READ)
 *****************************************************************************/

/** READ - field mask */
#define CSL_OSTIMER_TICK_COUNTER_REG_TICK_COUNTER_REG_MASK (0x00FFFFFFu)
/** TREAD - field shift */
#define CSL_OSTIMER_TICK_COUNTER_REG_TICK_COUNTER_REG_SHIFT (0x00000000u)
/** READ - field resetval */
#define CSL_OSTIMER_TICK_COUNTER_REG_TICK_COUNTER_REG_RESETVAL (0x00FFFFFFu)
/** READ - field resetval */
#define CSL_OSTIMER_TICK_COUNTER_REG_RESETVAL (0x00FFFFFFu)

/******************************************************************************
 * Control Register(CTRL)
 *****************************************************************************/

/** CTRL Auto reload - field mask */
#define CSL_OSTIMER_TIMER_CTRL_REG_ARL_MASK (0x00000008u)
/** CTRL Auto reload - field shift */
#define CSL_OSTIMER_TIMER_CTRL_REG_ARL_SHIFT (0x00000003u)
/** CTRL Auto reload - field reset value */
#define CSL_OSTIMER_TIMER_CTRL_REG_ARL_RESETVAL (0x00000001u)
/** CTRL Auto reload - field disable */
#define CSL_OSTIMER_TIMER_CTRL_REG_ARL_DISABLE (0x00000000u)
/** CTRL Auto relaod - field enable */
#define CSL_OSTIMER_TIMER_CTRL_REG_ARL_ENABLE (0x00000001u)

/** CTRL ENA - field mask */
#define CSL_OSTIMER_TIMER_CTRL_REG_IT_ENA_MASK (0x00000004u)
/** CTRL ENA - field shift */
#define CSL_OSTIMER_TIMER_CTRL_REG_IT_ENA_SHIFT (0x00000002u)
/** CTRL ENA - field resetval */
#define CSL_OSTIMER_TIMER_CTRL_REG_IT_ENA_RESETVAL (0x00000000u)
/** CTRL ENA - field disable */
#define CSL_OSTIMER_TIMER_CTRL_REG_IT_ENA_DISABLE (0x00000000u)
/** CTRL ENA - field enable */
#define CSL_OSTIMER_TIMER_CTRL_REG_IT_ENA_ENABLE (0x00000001u)

/** CTRL TRB - field mask */
#define CSL_OSTIMER_TIMER_CTRL_REG_TRB_MASK (0x00000002u)
/** CTRL TRB - field shift */
#define CSL_OSTIMER_TIMER_CTRL_REG_TRB_SHIFT (0x00000001u)
/** CTRL TRB - field resetval */
#define CSL_OSTIMER_TIMER_CTRL_REG_TRB_RESETVAL (0x00000000u)
/** CTRL TRB - field reset */
#define CSL_OSTIMER_TIMER_CTRL_REG_TRB_RESET (0x00000000u)
/** CTRL TRB - field set */
#define CSL_OSTIMER_TIMER_CTRL_REG_TRB_SET (0x00000001u)

/** CTRL TSS - field mask */
#define CSL_OSTIMER_TIMER_CTRL_REG_TSS_MASK (0x00000001u)
/** CNTL TSS - field shift */
#define CSL_OSTIMER_TIMER_CTRL_REG_TSS_SHIFT (0x00000000u)
/** CTRL TSS - field resetval */
#define CSL_OSTIMER_TIMER_CTRL_REG_TSS_RESETVAL (0x00000000u)
/** CTRL TSS - field stop */
#define CSL_OSTIMER_TIMER_CTRL_REG_TSS_STOP (0x00000000u)
/** CTRL TSS - field start */
#define CSL_OSTIMER_TIMER_CTRL_REG_TSS_START (0x00000001u)

/** CTRL REG - field resetval */
#define CSL_OSTIMER_TIMER_CTRL_REG_RESETVAL (0x00000008u)

/**
 * Overlay structure typedef definition
 */
typedef volatile CSL_OstimerRegs  *CSL_OstimerRegsOvly;

#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

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