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

📄 at91rm9200_mci.h

📁 ARM板驱动程序源代码
💻 H
字号:
/* ----------------------------------------------------------------------------*//*          ATMEL Microcontroller Software Support  -  ROUSSET  -*//* ----------------------------------------------------------------------------*//*  The software is delivered "AS IS" without warranty or condition of any*//*  kind, either express, implied or statutory. This includes without*//*  limitation any warranty or condition with respect to merchantability or*//*  fitness for any particular purpose, or against the infringements of*//*  intellectual property rights of others.*//* ----------------------------------------------------------------------------*//* File Name           : AT91RM9200.h*//* Object              : AT91RM9200 / MCI definitions*//* Generated           : AT91 SW Application Group  12/03/2002 (10:48:02)*//* *//* ----------------------------------------------------------------------------*/#ifndef AT91RM9200_MCI_H#define AT91RM9200_MCI_H/* ******************************************************************************//*              SOFTWARE API DEFINITION  FOR Multimedia Card Interface*//* ******************************************************************************/#ifndef __ASSEMBLY__typedef struct _AT91S_MCI {	AT91_REG	 MCI_CR; 	/* MCI Control Register*/	AT91_REG	 MCI_MR; 	/* MCI Mode Register*/	AT91_REG	 MCI_DTOR; 	/* MCI Data Timeout Register*/	AT91_REG	 MCI_SDCR; 	/* MCI SD Card Register*/	AT91_REG	 MCI_ARGR; 	/* MCI Argument Register*/	AT91_REG	 MCI_CMDR; 	/* MCI Command Register*/	AT91_REG	 Reserved0[2]; 	/* */	AT91_REG	 MCI_RSPR[4]; 	/* MCI Response Register*/	AT91_REG	 MCI_RDR; 	/* MCI Receive Data Register*/	AT91_REG	 MCI_TDR; 	/* MCI Transmit Data Register*/	AT91_REG	 Reserved1[2]; 	/* */	AT91_REG	 MCI_SR; 	/* MCI Status Register*/	AT91_REG	 MCI_IER; 	/* MCI Interrupt Enable Register*/	AT91_REG	 MCI_IDR; 	/* MCI Interrupt Disable Register*/	AT91_REG	 MCI_IMR; 	/* MCI Interrupt Mask Register*/	AT91_REG	 Reserved2[44]; 	/* */	AT91_REG	 MCI_RPR; 	/* Receive Pointer Register*/	AT91_REG	 MCI_RCR; 	/* Receive Counter Register*/	AT91_REG	 MCI_TPR; 	/* Transmit Pointer Register*/	AT91_REG	 MCI_TCR; 	/* Transmit Counter Register*/	AT91_REG	 MCI_RNPR; 	/* Receive Next Pointer Register*/	AT91_REG	 MCI_RNCR; 	/* Receive Next Counter Register*/	AT91_REG	 MCI_TNPR; 	/* Transmit Next Pointer Register*/	AT91_REG	 MCI_TNCR; 	/* Transmit Next Counter Register*/	AT91_REG	 MCI_PTCR; 	/* PDC Transfer Control Register*/	AT91_REG	 MCI_PTSR; 	/* PDC Transfer Status Register*/} AT91S_MCI, *AT91PS_MCI;#endif/* -------- MCI_CR : (MCI Offset: 0x0) MCI Control Register -------- */#define AT91C_MCI_MCIEN       ((unsigned int) 0x1 <<  0) /* (MCI) Multimedia Interface Enable*/#define AT91C_MCI_MCIDIS      ((unsigned int) 0x1 <<  1) /* (MCI) Multimedia Interface Disable*/#define AT91C_MCI_PWSEN       ((unsigned int) 0x1 <<  2) /* (MCI) Power Save Mode Enable*/#define AT91C_MCI_PWSDIS      ((unsigned int) 0x1 <<  3) /* (MCI) Power Save Mode Disable*//* -------- MCI_MR : (MCI Offset: 0x4) MCI Mode Register -------- */#define AT91C_MCI_CLKDIV      ((unsigned int) 0x1 <<  0) /* (MCI) Clock Divider*/#define AT91C_MCI_PWSDIV      ((unsigned int) 0x1 <<  8) /* (MCI) Power Saving Divider*/#define AT91C_MCI_PDCPADV     ((unsigned int) 0x1 << 14) /* (MCI) PDC Padding Value*/#define AT91C_MCI_PDCMODE     ((unsigned int) 0x1 << 15) /* (MCI) PDC Oriented Mode*/#define AT91C_MCI_BLKLEN      ((unsigned int) 0x1 << 18) /* (MCI) Data Block Length*//* -------- MCI_DTOR : (MCI Offset: 0x8) MCI Data Timeout Register -------- */#define AT91C_MCI_DTOCYC      ((unsigned int) 0x1 <<  0) /* (MCI) Data Timeout Cycle Number*/#define AT91C_MCI_DTOMUL      ((unsigned int) 0x7 <<  4) /* (MCI) Data Timeout Multiplier*/#define 	AT91C_MCI_DTOMUL_1                    ((unsigned int) 0x0 <<  4) /* (MCI) DTOCYC x 1*/#define 	AT91C_MCI_DTOMUL_16                   ((unsigned int) 0x1 <<  4) /* (MCI) DTOCYC x 16*/#define 	AT91C_MCI_DTOMUL_128                  ((unsigned int) 0x2 <<  4) /* (MCI) DTOCYC x 128*/#define 	AT91C_MCI_DTOMUL_256                  ((unsigned int) 0x3 <<  4) /* (MCI) DTOCYC x 256*/#define 	AT91C_MCI_DTOMUL_1024                 ((unsigned int) 0x4 <<  4) /* (MCI) DTOCYC x 1024*/#define 	AT91C_MCI_DTOMUL_4096                 ((unsigned int) 0x5 <<  4) /* (MCI) DTOCYC x 4096*/#define 	AT91C_MCI_DTOMUL_65536                ((unsigned int) 0x6 <<  4) /* (MCI) DTOCYC x 65536*/#define 	AT91C_MCI_DTOMUL_1048576              ((unsigned int) 0x7 <<  4) /* (MCI) DTOCYC x 1048576*//* -------- MCI_SDCR : (MCI Offset: 0xc) MCI SD Card Register -------- */#define AT91C_MCI_SCDSEL      ((unsigned int) 0x1 <<  0) /* (MCI) SD Card Selector*/#define AT91C_MCI_SCDBUS      ((unsigned int) 0x1 <<  7) /* (MCI) SD Card Bus Width*//* -------- MCI_CMDR : (MCI Offset: 0x14) MCI Command Register -------- */#define AT91C_MCI_CMDNB       ((unsigned int) 0x1F <<  0) /* (MCI) Command Number*/#define AT91C_MCI_RSPTYP      ((unsigned int) 0x3 <<  6) /* (MCI) Response Type*/#define 	AT91C_MCI_RSPTYP_NO                   ((unsigned int) 0x0 <<  6) /* (MCI) No response*/#define 	AT91C_MCI_RSPTYP_48                   ((unsigned int) 0x1 <<  6) /* (MCI) 48-bit response*/#define 	AT91C_MCI_RSPTYP_136                  ((unsigned int) 0x2 <<  6) /* (MCI) 136-bit response*/#define AT91C_MCI_SPCMD       ((unsigned int) 0x7 <<  8) /* (MCI) Special CMD*/#define 	AT91C_MCI_SPCMD_NONE                 ((unsigned int) 0x0 <<  8) /* (MCI) Not a special CMD*/#define 	AT91C_MCI_SPCMD_INIT                 ((unsigned int) 0x1 <<  8) /* (MCI) Initialization CMD*/#define 	AT91C_MCI_SPCMD_SYNC                 ((unsigned int) 0x2 <<  8) /* (MCI) Synchronized CMD*/#define 	AT91C_MCI_SPCMD_IT_CMD               ((unsigned int) 0x4 <<  8) /* (MCI) Interrupt command*/#define 	AT91C_MCI_SPCMD_IT_REP               ((unsigned int) 0x5 <<  8) /* (MCI) Interrupt response*/#define AT91C_MCI_OPDCMD      ((unsigned int) 0x1 << 11) /* (MCI) Open Drain Command*/#define AT91C_MCI_MAXLAT      ((unsigned int) 0x1 << 12) /* (MCI) Maximum Latency for Command to respond*/#define AT91C_MCI_TRCMD       ((unsigned int) 0x3 << 16) /* (MCI) Transfer CMD*/#define 	AT91C_MCI_TRCMD_NO                   ((unsigned int) 0x0 << 16) /* (MCI) No transfer*/#define 	AT91C_MCI_TRCMD_START                ((unsigned int) 0x1 << 16) /* (MCI) Start transfer*/#define 	AT91C_MCI_TRCMD_STOP                 ((unsigned int) 0x2 << 16) /* (MCI) Stop transfer*/#define AT91C_MCI_TRDIR       ((unsigned int) 0x1 << 18) /* (MCI) Transfer Direction*/#define AT91C_MCI_TRTYP       ((unsigned int) 0x3 << 19) /* (MCI) Transfer Type*/#define 	AT91C_MCI_TRTYP_BLOCK                ((unsigned int) 0x0 << 19) /* (MCI) Block Transfer type*/#define 	AT91C_MCI_TRTYP_MULTIPLE             ((unsigned int) 0x1 << 19) /* (MCI) Multiple Block transfer type*/#define 	AT91C_MCI_TRTYP_STREAM               ((unsigned int) 0x2 << 19) /* (MCI) Stream transfer type*//* -------- MCI_SR : (MCI Offset: 0x40) MCI Status Register -------- */#define AT91C_MCI_CMDRDY      ((unsigned int) 0x1 <<  0) /* (MCI) Command Ready flag*/#define AT91C_MCI_RXRDY       ((unsigned int) 0x1 <<  1) /* (MCI) RX Ready flag*/#define AT91C_MCI_TXRDY       ((unsigned int) 0x1 <<  2) /* (MCI) TX Ready flag*/#define AT91C_MCI_BLKE        ((unsigned int) 0x1 <<  3) /* (MCI) Data Block Transfer Ended flag*/#define AT91C_MCI_DTIP        ((unsigned int) 0x1 <<  4) /* (MCI) Data Transfer in Progress flag*/#define AT91C_MCI_NOTBUSY     ((unsigned int) 0x1 <<  5) /* (MCI) Data Line Not Busy flag*/#define AT91C_MCI_ENDRX       ((unsigned int) 0x1 <<  6) /* (MCI) End of RX Buffer flag*/#define AT91C_MCI_ENDTX       ((unsigned int) 0x1 <<  7) /* (MCI) End of TX Buffer flag*/#define AT91C_MCI_RXBUFF      ((unsigned int) 0x1 << 14) /* (MCI) RX Buffer Full flag*/#define AT91C_MCI_TXBUFE      ((unsigned int) 0x1 << 15) /* (MCI) TX Buffer Empty flag*/#define AT91C_MCI_RINDE       ((unsigned int) 0x1 << 16) /* (MCI) Response Index Error flag*/#define AT91C_MCI_RDIRE       ((unsigned int) 0x1 << 17) /* (MCI) Response Direction Error flag*/#define AT91C_MCI_RCRCE       ((unsigned int) 0x1 << 18) /* (MCI) Response CRC Error flag*/#define AT91C_MCI_RENDE       ((unsigned int) 0x1 << 19) /* (MCI) Response End Bit Error flag*/#define AT91C_MCI_RTOE        ((unsigned int) 0x1 << 20) /* (MCI) Response Time-out Error flag*/#define AT91C_MCI_DCRCE       ((unsigned int) 0x1 << 21) /* (MCI) data CRC Error flag*/#define AT91C_MCI_DTOE        ((unsigned int) 0x1 << 22) /* (MCI) Data timeout Error flag*/#define AT91C_MCI_OVRE        ((unsigned int) 0x1 << 30) /* (MCI) Overrun flag*/#define AT91C_MCI_UNRE        ((unsigned int) 0x1 << 31) /* (MCI) Underrun flag*//* -------- MCI_IER : (MCI Offset: 0x44) MCI Interrupt Enable Register -------- *//* -------- MCI_IDR : (MCI Offset: 0x48) MCI Interrupt Disable Register -------- *//* -------- MCI_IMR : (MCI Offset: 0x4c) MCI Interrupt Mask Register -------- */#endif

⌨️ 快捷键说明

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