📄 s3c2410.h
字号:
#define GPIO_G10 MAKE_GPIO_NUM(PORTG_OFS, 10)#define GPIO_G11 MAKE_GPIO_NUM(PORTG_OFS, 11)#define GPIO_G12 MAKE_GPIO_NUM(PORTG_OFS, 12)#define GPIO_G13 MAKE_GPIO_NUM(PORTG_OFS, 13)#define GPIO_G14 MAKE_GPIO_NUM(PORTG_OFS, 14)#define GPIO_G15 MAKE_GPIO_NUM(PORTG_OFS, 15)#define GPIO_H0 MAKE_GPIO_NUM(PORTH_OFS, 0)#define GPIO_H1 MAKE_GPIO_NUM(PORTH_OFS, 1)#define GPIO_H2 MAKE_GPIO_NUM(PORTH_OFS, 2)#define GPIO_H3 MAKE_GPIO_NUM(PORTH_OFS, 3)#define GPIO_H4 MAKE_GPIO_NUM(PORTH_OFS, 4)#define GPIO_H5 MAKE_GPIO_NUM(PORTH_OFS, 5)#define GPIO_H6 MAKE_GPIO_NUM(PORTH_OFS, 6)#define GPIO_H7 MAKE_GPIO_NUM(PORTH_OFS, 7)#define GPIO_H8 MAKE_GPIO_NUM(PORTH_OFS, 8)#define GPIO_H9 MAKE_GPIO_NUM(PORTH_OFS, 9)#define GPIO_H10 MAKE_GPIO_NUM(PORTH_OFS, 10)#define GPIO_MODE_TOUT GPIO_MODE_ALT0#define GPIO_MODE_nXBACK GPIO_MODE_ALT0#define GPIO_MODE_nXBREQ GPIO_MODE_ALT0#define GPIO_MODE_nXDACK GPIO_MODE_ALT0#define GPIO_MODE_nXDREQ GPIO_MODE_ALT0#define GPIO_MODE_LEND GPIO_MODE_ALT0#define GPIO_MODE_VCLK GPIO_MODE_ALT0#define GPIO_MODE_VLINE GPIO_MODE_ALT0#define GPIO_MODE_VFRAME GPIO_MODE_ALT0#define GPIO_MODE_VM GPIO_MODE_ALT0#define GPIO_MODE_LCDVF GPIO_MODE_ALT0#define GPIO_MODE_VD GPIO_MODE_ALT0#define GPIO_MODE_IICSDA GPIO_MODE_ALT0#define GPIO_MODE_IICSCL GPIO_MODE_ALT0#define GPIO_MODE_SPICLK GPIO_MODE_ALT0#define GPIO_MODE_SPIMOSI GPIO_MODE_ALT0#define GPIO_MODE_SPIMISO GPIO_MODE_ALT0#define GPIO_MODE_SDDAT GPIO_MODE_ALT0#define GPIO_MODE_SDCMD GPIO_MODE_ALT0#define GPIO_MODE_SDCLK GPIO_MODE_ALT0#define GPIO_MODE_I2SSDO GPIO_MODE_ALT0#define GPIO_MODE_I2SSDI GPIO_MODE_ALT0#define GPIO_MODE_CDCLK GPIO_MODE_ALT0#define GPIO_MODE_I2SSCLK GPIO_MODE_ALT0#define GPIO_MODE_I2SLRCK GPIO_MODE_ALT0#define GPIO_MODE_I2SSDI_ABNORMAL GPIO_MODE_ALT1#define GPIO_MODE_nSS GPIO_MODE_ALT1#define GPIO_MODE_EINT GPIO_MODE_ALT0#define GPIO_MODE_nYPON GPIO_MODE_ALT1#define GPIO_MODE_YMON GPIO_MODE_ALT1#define GPIO_MODE_nXPON GPIO_MODE_ALT1#define GPIO_MODE_XMON GPIO_MODE_ALT1#define GPIO_MODE_UART GPIO_MODE_ALT0 #define GPIO_MODE_TCLK_ABNORMAL GPIO_MODE_ALT1#define GPIO_MODE_SPICLK_ABNORMAL GPIO_MODE_ALT1#define GPIO_MODE_SPIMOSI_ABNORMAL GPIO_MODE_ALT1#define GPIO_MODE_SPIMISO_ABNORMAL GPIO_MODE_ALT1#define GPIO_MODE_LCD_PWRDN GPIO_MODE_ALT1 #define rMISCCR (*(volatile unsigned *)(VA_IO_PORT_BASE+0x80)) //Miscellaneous control#define rDCLKCON (*(volatile unsigned *)(VA_IO_PORT_BASE+0x84)) //DCLK0/1 control#define rEXTINT0 (*(volatile unsigned *)(VA_IO_PORT_BASE+0x88)) //External interrupt control register 0#define rEXTINT1 (*(volatile unsigned *)(VA_IO_PORT_BASE+0x8c)) //External interrupt control register 1#define rEXTINT2 (*(volatile unsigned *)(VA_IO_PORT_BASE+0x90)) //External interrupt control register 2#define rEINTFLT0 (*(volatile unsigned *)(VA_IO_PORT_BASE+0x94)) //Reserved#define rEINTFLT1 (*(volatile unsigned *)(VA_IO_PORT_BASE+0x98)) //Reserved#define rEINTFLT2 (*(volatile unsigned *)(VA_IO_PORT_BASE+0x9c)) //External interrupt filter control register 2#define rEINTFLT3 (*(volatile unsigned *)(VA_IO_PORT_BASE+0xa0)) //External interrupt filter control register 3#define rEINTMSK (*(volatile unsigned *)(VA_IO_PORT_BASE+0xa4)) //External interrupt mask#define rEINTPND (*(volatile unsigned *)(VA_IO_PORT_BASE+0xa8)) //External interrupt pending#define rGSTATUS0 (*(volatile unsigned *)(VA_IO_PORT_BASE+0xac)) //External pin status#define rGSTATUS1 (*(volatile unsigned *)(VA_IO_PORT_BASE+0xb0)) //Chip ID(0x32410000)#define rGSTATUS2 (*(volatile unsigned *)(VA_IO_PORT_BASE+0xb4)) //Reset type#define rGSTATUS3 (*(volatile unsigned *)(VA_IO_PORT_BASE+0xb8)) //Saved data0(32-bit) before entering POWER_OFF mode #define rGSTATUS4 (*(volatile unsigned *)(VA_IO_PORT_BASE+0xbc)) //Saved data0(32-bit) before entering POWER_OFF mode // RTC#ifdef __BIG_ENDIAN#define rRTCCON (*(volatile unsigned char *)(VA_RTC_BASE+0x43)) //RTC control#define rTICNT (*(volatile unsigned char *)(VA_RTC_BASE+0x47)) //Tick time count#define rRTCALM (*(volatile unsigned char *)(VA_RTC_BASE+0x53)) //RTC alarm control#define rALMSEC (*(volatile unsigned char *)(VA_RTC_BASE+0x57)) //Alarm second#define rALMMIN (*(volatile unsigned char *)(VA_RTC_BASE+0x5b)) //Alarm minute#define rALMHOUR (*(volatile unsigned char *)(VA_RTC_BASE+0x5f)) //Alarm Hour#define rALMDAY (*(volatile unsigned char *)(VA_RTC_BASE+0x63)) //Alarm day#define rALMMON (*(volatile unsigned char *)(VA_RTC_BASE+0x67)) //Alarm month#define rALMYEAR (*(volatile unsigned char *)(VA_RTC_BASE+0x6b)) //Alarm year#define rRTCRST (*(volatile unsigned char *)(VA_RTC_BASE+0x6f)) //RTC round reset#define rBCDSEC (*(volatile unsigned char *)(VA_RTC_BASE+0x73)) //BCD second#define rBCDMIN (*(volatile unsigned char *)(VA_RTC_BASE+0x77)) //BCD minute#define rBCDHOUR (*(volatile unsigned char *)(VA_RTC_BASE+0x7b)) //BCD hour#define rBCDDAY (*(volatile unsigned char *)(VA_RTC_BASE+0x7f)) //BCD day#define rBCDDATE (*(volatile unsigned char *)(VA_RTC_BASE+0x83)) //BCD date#define rBCDMON (*(volatile unsigned char *)(VA_RTC_BASE+0x87)) //BCD month#define rBCDYEAR (*(volatile unsigned char *)(VA_RTC_BASE+0x8b)) //BCD year#else //Little Endian#define rRTCCON (*(volatile unsigned char *)(VA_RTC_BASE+0x40)) //RTC control#define rTICNT (*(volatile unsigned char *)(VA_RTC_BASE+0x44)) //Tick time count#define rRTCALM (*(volatile unsigned char *)(VA_RTC_BASE+0x50)) //RTC alarm control#define rALMSEC (*(volatile unsigned char *)(VA_RTC_BASE+0x54)) //Alarm second#define rALMMIN (*(volatile unsigned char *)(VA_RTC_BASE+0x58)) //Alarm minute#define rALMHOUR (*(volatile unsigned char *)(VA_RTC_BASE+0x5c)) //Alarm Hour#define rALMDATE (*(volatile unsigned char *)(VA_RTC_BASE+0x60)) //Alarm date#define rALMMON (*(volatile unsigned char *)(VA_RTC_BASE+0x64)) //Alarm month#define rALMYEAR (*(volatile unsigned char *)(VA_RTC_BASE+0x68)) //Alarm year#define rRTCRST (*(volatile unsigned char *)(VA_RTC_BASE+0x6c)) //RTC round reset#define rBCDSEC (*(volatile unsigned char *)(VA_RTC_BASE+0x70)) //BCD second#define rBCDMIN (*(volatile unsigned char *)(VA_RTC_BASE+0x74)) //BCD minute#define rBCDHOUR (*(volatile unsigned char *)(VA_RTC_BASE+0x78)) //BCD hour#define rBCDDATE (*(volatile unsigned char *)(VA_RTC_BASE+0x7c)) //BCD date#define rBCDDAY (*(volatile unsigned char *)(VA_RTC_BASE+0x80)) //BCD day#define rBCDMON (*(volatile unsigned char *)(VA_RTC_BASE+0x84)) //BCD month#define rBCDYEAR (*(volatile unsigned char *)(VA_RTC_BASE+0x88)) //BCD year#endif //RTC// ADC#define rADCCON (*(volatile unsigned *)(VA_ADC_BASE+0x00)) //ADC control#define rADCTSC (*(volatile unsigned *)(VA_ADC_BASE+0x04)) //ADC touch screen control#define rADCDLY (*(volatile unsigned *)(VA_ADC_BASE+0x08)) //ADC start or Interval Delay#define rADCDAT0 (*(volatile unsigned *)(VA_ADC_BASE+0x0c)) //ADC conversion data 0#define rADCDAT1 (*(volatile unsigned *)(VA_ADC_BASE+0x10)) //ADC conversion data 1 #define ADCPRS 49 /* used s3c2410_ts.c */#define ADC_DELAY_TIME 20000 /* used s3c2410_ts.c */ // SPI #define rSPCON0 (*(volatile unsigned *)(VA_SPI_BASE+0x00)) //SPI0 control#define rSPSTA0 (*(volatile unsigned *)(VA_SPI_BASE+0x04)) //SPI0 status#define rSPPIN0 (*(volatile unsigned *)(VA_SPI_BASE+0x08)) //SPI0 pin control#define rSPPRE0 (*(volatile unsigned *)(VA_SPI_BASE+0x0c)) //SPI0 baud rate prescaler#define rSPTDAT0 (*(volatile unsigned *)(VA_SPI_BASE+0x10)) //SPI0 Tx data#define rSPRDAT0 (*(volatile unsigned *)(VA_SPI_BASE+0x14)) //SPI0 Rx data#define rSPCON1 (*(volatile unsigned *)(VA_SPI_BASE+0x20)) //SPI1 control#define rSPSTA1 (*(volatile unsigned *)(VA_SPI_BASE+0x24)) //SPI1 status#define rSPPIN1 (*(volatile unsigned *)(VA_SPI_BASE+0x28)) //SPI1 pin control#define rSPPRE1 (*(volatile unsigned *)(VA_SPI_BASE+0x2c)) //SPI1 baud rate prescaler#define rSPTDAT1 (*(volatile unsigned *)(VA_SPI_BASE+0x30)) //SPI1 Tx data#define rSPRDAT1 (*(volatile unsigned *)(VA_SPI_BASE+0x34)) //SPI1 Rx data// SD Interface#define rSDICON (*(volatile unsigned *)(VA_SD_BASE+0x00)) //SDI control#define rSDIPRE (*(volatile unsigned *)(VA_SD_BASE+0x04)) //SDI baud rate prescaler#define rSDICARG (*(volatile unsigned *)(VA_SD_BASE+0x08)) //SDI command argument#define rSDICCON (*(volatile unsigned *)(VA_SD_BASE+0x0c)) //SDI command control#define rSDICSTA (*(volatile unsigned *)(VA_SD_BASE+0x10)) //SDI command status#define rSDIRSP0 (*(volatile unsigned *)(VA_SD_BASE+0x14)) //SDI response 0#define rSDIRSP1 (*(volatile unsigned *)(VA_SD_BASE+0x18)) //SDI response 1#define rSDIRSP2 (*(volatile unsigned *)(VA_SD_BASE+0x1c)) //SDI response 2#define rSDIRSP3 (*(volatile unsigned *)(VA_SD_BASE+0x20)) //SDI response 3#define rSDIDTIMER (*(volatile unsigned *)(VA_SD_BASE+0x24)) //SDI data/busy timer#define rSDIBSIZE (*(volatile unsigned *)(VA_SD_BASE+0x28)) //SDI block size#define rSDIDCON (*(volatile unsigned *)(VA_SD_BASE+0x2c)) //SDI data control#define rSDIDCNT (*(volatile unsigned *)(VA_SD_BASE+0x30)) //SDI data remain counter#define rSDIDSTA (*(volatile unsigned *)(VA_SD_BASE+0x34)) //SDI data status#define rSDIFSTA (*(volatile unsigned *)(VA_SD_BASE+0x38)) //SDI FIFO status#define rSDIIMSK (*(volatile unsigned *)(VA_SD_BASE+0x40)) //SDI interrupt mask#ifdef __BIG_ENDIAN#define rSDIDAT (*(volatile unsigned *)(VA_SD_BASE+0x3f)) //SDI data //#define SDIDAT (VA_SD_BASE+0x3f)#else // Little Endian#define rSDIDAT (*(volatile unsigned *)(VA_SD_BASE+0x3c)) //SDI data //#define SDIDAT (VA_SD_BASE+0x3c )#endif //SD Interface // PENDING BIT#define BIT_EINT0 (0x1)#define BIT_EINT1 (0x1<<1)#define BIT_EINT2 (0x1<<2)#define BIT_EINT3 (0x1<<3)#define BIT_EINT4_7 (0x1<<4)#define BIT_EINT8_23 (0x1<<5)#define BIT_NOTUSED6 (0x1<<6)#define BIT_BAT_FLT (0x1<<7)#define BIT_TICK (0x1<<8)#define BIT_WDT (0x1<<9)#define BIT_TIMER0 (0x1<<10)#define BIT_TIMER1 (0x1<<11)#define BIT_TIMER2 (0x1<<12)#define BIT_TIMER3 (0x1<<13)#define BIT_TIMER4 (0x1<<14)#define BIT_UART2 (0x1<<15)#define BIT_LCD (0x1<<16)#define BIT_DMA0 (0x1<<17)#define BIT_DMA1 (0x1<<18)#define BIT_DMA2 (0x1<<19)#define BIT_DMA3 (0x1<<20)#define BIT_SDI (0x1<<21)#define BIT_SPI0 (0x1<<22)#define BIT_UART1 (0x1<<23)#define BIT_NOTUSED24 (0x1<<24)#define BIT_USBD (0x1<<25)#define BIT_USBH (0x1<<26)#define BIT_IIC (0x1<<27)#define BIT_UART0 (0x1<<28)#define BIT_SPI1 (0x1<<29)#define BIT_RTC (0x1<<30)#define BIT_ADC (0x1<<31)#define BIT_ALLMSK (0xffffffff)#define BIT_SUB_ALLMSK (0x7ff)#define BIT_SUB_ADC (0x1<<10)#define BIT_SUB_TC (0x1<<9)#define BIT_SUB_ERR2 (0x1<<8)#define BIT_SUB_TXD2 (0x1<<7)#define BIT_SUB_RXD2 (0x1<<6)#define BIT_SUB_ERR1 (0x1<<5)#define BIT_SUB_TXD1 (0x1<<4)#define BIT_SUB_RXD1 (0x1<<3)#define BIT_SUB_ERR0 (0x1<<2)#define BIT_SUB_TXD0 (0x1<<1)#define BIT_SUB_RXD0 (0x1<<0)#define ClearPending(bit) {\ rSRCPND = bit;\ rINTPND = bit;\ rINTPND;\ } /* keyword : SER_BAUD */#define SER_BAUD_9600 9600 #define SER_BAUD_14400 11400#define SER_BAUD_19200 19200#define SER_BAUD_38400 38400#define SER_BAUD_57600 57600#define SER_BAUD_115200 115200#define CURRENT_BAUD_RATE SER_BAUD_115200 /* Used in serial_s3c2410.c ,uncompress.h *//**** Choose one among three ****/#define CURRENT_SERIALUART0 0//#define CURRENT_SERIALUART1 1//#define CURRENT_SERIALUART2 2/********************************//*** if you want to change UART , Change the below va
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -