📄 tht_memory_map_defines.h
字号:
//# $1000_7000 to $1000_7FFF #
//#########################################
#define RTC_BASE_ADDR 0x10007000
#define RTC_HOURMIN (RTC_BASE_ADDR+0x00) // 32bit rtc hour/min counter reg
#define RTC_SECOND (RTC_BASE_ADDR+0x04) // 32bit rtc seconds counter reg
#define RTC_ALRM_HM (RTC_BASE_ADDR+0x08) // 32bit rtc alarm hour/min reg
#define RTC_ALRM_SEC (RTC_BASE_ADDR+0x0C) // 32bit rtc alarm seconds reg
#define RTC_RTCCTL (RTC_BASE_ADDR+0x10) // 32bit rtc control reg
#define RTC_RTCISR (RTC_BASE_ADDR+0x14) // 32bit rtc interrupt status reg
#define RTC_RTCIENR (RTC_BASE_ADDR+0x18) // 32bit rtc interrupt enable reg
#define RTC_STPWCH (RTC_BASE_ADDR+0x1C) // 32bit rtc stopwatch min reg
#define RTC_DAYR (RTC_BASE_ADDR+0x20) // 32bit rtc days counter reg
#define RTC_DAYALARM (RTC_BASE_ADDR+0x24) // 32bit rtc day alarm reg
#define RTC_TEST1 (RTC_BASE_ADDR+0x28) // 32bit rtc test reg 1
#define RTC_TEST2 (RTC_BASE_ADDR+0x2C) // 32bit rtc test reg 2
#define RTC_TEST3 (RTC_BASE_ADDR+0x30) // 32bit rtc test reg 3
//#########################################
//# KPP #
//# $1000_8000 to $1000_8FFF #
//#########################################
#define KPP_BASE_ADDR 0x10008000
#define KPP_KPCR (KPP_BASE_ADDR+0x00) // 16bit kpp keypad control reg
#define KPP_KPSR (KPP_BASE_ADDR+0x02) // 16bit kpp keypad status reg
#define KPP_KDDR (KPP_BASE_ADDR+0x04) // 16bit kpp keypad data directon reg
#define KPP_KPDR (KPP_BASE_ADDR+0x06) // 16bit kpp keypad data reg
//#########################################
//# OWIRE #
//# $1000_9000 to $1000_9FFF #
//#########################################
#define OWIRE_BASE_ADDR 0x10009000
#define OWIRE_CTRL (OWIRE_BASE_ADDR+0x00) // 16bit owire control reg
#define OWIRE_TIME_DIV (OWIRE_BASE_ADDR+0x02) // 16bit owire time divider reg
#define OWIRE_RESET (OWIRE_BASE_ADDR+0x04) // 16bit owire reset reg
//#########################################
//# UART1 #
//# $1000_A000 to $1000_AFFF #
//#########################################
#define UART1_BASE_ADDR 0x1000A000
#define UART1_URXD_1 (UART1_BASE_ADDR+0x00) // 32bit uart1 receiver reg
#define UART1_UTXD_1 (UART1_BASE_ADDR+0x40) // 32bit uart1 transmitter reg
#define UART1_UCR1_1 (UART1_BASE_ADDR+0x80) // 32bit uart1 control 1 reg
#define UART1_UCR2_1 (UART1_BASE_ADDR+0x84) // 32bit uart1 control 2 reg
#define UART1_UCR3_1 (UART1_BASE_ADDR+0x88) // 32bit uart1 control 3 reg
#define UART1_UCR4_1 (UART1_BASE_ADDR+0x8C) // 32bit uart1 control 4 reg
#define UART1_UFCR_1 (UART1_BASE_ADDR+0x90) // 32bit uart1 fifo control reg
#define UART1_USR1_1 (UART1_BASE_ADDR+0x94) // 32bit uart1 status 1 reg
#define UART1_USR2_1 (UART1_BASE_ADDR+0x98) // 32bit uart1 status 2 reg
#define UART1_UESC_1 (UART1_BASE_ADDR+0x9C) // 32bit uart1 escape char reg
#define UART1_UTIM_1 (UART1_BASE_ADDR+0xA0) // 32bit uart1 escape timer reg
#define UART1_UBIR_1 (UART1_BASE_ADDR+0xA4) // 32bit uart1 BRM incremental reg
#define UART1_UBMR_1 (UART1_BASE_ADDR+0xA8) // 32bit uart1 BRM modulator reg
#define UART1_UBRC_1 (UART1_BASE_ADDR+0xAC) // 32bit uart1 baud rate count reg
#define UART1_ONEMS_1 (UART1_BASE_ADDR+0xB0) // 32bit uart1 one ms reg
#define UART1_UTS_1 (UART1_BASE_ADDR+0xB4) // 32bit uart1 test reg
//#########################################
//# UART2 #
//# $1000_B000 to $1000_BFFF #
//#########################################
#define UART2_BASE_ADDR 0x1000B000
#define UART2_URXD_2 (UART2_BASE_ADDR+0x00) // 32bit uart2 receiver reg
#define UART2_UTXD_2 (UART2_BASE_ADDR+0x40) // 32bit uart2 transmitter reg
#define UART2_UCR1_2 (UART2_BASE_ADDR+0x80) // 32bit uart2 control 1 reg
#define UART2_UCR2_2 (UART2_BASE_ADDR+0x84) // 32bit uart2 control 2 reg
#define UART2_UCR3_2 (UART2_BASE_ADDR+0x88) // 32bit uart2 control 3 reg
#define UART2_UCR4_2 (UART2_BASE_ADDR+0x8C) // 32bit uart2 control 4 reg
#define UART2_UFCR_2 (UART2_BASE_ADDR+0x90) // 32bit uart2 fifo control reg
#define UART2_USR1_2 (UART2_BASE_ADDR+0x94) // 32bit uart2 status 1 reg
#define UART2_USR2_2 (UART2_BASE_ADDR+0x98) // 32bit uart2 status 2 reg
#define UART2_UESC_2 (UART2_BASE_ADDR+0x9C) // 32bit uart2 escape char reg
#define UART2_UTIM_2 (UART2_BASE_ADDR+0xA0) // 32bit uart2 escape timer reg
#define UART2_UBIR_2 (UART2_BASE_ADDR+0xA4) // 32bit uart2 BRM incremental reg
#define UART2_UBMR_2 (UART2_BASE_ADDR+0xA8) // 32bit uart2 BRM modulator reg
#define UART2_UBRC_2 (UART2_BASE_ADDR+0xAC) // 32bit uart2 baud rate count reg
#define UART2_ONEMS_2 (UART2_BASE_ADDR+0xB0) // 32bit uart2 one ms reg
#define UART2_UTS_2 (UART2_BASE_ADDR+0xB4) // 32bit uart2 test reg
//#########################################
//# UART3 #
//# $1000_C000 to $1000_CFFF #
//#########################################
#define UART3_BASE_ADDR 0x1000C000
#define UART3_URXD_3 (UART3_BASE_ADDR+0x00) // 32bit uart3 receiver reg
#define UART3_UTXD_3 (UART3_BASE_ADDR+0x40) // 32bit uart3 transmitter reg
#define UART3_UCR1_3 (UART3_BASE_ADDR+0x80) // 32bit uart3 control 1 reg
#define UART3_UCR2_3 (UART3_BASE_ADDR+0x84) // 32bit uart3 control 2 reg
#define UART3_UCR3_3 (UART3_BASE_ADDR+0x88) // 32bit uart3 control 3 reg
#define UART3_UCR4_3 (UART3_BASE_ADDR+0x8C) // 32bit uart3 control 4 reg
#define UART3_UFCR_3 (UART3_BASE_ADDR+0x90) // 32bit uart3 fifo control reg
#define UART3_USR1_3 (UART3_BASE_ADDR+0x94) // 32bit uart3 status 1 reg
#define UART3_USR2_3 (UART3_BASE_ADDR+0x98) // 32bit uart3 status 2 reg
#define UART3_UESC_3 (UART3_BASE_ADDR+0x9C) // 32bit uart3 escape char reg
#define UART3_UTIM_3 (UART3_BASE_ADDR+0xA0) // 32bit uart3 escape timer reg
#define UART3_UBIR_3 (UART3_BASE_ADDR+0xA4) // 32bit uart3 BRM incremental reg
#define UART3_UBMR_3 (UART3_BASE_ADDR+0xA8) // 32bit uart3 BRM modulator reg
#define UART3_UBRC_3 (UART3_BASE_ADDR+0xAC) // 32bit uart3 baud rate count reg
#define UART3_ONEMS_3 (UART3_BASE_ADDR+0xB0) // 32bit uart3 one ms reg
#define UART3_UTS_3 (UART3_BASE_ADDR+0xB4) // 32bit uart3 test reg
//#########################################
//# UART4 #
//# $1000_D000 to $1000_DFFF #
//#########################################
#define UART4_BASE_ADDR 0x1000D000
#define UART4_URXD_4 (UART4_BASE_ADDR+0x00) // 32bit uart4 receiver reg
#define UART4_UTXD_4 (UART4_BASE_ADDR+0x40) // 32bit uart4 transmitter reg
#define UART4_UCR1_4 (UART4_BASE_ADDR+0x80) // 32bit uart4 control 1 reg
#define UART4_UCR2_4 (UART4_BASE_ADDR+0x84) // 32bit uart4 control 2 reg
#define UART4_UCR3_4 (UART4_BASE_ADDR+0x88) // 32bit uart4 control 3 reg
#define UART4_UCR4_4 (UART4_BASE_ADDR+0x8C) // 32bit uart4 control 4 reg
#define UART4_UFCR_4 (UART4_BASE_ADDR+0x90) // 32bit uart4 fifo control reg
#define UART4_USR1_4 (UART4_BASE_ADDR+0x94) // 32bit uart4 status 1 reg
#define UART4_USR2_4 (UART4_BASE_ADDR+0x98) // 32bit uart4 status 2 reg
#define UART4_UESC_4 (UART4_BASE_ADDR+0x9C) // 32bit uart4 escape char reg
#define UART4_UTIM_4 (UART4_BASE_ADDR+0xA0) // 32bit uart4 escape timer reg
#define UART4_UBIR_4 (UART4_BASE_ADDR+0xA4) // 32bit uart4 BRM incremental reg
#define UART4_UBMR_4 (UART4_BASE_ADDR+0xA8) // 32bit uart4 BRM modulator reg
#define UART4_UBRC_4 (UART4_BASE_ADDR+0xAC) // 32bit uart4 baud rate count reg
#define UART4_ONEMS_4 (UART4_BASE_ADDR+0xB0) // 32bit uart4 one ms reg
#define UART4_UTS_4 (UART4_BASE_ADDR+0xB4) // 32bit uart4 test reg
//#########################################
//# CSPI1 #
//# $1000_E000 to $1000_EFFF #
//#########################################
#define CSPI1_BASE_ADDR 0x1000E000
#define CSPI1_RXDATAREG1 (CSPI1_BASE_ADDR+0x00) // 32bit cspi1 receive data reg
#define CSPI1_TXDATAREG1 (CSPI1_BASE_ADDR+0x04) // 32bit cspi1 transmit data reg
#define CSPI1_CONTROLREG1 (CSPI1_BASE_ADDR+0x08) // 32bit cspi1 control reg
#define CSPI1_INTREG1 (CSPI1_BASE_ADDR+0x0C) // 32bit cspi1 interrupt stat/ctr reg
#define CSPI1_TESTREG1 (CSPI1_BASE_ADDR+0x10) // 32bit cspi1 test reg
#define CSPI1_PERIODREG1 (CSPI1_BASE_ADDR+0x14) // 32bit cspi1 sample period ctrl reg
#define CSPI1_DMAREG1 (CSPI1_BASE_ADDR+0x18) // 32bit cspi1 dma ctrl reg
#define CSPI1_RESETREG1 (CSPI1_BASE_ADDR+0x1C) // 32bit cspi1 soft reset reg
//#########################################
//# CSPI2 #
//# $1000_F000 to $1000_FFFF #
//#########################################
#define CSPI2_BASE_ADDR 0x1000F000
#define CSPI2_RXDATAREG1 (CSPI2_BASE_ADDR+0x00) // 32bit cspi2 receive data reg
#define CSPI2_TXDATAREG1 (CSPI2_BASE_ADDR+0x04) // 32bit cspi2 transmit data reg
#define CSPI2_CONTROLREG1 (CSPI2_BASE_ADDR+0x08) // 32bit cspi2 control reg
#define CSPI2_INTREG1 (CSPI2_BASE_ADDR+0x0C) // 32bit cspi2 interrupt stat/ctr reg
#define CSPI2_TESTREG1 (CSPI2_BASE_ADDR+0x10) // 32bit cspi2 test reg
#define CSPI2_PERIODREG1 (CSPI2_BASE_ADDR+0x14) // 32bit cspi2 sample period ctrl reg
#define CSPI2_DMAREG1 (CSPI2_BASE_ADDR+0x18) // 32bit cspi2 dma ctrl reg
#define CSPI2_RESETREG1 (CSPI2_BASE_ADDR+0x1C) // 32bit cspi2 soft reset reg
//#########################################
//# SSI1 #
//# $1001_0000 to $1001_0FFF #
//#########################################
#define SSI1_BASE_ADDR 0x10010000
#define SSI1_STX0 (SSI1_BASE_ADDR+0x00) // 32bit ssi1 tx reg 0
#define SSI1_STX1 (SSI1_BASE_ADDR+0x04) // 32bit ssi1 tx reg 1
#define SSI1_SRX0 (SSI1_BASE_ADDR+0x08) // 32bit ssi1 rx reg 0
#define SSI1_SRX1 (SSI1_BASE_ADDR+0x0C) // 32bit ssi1 rx reg 1
#define SSI1_SCR (SSI1_BASE_ADDR+0x10) // 32bit ssi1 control reg
#define SSI1_SISR (SSI1_BASE_ADDR+0x14) // 32bit ssi1 intr status reg
#define SSI1_SIER (SSI1_BASE_ADDR+0x18) // 32bit ssi1 intr enable reg
#define SSI1_STCR (SSI1_BASE_ADDR+0x1C) // 32bit ssi1 tx config reg
#define SSI1_SRCR (SSI1_BASE_ADDR+0x20) // 32bit ssi1 rx config reg
#define SSI1_STCCR (SSI1_BASE_ADDR+0x24) // 32bit ssi1 tx clock control reg
#define SSI1_SRCCR (SSI1_BASE_ADDR+0x28) // 32bit ssi1 rx clock control reg
#define SSI1_SFCSR (SSI1_BASE_ADDR+0x2C) // 32bit ssi1 fifo control/status reg
#define SSI1_STR (SSI1_BASE_ADDR+0x30) // 32bit ssi1 test reg
#define SSI1_SOR (SSI1_BASE_ADDR+0x34) // 32bit ssi1 option reg
#define SSI1_SACNT (SSI1_BASE_ADDR+0x38) // 32bit ssi1 ac97 control reg
#define SSI1_SACADD (SSI1_BASE_ADDR+0x3C) // 32bit ssi1 ac97 cmd addr reg
#define SSI1_SACDAT (SSI1_BASE_ADDR+0x40) // 32bit ssi1 ac97 cmd data reg
#define SSI1_SATAG (SSI1_BASE_ADDR+0x44) // 32bit ssi1 ac97 tag reg
#define SSI1_STMSK (SSI1_BASE_ADDR+0x48) // 32bit ssi1 tx time slot mask reg
#define SSI1_SRMSK (SSI1_BASE_ADDR+0x4C) // 32bit ssi1 rx time slot mask reg
//#########################################
//# SSI2 #
//# $1001_1000 to $1001_1FFF #
//#########################################
#define SSI2_BASE_ADDR 0x10011000
#define SSI2_STX0 (SSI2_BASE_ADDR+0x00) // 32bit ssi2 tx reg 0
#define SSI2_STX1 (SSI2_BASE_ADDR+0x04) // 32bit ssi2 tx reg 1
#define SSI2_SRX0 (SSI2_BASE_ADDR+0x08) // 32bit ssi2 rx reg 0
#define SSI2_SRX1 (SSI2_BASE_ADDR+0x0C) // 32bit ssi2 rx reg 1
#define SSI2_SCR (SSI2_BASE_ADDR+0x10) // 32bit ssi2 control reg
#define SSI2_SISR (SSI2_BASE_ADDR+0x14) // 32bit ssi2 intr status reg
#define SSI2_SIER (SSI2_BASE_ADDR+0x18) // 32bit ssi2 intr enable reg
#define SSI2_STCR (SSI2_BASE_ADDR+0x1C) // 32bit ssi2 tx config reg
#define SSI2_SRCR (SSI2_BASE_ADDR+0x20) // 32bit ssi2 rx config reg
#define SSI2_STCCR (SSI2_BASE_ADDR+0x24) // 32bit ssi2 tx clock control reg
#define SSI2_SRCCR (SSI2_BASE_ADDR+0x28) // 32bit ssi2 rx clock control reg
#define SSI2_SFCSR (SSI2_BASE_ADDR+0x2C) // 32bit ssi2 fifo control/status reg
#define SSI2_STR (SSI2_BASE_ADDR+0x30) // 32bit ssi2 test reg
#define SSI2_SOR (SSI2_BASE_ADDR+0x34) // 32bit ssi2 option reg
#define SSI2_SACNT (SSI2_BASE_ADDR+0x38) // 32bit ssi2 ac97 control reg
#define SSI2_SACADD (SSI2_BASE_ADDR+0x3C) // 32bit ssi2 ac97 cmd addr reg
#define SSI2_SACDAT (SSI2_BASE_ADDR+0x40) // 32bit ssi2 ac97 cmd data reg
#define SSI2_SATAG (SSI2_BASE_ADDR+0x44) // 32bit ssi2 ac97 tag reg
#define SSI2_STMSK (SSI2_BASE_ADDR+0x48) // 32bit ssi2 tx time slot mask reg
#define SSI2_SRMSK (SSI2_BASE_ADDR+0x4C) // 32bit ssi2 rx time slot mask reg
//#########################################
//# I2C #
//# $1001_2000 to $1001_2FFF #
//#########################################
#define I2C_BASE_ADDR 0x10012000
#define I2C_IADR (I2C_BASE_ADDR+0x00) // 16bit i2c address reg
#define I2C_IFDR (I2C_BASE_ADDR+0x04) // 16bit i2c frequency divider reg
#define I2C_I2CR (I2C_BASE_ADDR+0x08) // 16bit i2c control reg
#define I2C_I2SR (I2C_BASE_ADDR+0x0C) // 16bit i2c status reg
#define I2C_I2DR (I2C_BASE_ADDR+0x10) // 16bit i2c data i/o reg
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -