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

📄 at91rm9200.h

📁 Centrality Atlas II development software
💻 H
字号:
/* * $QNXLicenseC: * Copyright 2008, QNX Software Systems.  *  * Licensed under the Apache License, Version 2.0 (the "License"). You  * may not reproduce, modify or distribute this software except in  * compliance with the License. You may obtain a copy of the License  * at: http://www.apache.org/licenses/LICENSE-2.0  *  * Unless required by applicable law or agreed to in writing, software  * distributed under the License is distributed on an "AS IS" basis,  * WITHOUT WARRANTIES OF ANY KIND, either express or implied. * * This file may contain contributions from others, either as  * contributors under the License or as licensors under other terms.   * Please review this entire file for other proprietary rights or license  * notices, as well as the QNX Development Suite License Guide at  * http://licensing.qnx.com/license-guide/ for other information. * $ *//* * AT91RM9200 processor */#ifndef	__ARM_AT91RM9200_H_INCLUDED#define	__ARM_AT91RM9200_H_INCLUDED/*---------------------------------------          Internal Memory Mapping  ---------------------------------------*/ #define	AT91RM9200_BOOT_BASE	0x00000000#define	AT91RM9200_ROM_BASE		0x00100000#define	AT91RM9200_SRAM_BASE	0x00200000#define	AT91RM9200_USBH_BASE	0x00300000/*---------------------------------------            User Peripheral  ---------------------------------------*/ /* * Timer Counter (TC) */#define	AT91RM9200_TC0_BASE		0xFFFA0000#define	AT91RM9200_TC3_BASE		0xFFFA4000#define	AT91RM9200_TC_SIZE		0x100#define	AT91RM9200_TC_CCR		0x00#define	AT91RM9200_TC_CMR		0x04#define	AT91RM9200_TC_CV		0x10#define	AT91RM9200_TC_RA		0x14#define	AT91RM9200_TC_RB		0x18#define	AT91RM9200_TC_RC		0x1C#define	AT91RM9200_TC_SR		0x20#define	AT91RM9200_TC_IER		0x24#define	AT91RM9200_TC_IDR		0x28#define	AT91RM9200_TC_IMR		0x2C#define	AT91RM9200_TC_BCR		0xC0#define	AT91RM9200_TC_BMR		0xC4#define	AT91RM9200_TC_CCR_CLKEN		(1 << 0)#define	AT91RM9200_TC_CCR_CLKDIS	(1 << 1)#define	AT91RM9200_TC_CCR_SWTRG		(1 << 2)#define	AT91RM9200_TC_CMR_CPCTRG	(1 << 14)/* * USB Device Port (UDP) */#define	AT91RM9200_UDP_BASE		0xFFFB0000/* * Multimedia Card Interface (MCI) */#define	AT91RM9200_MCI_BASE		0xFFFB4000/* * Two Wire Interface (TWI) */#define	AT91RM9200_TWI_BASE		0xFFFB8000/* * Ethernet MAC (EMAC) */#define	AT91RM9200_EMAC_BASE	0xFFFBC000#define	AT91RM9200_EMAC_SIZE	0xC0/* * Universal Synchronous Asynchronous Receiver Transceiver (USART) */#define	AT91RM9200_USART0_BASE	0xFFFC0000#define	AT91RM9200_USART1_BASE	0xFFFC4000#define	AT91RM9200_USART2_BASE	0xFFFC8000#define	AT91RM9200_USART3_BASE	0xFFFCC000#define	AT91USART_SIZE			0x100/* * -------------------------------------------------------------------------- * Atmel USAR0 Registers * -------------------------------------------------------------------------- */#define	AT91USART_CR			0x00	/* Control Register */#define	AT91USART_MR			0x04	/* Mode Register */#define	AT91USART_IER			0x08	/* Interrupt Enable Register */#define	AT91USART_IDR			0x0C	/* Interrupt Disable Register */#define	AT91USART_IMR			0x10	/* Interrupt Mask Register */#define	AT91USART_CSR			0x14	/* Channel Status Register */#define	AT91USART_RHR			0x18	/* Receiver Holding Register */#define	AT91USART_THR			0x1C	/* Transmitter Holding Register */#define	AT91USART_BRGR			0x20	/* Baud Rate Generator Register */#define	AT91USART_RTOR			0x24	/* Receiver Time-out Register */#define	AT91USART_TTGR			0x28	/* Transmitter Timeguard Register */#define	AT91USART_FIDI			0x40	/* FIDI Ratio Register */#define	AT91USART_NER			0x44	/* Number of Errors Register */#define	AT91USART_IF			0x4C	/* IrDA Filter Register *//* * CR register bits */#define	AT91USART_CR_RSTRX		(1 << 2)	/* Reset Receiver */#define	AT91USART_CR_RSTTX		(1 << 3)	/* Reset Transmitter */#define	AT91USART_CR_RXEN		(1 << 4)	/* Receiver Enable */#define	AT91USART_CR_RXDIS		(1 << 5)	/* Receiver Disable */#define	AT91USART_CR_TXEN		(1 << 6)	/* Transmitter Enable */#define	AT91USART_CR_TXDIS		(1 << 7)	/* Transmitter Disable */#define	AT91USART_CR_RSTSTA		(1 << 8)	/* Reset Status Bits */#define	AT91USART_CR_STTBRK		(1 << 9)	/* Start Break */#define	AT91USART_CR_STPBRK		(1 << 10)	/* Stop Break */#define	AT91USART_CR_STTTO		(1 << 11)	/* Start Time-out */#define	AT91USART_CR_SENDA		(1 << 12)	/* Send Address */#define	AT91USART_CR_RSTIT		(1 << 13)	/* Reset Iterations */#define	AT91USART_CR_RSTNACK	(1 << 14)	/* Reset Non Acknowledge */#define	AT91USART_CR_RETTO		(1 << 15)	/* Rearm Time-out */#define	AT91USART_CR_DTREN		(1 << 16)	/* DTE Enable */#define	AT91USART_CR_DTRDIS		(1 << 17)	/* DTE Disable */#define	AT91USART_CR_RTSEN		(1 << 18)	/* RTS Enable */#define	AT91USART_CR_RTSDIS		(1 << 19)	/* RTS Disable *//* * Interrupt Enable/Disable/Mask/Status register */#define	AT91USART_INT_RXRDY		(1 << 0)	/* Receiver Ready */#define	AT91USART_INT_TXRDY		(1 << 1)	/* Transmitter Ready */#define	AT91USART_INT_RXBRK		(1 << 2)	/* Break Received/End of Break */#define	AT91USART_INT_ENDRX		(1 << 3)	/* End of Receive Transfer */#define	AT91USART_INT_ENDTX		(1 << 4)	/* End of Transmitter Transfer */#define	AT91USART_INT_OVRE		(1 << 5)	/* Overrun Error */#define	AT91USART_INT_FRAME		(1 << 6)	/* Framing Error */#define	AT91USART_INT_PARE		(1 << 7)	/* Parity Error */#define	AT91USART_INT_TIMEOUT	(1 << 8)	/* Receive Timeout */#define	AT91USART_INT_TXEMPTY	(1 << 9)	/* Transmitter Empty */#define	AT91USART_INT_ITERATION	(1 << 10)	/* Max Number of Repetitions reached */#define	AT91USART_INT_TXBUFE	(1 << 11)	/* Transmission Buffer Empty */#define	AT91USART_INT_RXBUFF	(1 << 12)	/* Receive Buffer Full */#define	AT91USART_INT_NACK		(1 << 13)	/* Receive Buffer Full */#define	AT91USART_INT_RIIC		(1 << 16)	/* Ring Indicator Input Change */#define	AT91USART_INT_DSRIC		(1 << 17)	/* Data Set Ready Input Change */#define	AT91USART_INT_DCDIC		(1 << 18)	/* Data Carrier Detect Input Change */#define	AT91USART_INT_CTSIC		(1 << 18)	/* Clear to Send Input Change *//* * CSR register bits */#define	AT91USART_CSR_RI		(1 << 20)	/* RI Input */#define	AT91USART_CSR_DSR		(1 << 21)	/* DSR Input */#define	AT91USART_CSR_DCD		(1 << 22)	/* DCD Input */#define	AT91USART_CSR_CTS		(1 << 23)	/* CTS Input *//* * Serial Synchronous Controller (SSC) */#define	AT91RM9200_SSC0_BASE	0xFFFD0000#define	AT91RM9200_SSC1_BASE	0xFFFD4000#define	AT91RM9200_SSC2_BASE	0xFFFD8000/* * Serial Peripheral Interface (SPI) */#define	AT91RM9200_SPI_BASE		0xFFFE0000/*---------------------------------------            System Peripheral  ---------------------------------------*/ /* * Advanced Interrupt Controller (AIC) *//* AIC Base address */#define	AT91RM9200_AIC_BASE		0xFFFFF000/* AIC Registers, offset from base address */#define	AT91RM9200_AIC_SMR(x)	(0x04 * (x))#define	AT91RM9200_AIC_SVR(x)	(0x80 + 0x04 * (x))#define	AT91RM9200_AIC_IVR		0x100#define	AT91RM9200_AIC_FVR		0x104#define	AT91RM9200_AIC_ISR		0x108#define	AT91RM9200_AIC_IPR		0x10C#define	AT91RM9200_AIC_IMR		0x110#define	AT91RM9200_AIC_CISR		0x114#define	AT91RM9200_AIC_IECR		0x120#define	AT91RM9200_AIC_IDCR		0x124#define	AT91RM9200_AIC_ICCR		0x128#define	AT91RM9200_AIC_ISCR		0x12C#define	AT91RM9200_AIC_EIOCR	0x130#define	AT91RM9200_AIC_SPU		0x134#define	AT91RM9200_AIC_DCR		0x138/* * Debug port */#define	AT91RM9200_DBGU_BASE	0xFFFFF200/* * PIO A,B,C,D */#define	AT91RM9200_PIOA_BASE	0xFFFFF400#define	AT91RM9200_PIOB_BASE	0xFFFFF600#define	AT91RM9200_PIOC_BASE	0xFFFFF800#define	AT91RM9200_PIOD_BASE	0xFFFFFA00/* PIO Registers, offset from base address */#define	AT91RM9200_PIO_PER		0x00#define	AT91RM9200_PIO_PDR		0x04#define	AT91RM9200_PIO_PSR		0x08#define	AT91RM9200_PIO_OER		0x10#define	AT91RM9200_PIO_ODR		0x14#define	AT91RM9200_PIO_OSR		0x18#define	AT91RM9200_PIO_IFER		0x20#define	AT91RM9200_PIO_IFDR		0x24#define	AT91RM9200_PIO_IFSR		0x28#define	AT91RM9200_PIO_SODR		0x30#define	AT91RM9200_PIO_CODR		0x34#define	AT91RM9200_PIO_ODSR		0x38#define	AT91RM9200_PIO_PDSR		0x3C#define	AT91RM9200_PIO_IER		0x40#define	AT91RM9200_PIO_IDR		0x44#define	AT91RM9200_PIO_IMR		0x48#define	AT91RM9200_PIO_ISR		0x4C#define	AT91RM9200_PIO_MDER		0x50#define	AT91RM9200_PIO_MDDR		0x54#define	AT91RM9200_PIO_MDSR		0x58#define	AT91RM9200_PIO_PUDR		0x60#define	AT91RM9200_PIO_PUER		0x64#define	AT91RM9200_PIO_PUSR		0x68#define	AT91RM9200_PIO_ASR		0x70#define	AT91RM9200_PIO_BSR		0x74#define	AT91RM9200_PIO_ABSR		0x78#define	AT91RM9200_PIO_OWER		0xA0#define	AT91RM9200_PIO_OWDR		0xA4#define	AT91RM9200_PIO_OWSR		0xA8/* * Power Management Controller (PMC) */#define	AT91RM9200_PMC_BASE		0xFFFFFC00/* PMC Registers, offset from base address */#define	AT91RM9200_PMC_SCER		0x00#define	AT91RM9200_PMC_SCDR		0x04#define	AT91RM9200_PMC_SCSR		0x08#define	AT91RM9200_PMC_PCER		0x10#define	AT91RM9200_PMC_PCDR		0x14#define	AT91RM9200_PMC_PCSR		0x18#define	AT91RM9200_CKFR_MOR		0x20#define	AT91RM9200_CKFR_MCFR	0x24#define	AT91RM9200_CKFR_PLLAR	0x28#define	AT91RM9200_CKFR_PLLBR	0x2C#define	AT91RM9200_PMC_MCKR		0x30#define	AT91RM9200_PMC_PCK0		0x40#define	AT91RM9200_PMC_PCK1		0x44#define	AT91RM9200_PMC_PCK2		0x48#define	AT91RM9200_PMC_PCK3		0x4C#define	AT91RM9200_PMC_IER		0x60#define	AT91RM9200_PMC_IDR		0x64#define	AT91RM9200_PMC_SR		0x68#define	AT91RM9200_PMC_IMR		0x6C/* * System Timer */#define	AT91RM9200_ST_BASE		0xFFFFFD00#define	AT91RM9200_ST_SIZE		0x28/* ST Registers, offset from base address */#define	AT91RM9200_ST_CR		0x00#define	AT91RM9200_ST_PIMR		0x04#define	AT91RM9200_ST_WDMR		0x08#define	AT91RM9200_ST_RTMR		0x0C#define	AT91RM9200_ST_SR		0x10#define	AT91RM9200_ST_IER		0x14#define	AT91RM9200_ST_IDR		0x18#define	AT91RM9200_ST_IMR		0x1C#define	AT91RM9200_ST_RTAR		0x20#define	AT91RM9200_ST_CRAR		0x24/* * WDMR register bits */#define	AT91RM9200_WDMR_RSTEN	(1 << 16)#define	AT91RM9200_WDMR_EXTEN	(1 << 17)/* * Real Time Clock (RTC) */#define	AT91RM9200_RTC_BASE		0xFFFFFE00/* * Memory Controller */#define	AT91RM9200_MC_BASE		0xFFFFFF00#endif	/* __ARM_AT91RM9200_H_INCLUDED *//* __SRCVERSION("at91rm9200.h $Rev: 169789 $"); */

⌨️ 快捷键说明

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