📄 at91sam9261.h
字号:
AT91_REG PIOB_PPUER; /* Pull-up Enable Register */ AT91_REG PIOB_PPUSR; /* Pull-up Status Register */ AT91_REG Reserved23[1]; AT91_REG PIOB_ASR; /* Select A Register */ AT91_REG PIOB_BSR; /* Select B Register */ AT91_REG PIOB_ABSR; /* AB Select Status Register */ AT91_REG Reserved24[9]; AT91_REG PIOB_OWER; /* Output Write Enable Register */ AT91_REG PIOB_OWDR; /* Output Write Disable Register */ AT91_REG PIOB_OWSR; /* Output Write Status Register */ AT91_REG Reserved25[85]; AT91_REG PIOC_PER; /* PIO Enable Register */ AT91_REG PIOC_PDR; /* PIO Disable Register */ AT91_REG PIOC_PSR; /* PIO Status Register */ AT91_REG Reserved26[1]; AT91_REG PIOC_OER; /* Output Enable Register */ AT91_REG PIOC_ODR; /* Output Disable Registerr */ AT91_REG PIOC_OSR; /* Output Status Register */ AT91_REG Reserved27[1]; AT91_REG PIOC_IFER; /* Input Filter Enable Register */ AT91_REG PIOC_IFDR; /* Input Filter Disable Register */ AT91_REG PIOC_IFSR; /* Input Filter Status Register */ AT91_REG Reserved28[1]; AT91_REG PIOC_SODR; /* Set Output Data Register */ AT91_REG PIOC_CODR; /* Clear Output Data Register */ AT91_REG PIOC_ODSR; /* Output Data Status Register */ AT91_REG PIOC_PDSR; /* Pin Data Status Register */ AT91_REG PIOC_IER; /* Interrupt Enable Register */ AT91_REG PIOC_IDR; /* Interrupt Disable Register */ AT91_REG PIOC_IMR; /* Interrupt Mask Register */ AT91_REG PIOC_ISR; /* Interrupt Status Register */ AT91_REG PIOC_MDER; /* Multi-driver Enable Register */ AT91_REG PIOC_MDDR; /* Multi-driver Disable Register */ AT91_REG PIOC_MDSR; /* Multi-driver Status Register */ AT91_REG Reserved29[1]; AT91_REG PIOC_PPUDR; /* Pull-up Disable Register */ AT91_REG PIOC_PPUER; /* Pull-up Enable Register */ AT91_REG PIOC_PPUSR; /* Pull-up Status Register */ AT91_REG Reserved30[1]; AT91_REG PIOC_ASR; /* Select A Register */ AT91_REG PIOC_BSR; /* Select B Register */ AT91_REG PIOC_ABSR; /* AB Select Status Register */ AT91_REG Reserved31[9]; AT91_REG PIOC_OWER; /* Output Write Enable Register */ AT91_REG PIOC_OWDR; /* Output Write Disable Register */ AT91_REG PIOC_OWSR; /* Output Write Status Register */ AT91_REG Reserved32[213]; AT91_REG PMC_SCER; /* System Clock Enable Register */ AT91_REG PMC_SCDR; /* System Clock Disable Register */ AT91_REG PMC_SCSR; /* System Clock Status Register */ AT91_REG Reserved33[1]; AT91_REG PMC_PCER; /* Peripheral Clock Enable Register */ AT91_REG PMC_PCDR; /* Peripheral Clock Disable Register */ AT91_REG PMC_PCSR; /* Peripheral Clock Status Register */ AT91_REG Reserved34[1]; AT91_REG PMC_MOR; /* Main Oscillator Register */ AT91_REG PMC_MCFR; /* Main Clock Frequency Register */ AT91_REG PMC_PLLAR; /* PLL A Register */ AT91_REG PMC_PLLBR; /* PLL B Register */ AT91_REG PMC_MCKR; /* Master Clock Register */ AT91_REG Reserved35[3]; AT91_REG PMC_PCKR[8]; /* Programmable Clock Register */ AT91_REG PMC_IER; /* Interrupt Enable Register */ AT91_REG PMC_IDR; /* Interrupt Disable Register */ AT91_REG PMC_SR; /* Status Register */ AT91_REG PMC_IMR; /* Interrupt Mask Register */ AT91_REG Reserved36[36]; AT91_REG RSTC_RCR; /* Reset Control Register */ AT91_REG RSTC_RSR; /* Reset Status Register */ AT91_REG RSTC_RMR; /* Reset Mode Register */ AT91_REG Reserved37[1]; AT91_REG SHDWC_SHCR; /* Shut Down Control Register */ AT91_REG SHDWC_SHMR; /* Shut Down Mode Register */ AT91_REG SHDWC_SHSR; /* Shut Down Status Register */ AT91_REG Reserved38[1]; AT91_REG RTTC_RTMR; /* Real-time Mode Register */ AT91_REG RTTC_RTAR; /* Real-time Alarm Register */ AT91_REG RTTC_RTVR; /* Real-time Value Register */ AT91_REG RTTC_RTSR; /* Real-time Status Register */ AT91_REG PITC_PIMR; /* Period Interval Mode Register */ AT91_REG PITC_PISR; /* Period Interval Status Register */ AT91_REG PITC_PIVR; /* Period Interval Value Register */ AT91_REG PITC_PIIR; /* Period Interval Image Register */ AT91_REG WDTC_WDCR; /* Watchdog Control Register */ AT91_REG WDTC_WDMR; /* Watchdog Mode Register */ AT91_REG WDTC_WDSR; /* Watchdog Status Register */ AT91_REG Reserved39[1]; AT91_REG SYS_GPBR0; /* General Purpose Register 0 */ AT91_REG SYS_GPBR1; /* General Purpose Register 1 */ AT91_REG SYS_GPBR2; /* General Purpose Register 2 */ AT91_REG SYS_GPBR3; /* General Purpose Register 3 */} AT91S_SYS, *AT91PS_SYS;/* ***************************************************************************** *//* SOFTWARE API DEFINITION FOR Static Memory Controller Interface *//* ***************************************************************************** */typedef struct _AT91S_SMC { AT91_REG SMC_SETUP0; /* Setup Register for CS 0 */ AT91_REG SMC_PULSE0; /* Pulse Register for CS 0 */ AT91_REG SMC_CYCLE0; /* Cycle Register for CS 0 */ AT91_REG SMC_CTRL0; /* Control Register for CS 0 */ AT91_REG SMC_SETUP1; /* Setup Register for CS 1 */ AT91_REG SMC_PULSE1; /* Pulse Register for CS 1 */ AT91_REG SMC_CYCLE1; /* Cycle Register for CS 1 */ AT91_REG SMC_CTRL1; /* Control Register for CS 1 */ AT91_REG SMC_SETUP2; /* Setup Register for CS 2 */ AT91_REG SMC_PULSE2; /* Pulse Register for CS 2 */ AT91_REG SMC_CYCLE2; /* Cycle Register for CS 2 */ AT91_REG SMC_CTRL2; /* Control Register for CS 2 */ AT91_REG SMC_SETUP3; /* Setup Register for CS 3 */ AT91_REG SMC_PULSE3; /* Pulse Register for CS 3 */ AT91_REG SMC_CYCLE3; /* Cycle Register for CS 3 */ AT91_REG SMC_CTRL3; /* Control Register for CS 3 */ AT91_REG SMC_SETUP4; /* Setup Register for CS 4 */ AT91_REG SMC_PULSE4; /* Pulse Register for CS 4 */ AT91_REG SMC_CYCLE4; /* Cycle Register for CS 4 */ AT91_REG SMC_CTRL4; /* Control Register for CS 4 */ AT91_REG SMC_SETUP5; /* Setup Register for CS 5 */ AT91_REG SMC_PULSE5; /* Pulse Register for CS 5 */ AT91_REG SMC_CYCLE5; /* Cycle Register for CS 5 */ AT91_REG SMC_CTRL5; /* Control Register for CS 5 */ AT91_REG SMC_SETUP6; /* Setup Register for CS 6 */ AT91_REG SMC_PULSE6; /* Pulse Register for CS 6 */ AT91_REG SMC_CYCLE6; /* Cycle Register for CS 6 */ AT91_REG SMC_CTRL6; /* Control Register for CS 6 */ AT91_REG SMC_SETUP7; /* Setup Register for CS 7 */ AT91_REG SMC_PULSE7; /* Pulse Register for CS 7 */ AT91_REG SMC_CYCLE7; /* Cycle Register for CS 7 */ AT91_REG SMC_CTRL7; /* Control Register for CS 7 */} AT91S_SMC, *AT91PS_SMC;/* -------- SMC_SETUP : (SMC Offset: 0x0) Setup Register for CS x -------- */#define AT91C_SMC_NWESETUP ((unsigned int) 0x3F << 0) /* (SMC) NWE Setup Length */#define AT91C_SMC_NCSSETUPWR ((unsigned int) 0x3F << 8) /* (SMC) NCS Setup Length in WRite Access */#define AT91C_SMC_NRDSETUP ((unsigned int) 0x3F << 16) /* (SMC) NRD Setup Length */#define AT91C_SMC_NCSSETUPRD ((unsigned int) 0x3F << 24) /* (SMC) NCS Setup Length in ReaD Access *//* -------- SMC_PULSE : (SMC Offset: 0x4) Pulse Register for CS x -------- */#define AT91C_SMC_NWEPULSE ((unsigned int) 0x7F << 0) /* (SMC) NWE Pulse Length */#define AT91C_SMC_NCSPULSEWR ((unsigned int) 0x7F << 8) /* (SMC) NCS Pulse Length in WRite Access */#define AT91C_SMC_NRDPULSE ((unsigned int) 0x7F << 16) /* (SMC) NRD Pulse Length */#define AT91C_SMC_NCSPULSERD ((unsigned int) 0x7F << 24) /* (SMC) NCS Pulse Length in ReaD Access *//* -------- SMC_CYC : (SMC Offset: 0x8) Cycle Register for CS x -------- */#define AT91C_SMC_NWECYCLE ((unsigned int) 0x1FF << 0) /* (SMC) Total Write Cycle Length */#define AT91C_SMC_NRDCYCLE ((unsigned int) 0x1FF << 16) /* (SMC) Total Read Cycle Length *//* -------- SMC_CTRL : (SMC Offset: 0xc) Control Register for CS x -------- */#define AT91C_SMC_READMODE ((unsigned int) 0x1 << 0) /* (SMC) Read Mode */#define AT91C_SMC_WRITEMODE ((unsigned int) 0x1 << 1) /* (SMC) Write Mode */#define AT91C_SMC_NWAITM ((unsigned int) 0x3 << 5) /* (SMC) NWAIT Mode */#define AT91C_SMC_NWAITM_NWAIT_DISABLE ((unsigned int) 0x0 << 5) /* (SMC) External NWAIT disabled. */#define AT91C_SMC_NWAITM_NWAIT_ENABLE_FROZEN ((unsigned int) 0x2 << 5) /* (SMC) External NWAIT enabled in frozen mode. */#define AT91C_SMC_NWAITM_NWAIT_ENABLE_READY ((unsigned int) 0x3 << 5) /* (SMC) External NWAIT enabled in ready mode. */#define AT91C_SMC_BAT ((unsigned int) 0x1 << 8) /* (SMC) Byte Access Type */#define AT91C_SMC_BAT_BYTE_SELECT ((unsigned int) 0x0 << 8) /* (SMC) Write controled by ncs, nbs0, nbs1,nbs2, nbs3. Read controled by ncs, nrd, nbs0, nbs1, nbs2, nbs3 */#define AT91C_SMC_BAT_BYTE_WRITE ((unsigned int) 0x1 << 8) /* (SMC) Write controled by ncs, nwe0, nwe1, nwe2, nwe3. Read controled by ncs and nrd. */#define AT91C_SMC_DBW ((unsigned int) 0x3 << 12) /* (SMC) Data Bus Width */#define AT91C_SMC_DBW_WIDTH_EIGTH_BITS ((unsigned int) 0x0 << 12) /* (SMC) 8 bits. */#define AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS ((unsigned int) 0x1 << 12) /* (SMC) 16 bits. */#define AT91C_SMC_DBW_WIDTH_THIRTY_TWO_BITS ((unsigned int) 0x2 << 12) /* (SMC) 32 bits. */#define AT91C_SMC_TDF ((unsigned int) 0xF << 16) /* (SMC) Data Float Time */#define AT91C_SMC_TDFEN ((unsigned int) 0x1 << 20) /* (SMC) TDF Enabled */#define AT91C_SMC_PMEN ((unsigned int) 0x1 << 24) /* (SMC) Page Mode Enabled */#define AT91C_SMC_PS ((unsigned int) 0x3 << 28) /* (SMC) Page Size */#define AT91C_SMC_PS_SIZE_FOUR_BYTES ((unsigned int) 0x0 << 28) /* (SMC) 4 bytes */#define AT91C_SMC_PS_SIZE_EIGHT_BYTES ((unsigned int) 0x1 << 28) /* (SMC) 8 bytes */#define AT91C_SMC_PS_SIZE_SIXTEEN_BYTES ((unsigned int) 0x2 << 28) /* (SMC) 16 bytes */#define AT91C_SMC_PS_SIZE_THIRTY_TWO_BYTES ((unsigned int) 0x3 << 28) /* (SMC) 32 bytes *//* ***************************************************************************** *//* SOFTWARE API DEFINITION FOR AHB Matrix Interface *//* ***************************************************************************** */typedef struct _AT91S_MATRIX { AT91_REG MATRIX_MCFG; /* Master Configuration Register */ AT91_REG MATRIX_SCFG0; /* Slave Configuration Register 0 */ AT91_REG MATRIX_SCFG1; /* Slave Configuration Register 1 */ AT91_REG MATRIX_SCFG2; /* Slave Configuration Register 2 */ AT91_REG MATRIX_SCFG3; /* Slave Configuration Register 3 */ AT91_REG MATRIX_SCFG4; /* Slave Configuration Register 4 */ AT91_REG Reserved0[3]; AT91_REG MATRIX_TCMR; /* Slave 0 Special Function Register */ AT91_REG Reserved1[2]; AT91_REG MATRIX_EBICSA; /* Slave 3 Special Function Register */ AT91_REG MATRIX_USBPCR; /* Slave 4 Special Function Register */ AT91_REG Reserved2[3]; AT91_REG MATRIX_VERSION; /* Version Register */} AT91S_MATRIX, *AT91PS_MATRIX;#define AT91C_MATRIX_CS3A_SM ((unsigned int) 0x1 << 3) /* (MATRIX) Chip Select 3 is assigned to the Static Memory Controller and the SmartMedia Logic is activated. *//* ***************************************************************************** *//* SOFTWARE API DEFINITION FOR Peripheral Data Controller *//* ***************************************************************************** */typedef struct _AT91S_PDC { AT91_REG PDC_RPR; /* Receive Pointer Register */ AT91_REG PDC_RCR; /* Receive Counter Register */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -