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

📄 defts201.h

📁 基于ADSP TS201的DMA传输程序
💻 H
📖 第 1 页 / 共 3 页
字号:
//*
//* defTS201.h
//*
//* Version 2.0 5/6/04
//*
//* Copyright (c) 2002 Analog Devices, Inc., All rights reserved
//*

#if !defined(__DEFTS201_H_)
#define __DEFTS201_H_

//
// Bit Mask Macros
//
#if !defined(MAKE_BITMASK_)
#define MAKE_BITMASK_(x_) (1<<(x_)) // Make a bit mask from a bit position
#endif
#if !defined(MAKE_LL_BITMASK_)
#define MAKE_LL_BITMASK_(x_) (1LL<<(x_)) // Make a bit mask from a bit position (usable only in C)
#endif

//*
//* Unmapped Registers Defines *
//*

//* XSTAT *
// Bit positions
#define XSTAT_AZ_P ( 0)
#define XSTAT_AN_P ( 1)
#define XSTAT_AV_P ( 2)
#define XSTAT_AC_P ( 3)
#define XSTAT_MZ_P ( 4)
#define XSTAT_MN_P ( 5)
#define XSTAT_MV_P ( 6)
#define XSTAT_MU_P ( 7)
#define XSTAT_SZ_P ( 8)
#define XSTAT_SN_P ( 9)
#define XSTAT_BF_P (10)
#define XSTAT_AI_P (12)
#define XSTAT_MI_P (13)
#define XSTAT_UEN_P (20)
#define XSTAT_OEN_P (21)
#define XSTAT_IVEN_P (22)
#define XSTAT_AUS_P (24)
#define XSTAT_AVS_P (25)
#define XSTAT_AOS_P (26)
#define XSTAT_AIS_P (27)
#define XSTAT_MUS_P (28)
#define XSTAT_MVS_P (29)
#define XSTAT_MOS_P (30)
#define XSTAT_MIS_P (31)

// Bit Masks
#define XSTAT_AZ MAKE_BITMASK_(XSTAT_AZ_P)
#define XSTAT_AN MAKE_BITMASK_(XSTAT_AN_P)
#define XSTAT_AV MAKE_BITMASK_(XSTAT_AV_P)
#define XSTAT_AC MAKE_BITMASK_(XSTAT_AC_P)
#define XSTAT_MZ MAKE_BITMASK_(XSTAT_MZ_P)
#define XSTAT_MN MAKE_BITMASK_(XSTAT_MN_P)
#define XSTAT_MV MAKE_BITMASK_(XSTAT_MV_P)
#define XSTAT_MU MAKE_BITMASK_(XSTAT_MU_P)
#define XSTAT_SZ MAKE_BITMASK_(XSTAT_SZ_P)
#define XSTAT_SN MAKE_BITMASK_(XSTAT_SN_P)
#define XSTAT_BF MAKE_BITMASK_(XSTAT_BF_P)
#define XSTAT_AI MAKE_BITMASK_(XSTAT_AI_P)
#define XSTAT_MI MAKE_BITMASK_(XSTAT_MI_P)
#define XSTAT_UEN MAKE_BITMASK_(XSTAT_UEN_P)
#define XSTAT_OEN MAKE_BITMASK_(XSTAT_OEN_P)
#define XSTAT_IVEN MAKE_BITMASK_(XSTAT_IVEN_P)
#define XSTAT_AUS MAKE_BITMASK_(XSTAT_AUS_P)
#define XSTAT_AVS MAKE_BITMASK_(XSTAT_AVS_P)
#define XSTAT_AOS MAKE_BITMASK_(XSTAT_AOS_P)
#define XSTAT_AIS MAKE_BITMASK_(XSTAT_AIS_P)
#define XSTAT_MUS MAKE_BITMASK_(XSTAT_MUS_P)
#define XSTAT_MVS MAKE_BITMASK_(XSTAT_MVS_P)
#define XSTAT_MOS MAKE_BITMASK_(XSTAT_MOS_P)
#define XSTAT_MIS MAKE_BITMASK_(XSTAT_MIS_P)

//* YSTAT *
// Bit positions
#define YSTAT_AZ_P ( 0)
#define YSTAT_AN_P ( 1)
#define YSTAT_AV_P ( 2)
#define YSTAT_AC_P ( 3)
#define YSTAT_MZ_P ( 4)
#define YSTAT_MN_P ( 5)
#define YSTAT_MV_P ( 6)
#define YSTAT_MU_P ( 7)
#define YSTAT_SZ_P ( 8)
#define YSTAT_SN_P ( 9)
#define YSTAT_BF_P (10)
#define YSTAT_AI_P (12)
#define YSTAT_MI_P (13)
#define YSTAT_UEN_P (20)
#define YSTAT_OEN_P (21)
#define YSTAT_IVEN_P (22)
#define YSTAT_AUS_P (24)
#define YSTAT_AVS_P (25)
#define YSTAT_AOS_P (26)
#define YSTAT_AIS_P (27)
#define YSTAT_MUS_P (28)
#define YSTAT_MVS_P (29)
#define YSTAT_MOS_P (30)
#define YSTAT_MIS_P (31)

// Bit Masks
#define YSTAT_AZ MAKE_BITMASK_(YSTAT_AZ_P)
#define YSTAT_AN MAKE_BITMASK_(YSTAT_AN_P)
#define YSTAT_AV MAKE_BITMASK_(YSTAT_AV_P)
#define YSTAT_AC MAKE_BITMASK_(YSTAT_AC_P)
#define YSTAT_MZ MAKE_BITMASK_(YSTAT_MZ_P)
#define YSTAT_MN MAKE_BITMASK_(YSTAT_MN_P)
#define YSTAT_MV MAKE_BITMASK_(YSTAT_MV_P)
#define YSTAT_MU MAKE_BITMASK_(YSTAT_MU_P)
#define YSTAT_SZ MAKE_BITMASK_(YSTAT_SZ_P)
#define YSTAT_SN MAKE_BITMASK_(YSTAT_SN_P)
#define YSTAT_BF MAKE_BITMASK_(YSTAT_BF_P)
#define YSTAT_AI MAKE_BITMASK_(YSTAT_AI_P)
#define YSTAT_MI MAKE_BITMASK_(YSTAT_MI_P)
#define YSTAT_UEN MAKE_BITMASK_(YSTAT_UEN_P)
#define YSTAT_OEN MAKE_BITMASK_(YSTAT_OEN_P)
#define YSTAT_IVEN MAKE_BITMASK_(YSTAT_IVEN_P)
#define YSTAT_AUS MAKE_BITMASK_(YSTAT_AUS_P)
#define YSTAT_AVS MAKE_BITMASK_(YSTAT_AVS_P)
#define YSTAT_AOS MAKE_BITMASK_(YSTAT_AOS_P)
#define YSTAT_AIS MAKE_BITMASK_(YSTAT_AIS_P)
#define YSTAT_MUS MAKE_BITMASK_(YSTAT_MUS_P)
#define YSTAT_MVS MAKE_BITMASK_(YSTAT_MVS_P)
#define YSTAT_MOS MAKE_BITMASK_(YSTAT_MOS_P)
#define YSTAT_MIS MAKE_BITMASK_(YSTAT_MIS_P)


//*
//* Mapped Register Defines *
//*


//* X Comp Block *

#define XR0_LOC (0x1E0000)
#define XR1_LOC (0x1E0001)
#define XR2_LOC (0x1E0002)
#define XR3_LOC (0x1E0003)
#define XR4_LOC (0x1E0004)
#define XR5_LOC (0x1E0005)
#define XR6_LOC (0x1E0006)
#define XR7_LOC (0x1E0007)
#define XR8_LOC (0x1E0008)
#define XR9_LOC (0x1E0009)
#define XR10_LOC (0x1E000A)
#define XR11_LOC (0x1E000B)
#define XR12_LOC (0x1E000C)
#define XR13_LOC (0x1E000D)
#define XR14_LOC (0x1E000E)
#define XR15_LOC (0x1E000F)
#define XR16_LOC (0x1E0010)
#define XR17_LOC (0x1E0011)
#define XR18_LOC (0x1E0012)
#define XR19_LOC (0x1E0013)
#define XR20_LOC (0x1E0014)
#define XR21_LOC (0x1E0015)
#define XR22_LOC (0x1E0016)
#define XR23_LOC (0x1E0017)
#define XR24_LOC (0x1E0018)
#define XR25_LOC (0x1E0019)
#define XR26_LOC (0x1E001A)
#define XR27_LOC (0x1E001B)
#define XR28_LOC (0x1E001C)
#define XR29_LOC (0x1E001D)
#define XR30_LOC (0x1E001E)
#define XR31_LOC (0x1E001F)

//* Y Comp Block *

#define YR0_LOC (0x1E0040)
#define YR1_LOC (0x1E0041)
#define YR2_LOC (0x1E0042)
#define YR3_LOC (0x1E0043)
#define YR4_LOC (0x1E0044)
#define YR5_LOC (0x1E0045)
#define YR6_LOC (0x1E0046)
#define YR7_LOC (0x1E0047)
#define YR8_LOC (0x1E0048)
#define YR9_LOC (0x1E0049)
#define YR10_LOC (0x1E004A)
#define YR11_LOC (0x1E004B)
#define YR12_LOC (0x1E004C)
#define YR13_LOC (0x1E004D)
#define YR14_LOC (0x1E004E)
#define YR15_LOC (0x1E004F)
#define YR16_LOC (0x1E0050)
#define YR17_LOC (0x1E0051)
#define YR18_LOC (0x1E0052)
#define YR19_LOC (0x1E0053)
#define YR20_LOC (0x1E0054)
#define YR21_LOC (0x1E0055)
#define YR22_LOC (0x1E0056)
#define YR23_LOC (0x1E0057)
#define YR24_LOC (0x1E0058)
#define YR25_LOC (0x1E0059)
#define YR26_LOC (0x1E005A)
#define YR27_LOC (0x1E005B)
#define YR28_LOC (0x1E005C)
#define YR29_LOC (0x1E005D)
#define YR30_LOC (0x1E005E)
#define YR31_LOC (0x1E005F)

//* XY Comp Block Merged *

#define XYR0_LOC (0x1E0080)
#define XYR1_LOC (0x1E0081)
#define XYR2_LOC (0x1E0082)
#define XYR3_LOC (0x1E0083)
#define XYR4_LOC (0x1E0084)
#define XYR5_LOC (0x1E0085)
#define XYR6_LOC (0x1E0086)
#define XYR7_LOC (0x1E0087)
#define XYR8_LOC (0x1E0088)
#define XYR9_LOC (0x1E0089)
#define XYR10_LOC (0x1E008A)
#define XYR11_LOC (0x1E008B)
#define XYR12_LOC (0x1E008C)
#define XYR13_LOC (0x1E008D)
#define XYR14_LOC (0x1E008E)
#define XYR15_LOC (0x1E008F)
#define XYR16_LOC (0x1E0090)
#define XYR17_LOC (0x1E0091)
#define XYR18_LOC (0x1E0092)
#define XYR19_LOC (0x1E0093)
#define XYR20_LOC (0x1E0094)
#define XYR21_LOC (0x1E0095)
#define XYR22_LOC (0x1E0096)
#define XYR23_LOC (0x1E0097)
#define XYR24_LOC (0x1E0098)
#define XYR25_LOC (0x1E0099)
#define XYR26_LOC (0x1E009A)
#define XYR27_LOC (0x1E009B)
#define XYR28_LOC (0x1E009C)
#define XYR29_LOC (0x1E009D)
#define XYR30_LOC (0x1E009E)
#define XYR31_LOC (0x1E009F)

//* YX Comp Block Merged *

#define YXR0_LOC (0x1E00C0)
#define YXR1_LOC (0x1E00C1)
#define YXR2_LOC (0x1E00C2)
#define YXR3_LOC (0x1E00C3)
#define YXR4_LOC (0x1E00C4)
#define YXR5_LOC (0x1E00C5)
#define YXR6_LOC (0x1E00C6)
#define YXR7_LOC (0x1E00C7)
#define YXR8_LOC (0x1E00C8)
#define YXR9_LOC (0x1E00C9)
#define YXR10_LOC (0x1E00CA)
#define YXR11_LOC (0x1E00CB)
#define YXR12_LOC (0x1E00CC)
#define YXR13_LOC (0x1E00CD)
#define YXR14_LOC (0x1E00CE)
#define YXR15_LOC (0x1E00CF)
#define YXR16_LOC (0x1E00D0)
#define YXR17_LOC (0x1E00D1)
#define YXR18_LOC (0x1E00D2)
#define YXR19_LOC (0x1E00D3)
#define YXR20_LOC (0x1E00D4)
#define YXR21_LOC (0x1E00D5)
#define YXR22_LOC (0x1E00D6)
#define YXR23_LOC (0x1E00D7)
#define YXR24_LOC (0x1E00D8)
#define YXR25_LOC (0x1E00D9)
#define YXR26_LOC (0x1E00DA)
#define YXR27_LOC (0x1E00DB)
#define YXR28_LOC (0x1E00DC)
#define YXR29_LOC (0x1E00DD)
#define YXR30_LOC (0x1E00DE)
#define YXR31_LOC (0x1E00DF)

//* XY Comp Block Broadcast *

#define XYBR0_LOC (0x1E0100)
#define XYBR1_LOC (0x1E0101)
#define XYBR2_LOC (0x1E0102)
#define XYBR3_LOC (0x1E0103)
#define XYBR4_LOC (0x1E0104)
#define XYBR5_LOC (0x1E0105)
#define XYBR6_LOC (0x1E0106)
#define XYBR7_LOC (0x1E0107)
#define XYBR8_LOC (0x1E0108)
#define XYBR9_LOC (0x1E0109)
#define XYBR10_LOC (0x1E010A)
#define XYBR11_LOC (0x1E010B)
#define XYBR12_LOC (0x1E010C)
#define XYBR13_LOC (0x1E010D)
#define XYBR14_LOC (0x1E010E)
#define XYBR15_LOC (0x1E010F)
#define XYBR16_LOC (0x1E0110)
#define XYBR17_LOC (0x1E0111)
#define XYBR18_LOC (0x1E0112)
#define XYBR19_LOC (0x1E0113)
#define XYBR20_LOC (0x1E0114)
#define XYBR21_LOC (0x1E0115)
#define XYBR22_LOC (0x1E0116)
#define XYBR23_LOC (0x1E0117)
#define XYBR24_LOC (0x1E0118)
#define XYBR25_LOC (0x1E0119)
#define XYBR26_LOC (0x1E011A)
#define XYBR27_LOC (0x1E011B)
#define XYBR28_LOC (0x1E011C)
#define XYBR29_LOC (0x1E011D)
#define XYBR30_LOC (0x1E011E)
#define XYBR31_LOC (0x1E011F)

//* JALU *

#define J0_LOC (0x1E0180)
#define J1_LOC (0x1E0181)
#define J2_LOC (0x1E0182)
#define J3_LOC (0x1E0183)
#define J4_LOC (0x1E0184)
#define J5_LOC (0x1E0185)
#define J6_LOC (0x1E0186)
#define J7_LOC (0x1E0187)
#define J8_LOC (0x1E0188)
#define J9_LOC (0x1E0189)
#define J10_LOC (0x1E018A)
#define J11_LOC (0x1E018B)
#define J12_LOC (0x1E018C)
#define J13_LOC (0x1E018D)
#define J14_LOC (0x1E018E)
#define J15_LOC (0x1E018F)
#define J16_LOC (0x1E0190)
#define J17_LOC (0x1E0191)
#define J18_LOC (0x1E0192)
#define J19_LOC (0x1E0193)
#define J20_LOC (0x1E0194)
#define J21_LOC (0x1E0195)
#define J22_LOC (0x1E0196)
#define J23_LOC (0x1E0197)
#define J24_LOC (0x1E0198)
#define J25_LOC (0x1E0199)
#define J26_LOC (0x1E019A)
#define J27_LOC (0x1E019B)
#define J28_LOC (0x1E019C)
#define J29_LOC (0x1E019D)
#define J30_LOC (0x1E019E)
#define J31_LOC (0x1E019F)

//* KALU *

#define K0_LOC (0x1E01A0)
#define K1_LOC (0x1E01A1)
#define K2_LOC (0x1E01A2)
#define K3_LOC (0x1E01A3)
#define K4_LOC (0x1E01A4)
#define K5_LOC (0x1E01A5)
#define K6_LOC (0x1E01A6)
#define K7_LOC (0x1E01A7)
#define K8_LOC (0x1E01A8)
#define K9_LOC (0x1E01A9)
#define K10_LOC (0x1E01AA)
#define K11_LOC (0x1E01AB)
#define K12_LOC (0x1E01AC)
#define K13_LOC (0x1E01AD)
#define K14_LOC (0x1E01AE)
#define K15_LOC (0x1E01AF)
#define K16_LOC (0x1E01B0)
#define K17_LOC (0x1E01B1)
#define K18_LOC (0x1E01B2)
#define K19_LOC (0x1E01B3)
#define K20_LOC (0x1E01B4)
#define K21_LOC (0x1E01B5)
#define K22_LOC (0x1E01B6)
#define K23_LOC (0x1E01B7)
#define K24_LOC (0x1E01B8)
#define K25_LOC (0x1E01B9)
#define K26_LOC (0x1E01BA)
#define K27_LOC (0x1E01BB)
#define K28_LOC (0x1E01BC)
#define K29_LOC (0x1E01BD)
#define K30_LOC (0x1E01BE)
#define K31_LOC (0x1E01BF)

//* JALU Circular *

#define JB0_LOC (0x1E01C0)
#define JB1_LOC (0x1E01C1)
#define JB2_LOC (0x1E01C2)
#define JB3_LOC (0x1E01C3)
#define JL0_LOC (0x1E01C4)
#define JL1_LOC (0x1E01C5)
#define JL2_LOC (0x1E01C6)
#define JL3_LOC (0x1E01C7)

//* KALU Circular *

#define KB0_LOC (0x1E01E0)
#define KB1_LOC (0x1E01E1)
#define KB2_LOC (0x1E01E2)
#define KB3_LOC (0x1E01E3)
#define KL0_LOC (0x1E01E4)
#define KL1_LOC (0x1E01E5)
#define KL2_LOC (0x1E01E6)
#define KL3_LOC (0x1E01E7)

//* Sequencer Registers *

#define CJMP_LOC (0x1E0340)
#define RETI_LOC (0x1E0342)
#define RETS_LOC (0x1E0344)
#define DBGE_LOC (0x1E0345)
#define LC0_LOC (0x1E0348)
#define LC1_LOC (0x1E0349)

//*

#define IVSW_LOC (0x1E0350)

//* Flag Control, Set, and Clear Registers with Bit Defines
#define FLAGREG_LOC (0x1E0354)
#define FLAGREGST_LOC (0x1E0355)
#define FLAGREGCL_LOC (0x1E0356)

// Bit positions
#define FLAGREG_FLAG0_EN_P (0) // FLAG0 output enable is bit 0 in FLAGREG
#define FLAGREG_FLAG1_EN_P (1) // FLAG1 output enable is bit 1 in FLAGREG
#define FLAGREG_FLAG2_EN_P (2) // FLAG2 output enable is bit 2 in FLAGREG
#define FLAGREG_FLAG3_EN_P (3) // FLAG3 output enable is bit 3 in FLAGREG
#define FLAGREG_FLAG0_OUT_P (4) // FLAG0 out pin is bit 4 in FLAGREG
#define FLAGREG_FLAG1_OUT_P (5) // FLAG1 out pin is bit 5 in FLAGREG
#define FLAGREG_FLAG2_OUT_P (6) // FLAG2 out pin is bit 6 in FLAGREG
#define FLAGREG_FLAG3_OUT_P (7) // FLAG3 out pin is bit 7 in FLAGREG

// Bit masks
#define FLAGREG_FLAG0_EN MAKE_BITMASK_(FLAGREG_FLAG0_EN_P)
#define FLAGREG_FLAG1_EN MAKE_BITMASK_(FLAGREG_FLAG1_EN_P)
#define FLAGREG_FLAG2_EN MAKE_BITMASK_(FLAGREG_FLAG2_EN_P)
#define FLAGREG_FLAG3_EN MAKE_BITMASK_(FLAGREG_FLAG3_EN_P)
#define FLAGREG_FLAG0_OUT MAKE_BITMASK_(FLAGREG_FLAG0_OUT_P)
#define FLAGREG_FLAG1_OUT MAKE_BITMASK_(FLAGREG_FLAG1_OUT_P)
#define FLAGREG_FLAG2_OUT MAKE_BITMASK_(FLAGREG_FLAG2_OUT_P)
#define FLAGREG_FLAG3_OUT MAKE_BITMASK_(FLAGREG_FLAG3_OUT_P)

//* SQCTL With Bit Defines *
#define SQCTL_LOC (0x1E0358)
#define SQCTLST_LOC (0x1E0359)
#define SQCTLCL_LOC (0x1E035A)

// Bit positions
#define SQCTL_GIE_P (2)
#define SQCTL_SW_P (3)
#define SQCTL_DBGDSBL_P (8)

⌨️ 快捷键说明

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