📄 mpu_subsystem.h
字号:
//*********************************************************************\\
// company: COMMIT Incorporated \\
// department: HW \\
// author: LiYuan \\
// version: 1.0 \\
// create date: 11/03/2005 \\
// release date: \\
// final revise date: \\
// reviser: \\
// file descript: \\
//*********************************************************************\\
//registers define
static unsigned int TC_Base_Addr = 0xfffecc00;
#define TC_OCPT1_PRIOR_REG *(volatile unsigned long *)(TC_Base_Addr + 0x00)
#define TC_OCPT1_PTOR1_REG *(volatile unsigned long *)(TC_Base_Addr + 0xa0)
#define TC_OCPT1_PTOR2_REG *(volatile unsigned long *)(TC_Base_Addr + 0xa4)
#define TC_OCPT1_PTOR3_REG *(volatile unsigned long *)(TC_Base_Addr + 0xa8)
#define TC_OCPT1_ATOR_REG *(volatile unsigned long *)(TC_Base_Addr + 0xac)
#define TC_OCPT1_AADDR_REG *(volatile unsigned long *)(TC_Base_Addr + 0xb0)
#define TC_OCPT1_ATYPER_REG *(volatile unsigned long *)(TC_Base_Addr + 0xb4)
#define TC_OCPT_CONFIG_REG *(volatile unsigned long *)(TC_Base_Addr + 0xb8)
#define TC_OCPT2_PRIOR_REG *(volatile unsigned long *)(TC_Base_Addr + 0xd0)
#define TC_OCPT2_PTOR1_REG *(volatile unsigned long *)(TC_Base_Addr + 0xd4)
#define TC_OCPT2_PTOR2_REG *(volatile unsigned long *)(TC_Base_Addr + 0xd8)
#define TC_OCPT2_PTOR3_REG *(volatile unsigned long *)(TC_Base_Addr + 0xdc)
#define TC_OCPT2_ATOR_REG *(volatile unsigned long *)(TC_Base_Addr + 0xe0)
#define TC_OCPT2_AADDR_REG *(volatile unsigned long *)(TC_Base_Addr + 0xe4)
#define TC_OCPT2_ATYPER_REG *(volatile unsigned long *)(TC_Base_Addr + 0xe8)
static unsigned int MPUIPORT_Base_Addr = 0xe1020000;
#define MPUIPORT_APIRI_REG *(volatile unsigned short *)(MPUIPORT_Base_Addr + 0x00)
#define MPUIPORT_APIRS_REG *(volatile unsigned short *)(MPUIPORT_Base_Addr + 0x02)
static unsigned int MPUI_Base_Addr = 0xfffec900;
#define MPUI_CONTROL_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x00)
#define MPUI_DEBUG_ADDRESS_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x04)
#define MPUI_DEBUG_DATA_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x08)
#define MPUI_DEBUG_FLAG_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x0c)
#define MPUI_STATUS_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x10)
#define MPUI_DSP_STATUS_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x14)
#define MPUI_DSP_BOOT_CONFIG_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x18)
#define MPUI_DSP_MPUI_CONFIG_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x1c)
#define MPUI_DSP_MISC_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x20)
#define MPUI_ENHANCED_CTRL_REG *(volatile unsigned long *)(MPUI_Base_Addr + 0x24)
static unsigned int MAILBOX_Base_Addr = 0xfffcf000;
#define MAILBOX_MPU2DSP1A_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x00)
#define MAILBOX_MPU2DSP1B_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x04)
#define MAILBOX_DSP2MPU1A_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x08)
#define MAILBOX_DSP2MPU1B_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x0c)
#define MAILBOX_DSP2MPU2A_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x10)
#define MAILBOX_DSP2MPU2B_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x14)
#define MAILBOX_MPU2DSP1_FLAG_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x18)
#define MAILBOX_DSP2MPU1_FLAG_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x1c)
#define MAILBOX_DSP2MPU2_FLAG_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x20)
#define MAILBOX_MPU2DSP2A_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x24)
#define MAILBOX_MPU2DSP2B_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x28)
#define MAILBOX_MPU2DSP2_FLAG_REG *(volatile unsigned short *)(MAILBOX_Base_Addr + 0x2c)
static unsigned int TIPBPRIVATE_Base_Addr = 0xfffeca00;
#define TIPBPRIVATE_RHEA_CNTL_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x00)
#define TIPBPRIVATE_RHEA_BUS_ALLOC_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x04)
#define TIPBPRIVATE_ARM_RHEA_CNTL_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x08)
#define TIPBPRIVATE_ENHANCED_RHEA_CNTL_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x0c)
#define TIPBPRIVATE_ADDRESS_DBG_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x10)
#define TIPBPRIVATE_DATA_DEBUG_LOW_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x14)
#define TIPBPRIVATE_DATA_DEBUG_HIGH_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x18)
#define TIPBPRIVATE_DEBUG_CNTR_SIG_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x1c)
#define TIPBPRIVATE_ACCESS_CNTL_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x20)
#define TIPBPRIVATE_CHANNEL_INFO_REG_LSB_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x24)
#define TIPBPRIVATE_CHANNEL_INFO_REG_MSB_REG *(volatile unsigned short *)(TIPBPRIVATE_Base_Addr + 0x28)
static unsigned int TIPBPUBLIC_Base_Addr = 0xfffed300;
#define TIPBPUBLIC_RHEA_CNTL_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x00)
#define TIPBPUBLIC_RHEA_BUS_ALLOC_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x04)
#define TIPBPUBLIC_ARM_RHEA_CNTL_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x08)
#define TIPBPUBLIC_ENHANCED_RHEA_CNTL_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x0c)
#define TIPBPUBLIC_ADDRESS_DBG_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x10)
#define TIPBPUBLIC_DATA_DEBUG_LOW_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x14)
#define TIPBPUBLIC_DATA_DEBUG_HIGH_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x18)
#define TIPBPUBLIC_DEBUG_CNTR_SIG_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x1c)
#define TIPBPUBLIC_ACCESS_CNTL_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x20)
#define TIPBPUBLIC_CHANNEL_INFO_REG_LSB_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x24)
#define TIPBPUBLIC_CHANNEL_INFO_REG_MSB_REG *(volatile unsigned short *)(TIPBPUBLIC_Base_Addr + 0x28)
//parameter define
#define MAILBOX_MPU2DSP1 1
#define MAILBOX_MPU2DSP2 2
#define MAILBOX_DSP2MPU1 3
#define MAILBOX_DSP2MPU2 4
#define MAILBOX_MPU2DSP1A 11
#define MAILBOX_MPU2DSP1B 12
#define MAILBOX_MPU2DSP2A 13
#define MAILBOX_MPU2DSP2B 14
#define MAILBOX_DSP2MPU1A 15
#define MAILBOX_DSP2MPU1B 16
#define MAILBOX_DSP2MPU2A 17
#define MAILBOX_DSP2MPU2B 18
#define MAILBOX_MPU2DSP1_FLAG 1
#define MAILBOX_MPU2DSP2_FLAG 2
#define MAILBOX_DSP2MPU1_FLAG 3
#define MAILBOX_DSP2MPU2_FLAG 4
//functions define
void MAILBOX_IntCfg();
short MAILBOX_Read(int);
void MAILBOX_Write(int, short, short);
short MAILBOX_GetFlag(int);
void MAILBOX_InthProcess();
void WaitDSPRun();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -